Class: Google::Apis::PubsubV1::Snapshot
- Inherits:
-
Object
- Object
- Google::Apis::PubsubV1::Snapshot
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/pubsub_v1/classes.rb,
lib/google/apis/pubsub_v1/representations.rb,
lib/google/apis/pubsub_v1/representations.rb
Overview
A snapshot resource. Snapshots are used in Seek operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot.
Instance Attribute Summary collapse
-
#expire_time ⇒ String
Optional.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Optional.
-
#topic ⇒ String
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Snapshot
constructor
A new instance of Snapshot.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Snapshot
Returns a new instance of Snapshot.
1749 1750 1751 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1749 def initialize(**args) update!(**args) end |
Instance Attribute Details
#expire_time ⇒ String
Optional. The snapshot is guaranteed to exist up until this time. A newly-
created snapshot expires no later than 7 days from the time of its creation.
Its exact lifetime is determined at creation by the existing backlog in the
source subscription. Specifically, the lifetime of the snapshot is 7 days - (
age of oldest unacked message in the subscription)
. For example, consider a
subscription whose oldest unacked message is 3 days old. If a snapshot is
created from this subscription, the snapshot -- which will always capture this
3-day-old backlog as long as the snapshot exists -- will expire in 4 days. The
service will refuse to create a snapshot that would expire in less than 1 hour
after creation.
Corresponds to the JSON property expireTime
1731 1732 1733 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1731 def expire_time @expire_time end |
#labels ⇒ Hash<String,String>
Optional. See Creating and managing labels.
Corresponds to the JSON property labels
1737 1738 1739 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1737 def labels @labels end |
#name ⇒ String
Optional. The name of the snapshot.
Corresponds to the JSON property name
1742 1743 1744 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1742 def name @name end |
#topic ⇒ String
Optional. The name of the topic from which this snapshot is retaining messages.
Corresponds to the JSON property topic
1747 1748 1749 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1747 def topic @topic end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1754 1755 1756 1757 1758 1759 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1754 def update!(**args) @expire_time = args[:expire_time] if args.key?(:expire_time) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @topic = args[:topic] if args.key?(:topic) end |