MessageBuilder

Struct MessageBuilder 

Source
pub struct MessageBuilder { /* private fields */ }
Expand description

MessageBuilder is the builder for Message.

Implementations§

Source§

impl MessageBuilder

Source

pub fn builder() -> MessageBuilder

Create a new MessageBuilder for building a message. Read more

Source

pub fn fifo_message_builder( topic: impl Into<String>, body: Vec<u8>, message_group: impl Into<String>, ) -> MessageBuilder

Create a new MessageBuilder for building a fifo message. Read more

§Arguments
  • topic - topic of the message
  • body - message body
  • message_group - message group, messages with same message group will be delivered in FIFO order
Source

pub fn delay_message_builder( topic: impl Into<String>, body: Vec<u8>, delay_time: i64, ) -> MessageBuilder

Create a new MessageBuilder for building a delay message. Read more

§Arguments
  • topic - topic of the message
  • body - message body
  • delay_time - delivery timestamp of message, specify when to deliver the message
Source

pub fn transaction_message_builder( topic: impl Into<String>, body: Vec<u8>, ) -> MessageBuilder

Create a new MessageBuilder for building a transaction message. Read more

§Arguments
  • topic - topic of the message
  • body - message body
Source

pub fn set_topic(self, topic: impl Into<String>) -> Self

Set topic for message, which is required

Source

pub fn set_body(self, body: Vec<u8>) -> Self

Set message body, which is required

Source

pub fn set_tag(self, tag: impl Into<String>) -> Self

Set message tag

Source

pub fn set_keys(self, keys: Vec<impl Into<String>>) -> Self

Set message keys

Source

pub fn set_properties( self, properties: HashMap<impl Into<String>, impl Into<String>>, ) -> Self

Set message properties

Source

pub fn set_message_group(self, message_group: impl Into<String>) -> Self

Set message group, which is required for fifo message. Read more

The message group could not be set with delivery timestamp at the same time

Source

pub fn set_delivery_timestamp(self, delivery_timestamp: i64) -> Self

Set delivery timestamp, which is required for delay message. Read more

The delivery timestamp could not be set with message group at the same time

Source

pub fn enable_transaction(self) -> Self

Mark this message as the beginning transaction, which is required for the transaction message. Read more

The transaction message could not have message group and delivery timestamp

Source

pub fn build(self) -> Result<impl Message, ClientError>

Build message

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Any for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Source§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Source§

fn type_name(&self) -> &'static str

Source§

impl<T> AnySync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoRequest<T> for T

Source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> SendSyncUnwindSafe for T
where T: Send + Sync + UnwindSafe + ?Sized,