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.
1316 1317 1318 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1316 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
1305 1306 1307 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1305 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
1313 1314 1315 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1313 def enforce_in_transit @enforce_in_transit end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1321 1322 1323 1324 |
# File 'lib/google/apis/pubsub_v1/classes.rb', line 1321 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 |