pub struct MessageHandler<Context, Error>{ /* private fields */ }Expand description
A handler processing messages from a RabbitMq queue.
Use MessageHandler::builder to start composing a MessageHandler using a fluent builder
API.
§Learn by doing
Check out the consumer example on GitHub
to see MessageHandler in action.
The example showcases most of the available knobs and what they are used for.
§MessageHandler vs ConsumerGroup
A MessageHandler is always part of a ConsumerGroup - it relies on its context and
inherits its group-level configuration.
It is possible to:
- override some group-level configuration for a specific
message handler (see
MessageHandlerBuilder::with_pre_start_hookandMessageHandlerBuilder::transient_error_hook) - add on top of what the group-level configuration provides
(e.g.
MessageHandlerBuilder::with_processing_middlewareorMessageHandlerBuilder::with_telemetry_middleware).
Implementations§
Source§impl<Context, Error> MessageHandler<Context, Error>
impl<Context, Error> MessageHandler<Context, Error>
Sourcepub fn builder<T: Into<String>>(
queue_name: T,
) -> MessageHandlerBuilder<Context, Error>
pub fn builder<T: Into<String>>( queue_name: T, ) -> MessageHandlerBuilder<Context, Error>
Start building a MessageHandler.
You need to provide the name of the queue you want to consume messages from.
Auto Trait Implementations§
impl<Context, Error> Freeze for MessageHandler<Context, Error>
impl<Context, Error> !RefUnwindSafe for MessageHandler<Context, Error>
impl<Context, Error> Send for MessageHandler<Context, Error>
impl<Context, Error> Sync for MessageHandler<Context, Error>
impl<Context, Error> Unpin for MessageHandler<Context, Error>
impl<Context, Error> !UnwindSafe for MessageHandler<Context, Error>
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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