Class: Google::Apis::PubsubV1::Subscription
- Inherits:
-
Object
- Object
- Google::Apis::PubsubV1::Subscription
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- generated/google/apis/pubsub_v1/classes.rb,
generated/google/apis/pubsub_v1/representations.rb,
generated/google/apis/pubsub_v1/representations.rb
Overview
A subscription resource.
Instance Attribute Summary collapse
-
#ack_deadline_seconds ⇒ Fixnum
The approximate amount of time (on a best-effort basis) Pub/Sub waits for the subscriber to acknowledge receipt before resending the message.
-
#expiration_policy ⇒ Google::Apis::PubsubV1::ExpirationPolicy
A policy that specifies the conditions for resource expiration (i.e., automatic resource deletion).
- #labels ⇒ Hash<String,String>
-
#message_retention_duration ⇒ String
How long to retain unacknowledged messages in the subscription's backlog, from the moment a message is published.
-
#name ⇒ String
The name of the subscription.
-
#push_config ⇒ Google::Apis::PubsubV1::PushConfig
Configuration for a push delivery endpoint.
-
#retain_acked_messages ⇒ Boolean
(also: #retain_acked_messages?)
Indicates whether to retain acknowledged messages.
-
#topic ⇒ String
The name of the topic from which this subscription is receiving messages.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Subscription
constructor
A new instance of Subscription.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Core::JsonObjectSupport
Methods included from Core::Hashable
Constructor Details
#initialize(**args) ⇒ Subscription
Returns a new instance of Subscription
956 957 958 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 956 def initialize(**args) update!(**args) end |
Instance Attribute Details
#ack_deadline_seconds ⇒ Fixnum
The approximate amount of time (on a best-effort basis) Pub/Sub waits for
the subscriber to acknowledge receipt before resending the message. In the
interval after the message is delivered and before it is acknowledged, it
is considered to be outstanding. During that time period, the
message will not be redelivered (on a best-effort basis).
For pull subscriptions, this value is used as the initial value for the ack
deadline. To override this value for a given message, call
ModifyAckDeadline
with the corresponding ack_id
if using
non-streaming pull or send the ack_id
in a
StreamingModifyAckDeadlineRequest
if using streaming pull.
The minimum custom deadline you can specify is 10 seconds.
The maximum custom deadline you can specify is 600 seconds (10 minutes).
If this parameter is 0, a default value of 10 seconds is used.
For push delivery, this value is also used to set the request timeout for
the call to the push endpoint.
If the subscriber never acknowledges the message, the Pub/Sub
system will eventually redeliver the message.
Corresponds to the JSON property ackDeadlineSeconds
891 892 893 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 891 def ack_deadline_seconds @ack_deadline_seconds end |
#expiration_policy ⇒ Google::Apis::PubsubV1::ExpirationPolicy
A policy that specifies the conditions for resource expiration (i.e.,
automatic resource deletion).
Corresponds to the JSON property expirationPolicy
897 898 899 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 897 def expiration_policy @expiration_policy end |
#labels ⇒ Hash<String,String>
See Creating and
managing labels.
Corresponds to the JSON property labels
903 904 905 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 903 def labels @labels end |
#message_retention_duration ⇒ String
How long to retain unacknowledged messages in the subscription's backlog,
from the moment a message is published.
If retain_acked_messages
is true, then this also configures the retention
of acknowledged messages, and thus configures how far back in time a Seek
can be done. Defaults to 7 days. Cannot be more than 7 days or less than 10
minutes.
BETA: This feature is part of a beta release. This API might be
changed in backward-incompatible ways and is not recommended for production
use. It is not subject to any SLA or deprecation policy.
Corresponds to the JSON property messageRetentionDuration
916 917 918 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 916 def @message_retention_duration end |
#name ⇒ String
The name of the subscription. It must have the format
"projects/
project/subscriptions/
subscription"
. subscription
must
start with a letter, and contain only letters ([A-Za-z]
), numbers
([0-9]
), dashes (-
), underscores (_
), periods (.
), tildes (~
),
plus (+
) or percent signs (%
). It must be between 3 and 255 characters
in length, and it must not start with "goog"
.
Corresponds to the JSON property name
926 927 928 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 926 def name @name end |
#push_config ⇒ Google::Apis::PubsubV1::PushConfig
Configuration for a push delivery endpoint.
Corresponds to the JSON property pushConfig
931 932 933 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 931 def push_config @push_config end |
#retain_acked_messages ⇒ Boolean Also known as: retain_acked_messages?
Indicates whether to retain acknowledged messages. If true, then
messages are not expunged from the subscription's backlog, even if they are
acknowledged, until they fall out of the message_retention_duration
window. This must be true if you would like to
Seek to a timestamp.
BETA: This feature is part of a beta release. This API might be
changed in backward-incompatible ways and is not recommended for production
use. It is not subject to any SLA or deprecation policy.
Corresponds to the JSON property retainAckedMessages
945 946 947 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 945 def @retain_acked_messages end |
#topic ⇒ String
The name of the topic from which this subscription is receiving messages.
Format is projects/
project/topics/
topic`.
The value of this field will be
deleted-topicif the topic has been
deleted.
Corresponds to the JSON property
topic`
954 955 956 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 954 def topic @topic end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
961 962 963 964 965 966 967 968 969 970 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 961 def update!(**args) @ack_deadline_seconds = args[:ack_deadline_seconds] if args.key?(:ack_deadline_seconds) @expiration_policy = args[:expiration_policy] if args.key?(:expiration_policy) @labels = args[:labels] if args.key?(:labels) @message_retention_duration = args[:message_retention_duration] if args.key?(:message_retention_duration) @name = args[:name] if args.key?(:name) @push_config = args[:push_config] if args.key?(:push_config) @retain_acked_messages = args[:retain_acked_messages] if args.key?(:retain_acked_messages) @topic = args[:topic] if args.key?(:topic) end |