pub struct TopicConfig {
pub project_id: String,
pub topic_name: String,
pub message_retention_duration: Option<i64>,
pub labels: HashMap<String, String>,
pub enable_message_ordering: bool,
pub endpoint: Option<String>,
}Expand description
Topic configuration.
Fields§
§project_id: StringProject ID.
topic_name: StringTopic name.
message_retention_duration: Option<i64>Message retention duration in seconds.
labels: HashMap<String, String>Labels for the topic.
enable_message_ordering: boolEnable message ordering.
endpoint: Option<String>Custom endpoint (for testing).
Implementations§
Source§impl TopicConfig
impl TopicConfig
Sourcepub fn new(project_id: impl Into<String>, topic_name: impl Into<String>) -> Self
pub fn new(project_id: impl Into<String>, topic_name: impl Into<String>) -> Self
Creates a new topic configuration.
Sourcepub fn with_message_retention(self, seconds: i64) -> Self
pub fn with_message_retention(self, seconds: i64) -> Self
Sets the message retention duration.
Sourcepub fn with_label(
self,
key: impl Into<String>,
value: impl Into<String>,
) -> Self
pub fn with_label( self, key: impl Into<String>, value: impl Into<String>, ) -> Self
Adds a label to the topic.
Sourcepub fn with_labels(self, labels: HashMap<String, String>) -> Self
pub fn with_labels(self, labels: HashMap<String, String>) -> Self
Adds multiple labels to the topic.
Sourcepub fn with_message_ordering(self, enable: bool) -> Self
pub fn with_message_ordering(self, enable: bool) -> Self
Enables message ordering.
Sourcepub fn with_endpoint(self, endpoint: impl Into<String>) -> Self
pub fn with_endpoint(self, endpoint: impl Into<String>) -> Self
Sets a custom endpoint.
Trait Implementations§
Source§impl Clone for TopicConfig
impl Clone for TopicConfig
Source§fn clone(&self) -> TopicConfig
fn clone(&self) -> TopicConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TopicConfig
impl Debug for TopicConfig
Source§impl<'de> Deserialize<'de> for TopicConfig
impl<'de> Deserialize<'de> for TopicConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TopicConfig
impl RefUnwindSafe for TopicConfig
impl Send for TopicConfig
impl Sync for TopicConfig
impl Unpin for TopicConfig
impl UnsafeUnpin for TopicConfig
impl UnwindSafe for TopicConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request