Class: Google::Apis::PubsubV1::MessageStoragePolicy
- Inherits:
-
Object
- Object
- Google::Apis::PubsubV1::MessageStoragePolicy
- 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 policy constraining the storage of messages published to the topic.
Instance Attribute Summary collapse
-
#allowed_persistence_regions ⇒ Array<String>
Optional.
-
#enforce_in_transit ⇒ Boolean
(also: #enforce_in_transit?)
Optional.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MessageStoragePolicy
constructor
A new instance of MessageStoragePolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ MessageStoragePolicy
Returns a new instance of MessageStoragePolicy.
816 817 818 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 816 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allowed_persistence_regions ⇒ Array<String>
Optional. A list of IDs of Google Cloud regions where messages that are
published to the topic may be persisted in storage. Messages published by
publishers running in non-allowed Google Cloud regions (or running outside of
Google Cloud altogether) are routed for storage in one of the allowed regions.
An empty list means that no regions are allowed, and is not a valid
configuration.
Corresponds to the JSON property allowedPersistenceRegions
805 806 807 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 805 def allowed_persistence_regions @allowed_persistence_regions end |
#enforce_in_transit ⇒ Boolean Also known as: enforce_in_transit?
Optional. If true, allowed_persistence_regions is also used to enforce in-
transit guarantees for messages. That is, Pub/Sub will fail Publish operations
on this topic and subscribe operations on any subscription attached to this
topic in any region that is not in allowed_persistence_regions.
Corresponds to the JSON property enforceInTransit
813 814 815 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 813 def enforce_in_transit @enforce_in_transit end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
821 822 823 824 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 821 def update!(**args) @allowed_persistence_regions = args[:allowed_persistence_regions] if args.key?(:allowed_persistence_regions) @enforce_in_transit = args[:enforce_in_transit] if args.key?(:enforce_in_transit) end |