Class: Google::Apis::PubsubV1::Topic
- Inherits:
-
Object
- Object
- Google::Apis::PubsubV1::Topic
- 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 topic resource.
Instance Attribute Summary collapse
-
#kms_key_name ⇒ String
The resource name of the Cloud KMS CryptoKey to be used to protect access to messages published on this topic.
- #labels ⇒ Hash<String,String>
-
#message_storage_policy ⇒ Google::Apis::PubsubV1::MessageStoragePolicy
A policy constraining the storage of messages published to the topic.
-
#name ⇒ String
Required.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Topic
constructor
A new instance of Topic.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Topic
Returns a new instance of Topic.
1256 1257 1258 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1256 def initialize(**args) update!(**args) end |
Instance Attribute Details
#kms_key_name ⇒ String
The resource name of the Cloud KMS CryptoKey to be used to protect access to
messages published on this topic. The expected format is projects/*/locations/
*/keyRings/*/cryptoKeys/*
.
Corresponds to the JSON property kmsKeyName
1234 1235 1236 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1234 def kms_key_name @kms_key_name end |
#labels ⇒ Hash<String,String>
See Creating and managing labels.
Corresponds to the JSON property labels
1240 1241 1242 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1240 def labels @labels end |
#message_storage_policy ⇒ Google::Apis::PubsubV1::MessageStoragePolicy
A policy constraining the storage of messages published to the topic.
Corresponds to the JSON property messageStoragePolicy
1245 1246 1247 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1245 def @message_storage_policy end |
#name ⇒ String
Required. The name of the topic. It must have the format "projects/
project/
topics/
topic"
. topic
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
1254 1255 1256 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1254 def name @name end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1261 1262 1263 1264 1265 1266 |
# File 'generated/google/apis/pubsub_v1/classes.rb', line 1261 def update!(**args) @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name) @labels = args[:labels] if args.key?(:labels) @message_storage_policy = args[:message_storage_policy] if args.key?(:message_storage_policy) @name = args[:name] if args.key?(:name) end |