#[non_exhaustive]pub struct Channel {
pub name: String,
pub uid: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub provider: String,
pub state: State,
pub activation_token: String,
pub crypto_key_name: String,
pub satisfies_pzs: bool,
pub labels: HashMap<String, String>,
pub transport: Option<Transport>,
/* private fields */
}Expand description
A representation of the Channel resource. A Channel is a resource on which event providers publish their events. The published events are delivered through the transport associated with the channel. Note that a channel is associated with exactly one event provider.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringRequired. The resource name of the channel. Must be unique within the
location on the project and must be in
projects/{project}/locations/{location}/channels/{channel_id} format.
uid: StringOutput only. Server assigned unique identifier for the channel. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
create_time: Option<Timestamp>Output only. The creation time.
update_time: Option<Timestamp>Output only. The last-modified time.
provider: StringThe name of the event provider (e.g. Eventarc SaaS partner) associated
with the channel. This provider will be granted permissions to publish
events to the channel. Format:
projects/{project}/locations/{location}/providers/{provider_id}.
state: StateOutput only. The state of a Channel.
activation_token: StringOutput only. The activation token for the channel. The token must be used by the provider to register the channel for publishing.
crypto_key_name: StringOptional. Resource name of a KMS crypto key (managed by the user) used to encrypt/decrypt their event data.
It must match the pattern
projects/*/locations/*/keyRings/*/cryptoKeys/*.
satisfies_pzs: boolOutput only. Whether or not this Channel satisfies the requirements of physical zone separation
labels: HashMap<String, String>Optional. Resource labels.
transport: Option<Transport>Implementations§
Source§impl Channel
impl Channel
pub fn new() -> Self
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of update_time.
Sourcepub fn set_provider<T: Into<String>>(self, v: T) -> Self
pub fn set_provider<T: Into<String>>(self, v: T) -> Self
Sets the value of provider.
Sourcepub fn set_activation_token<T: Into<String>>(self, v: T) -> Self
pub fn set_activation_token<T: Into<String>>(self, v: T) -> Self
Sets the value of activation_token.
Sourcepub fn set_crypto_key_name<T: Into<String>>(self, v: T) -> Self
pub fn set_crypto_key_name<T: Into<String>>(self, v: T) -> Self
Sets the value of crypto_key_name.
Sourcepub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
pub fn set_satisfies_pzs<T: Into<bool>>(self, v: T) -> Self
Sets the value of satisfies_pzs.
Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sets the value of labels.
Sourcepub fn set_transport<T: Into<Option<Transport>>>(self, v: T) -> Self
pub fn set_transport<T: Into<Option<Transport>>>(self, v: T) -> Self
Sets the value of transport.
Note that all the setters affecting transport are mutually
exclusive.
Sourcepub fn pubsub_topic(&self) -> Option<&String>
pub fn pubsub_topic(&self) -> Option<&String>
The value of transport
if it holds a PubsubTopic, None if the field is not set or
holds a different branch.
Sourcepub fn set_pubsub_topic<T: Into<String>>(self, v: T) -> Self
pub fn set_pubsub_topic<T: Into<String>>(self, v: T) -> Self
Sets the value of transport
to hold a PubsubTopic.
Note that all the setters affecting transport are
mutually exclusive.