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
955 956 957 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 955 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
890 891 892 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 890 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
896 897 898 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 896 def expiration_policy @expiration_policy end |
#labels ⇒ Hash<String,String>
See Creating and
managing labels.
Corresponds to the JSON property labels
902 903 904 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 902 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
915 916 917 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 915 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
925 926 927 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 925 def name @name end |
#push_config ⇒ Google::Apis::PubsubV1::PushConfig
Configuration for a push delivery endpoint.
Corresponds to the JSON property pushConfig
930 931 932 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 930 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
944 945 946 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 944 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`
953 954 955 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 953 def topic @topic end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
960 961 962 963 964 965 966 967 968 969 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 960 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 |