TopicArgs

data class TopicArgs(val kmsKeyName: Output<String>? = null, val labels: Output<Map<String, String>>? = null, val messageRetentionDuration: Output<String>? = null, val messageStoragePolicy: Output<MessageStoragePolicyArgs>? = null, val name: Output<String>? = null, val project: Output<String>? = null, val satisfiesPzs: Output<Boolean>? = null, val schemaSettings: Output<SchemaSettingsArgs>? = null, val topicId: Output<String>? = null) : ConvertibleToJava<TopicArgs>

Creates the given topic with the given name. See the resource name rules (https://cloud.google.com/pubsub/docs/admin#resource_names).

Constructors

Link copied to clipboard
constructor(kmsKeyName: Output<String>? = null, labels: Output<Map<String, String>>? = null, messageRetentionDuration: Output<String>? = null, messageStoragePolicy: Output<MessageStoragePolicyArgs>? = null, name: Output<String>? = null, project: Output<String>? = null, satisfiesPzs: Output<Boolean>? = null, schemaSettings: Output<SchemaSettingsArgs>? = null, topicId: Output<String>? = null)

Properties

Link copied to clipboard
val kmsKeyName: Output<String>? = null

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/*.

Link copied to clipboard
val labels: Output<Map<String, String>>? = null

See Creating and managing labels (https://cloud.google.com/pubsub/docs/labels).

Link copied to clipboard
val messageRetentionDuration: Output<String>? = null

Indicates the minimum duration to retain a message after it is published to the topic. If this field is set, messages published to the topic in the last message_retention_duration are always available to subscribers. For instance, it allows any attached subscription to seek to a timestamp that is up to message_retention_duration in the past. If this field is not set, message retention is controlled by settings on individual subscriptions. Cannot be more than 31 days or less than 10 minutes.

Link copied to clipboard

Policy constraining the set of Google Cloud Platform regions where messages published to the topic may be stored. If not present, then no constraints are in effect.

Link copied to clipboard
val name: Output<String>? = null

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".

Link copied to clipboard
val project: Output<String>? = null
Link copied to clipboard
val satisfiesPzs: Output<Boolean>? = null

Reserved for future use. This field is set only in responses from the server; it is ignored if it is set in any requests.

Link copied to clipboard
val schemaSettings: Output<SchemaSettingsArgs>? = null

Settings for validating messages published against a schema.

Link copied to clipboard
val topicId: Output<String>? = null

////

Functions

Link copied to clipboard
open override fun toJava(): TopicArgs