Trait apalis::prelude::MessageQueue

source ·
pub trait MessageQueue<Message>: Backend<Request<Message>> {
    type Error;

    // Required methods
    fn enqueue(
        &self,
        message: Message
    ) -> impl Future<Output = Result<(), Self::Error>> + Send;
    fn dequeue(
        &self
    ) -> impl Future<Output = Result<Option<Message>, Self::Error>> + Send;
    fn size(&self) -> impl Future<Output = Result<usize, Self::Error>> + Send;
}
Expand description

Represents a message queue that can be pushed and consumed.

Required Associated Types§

source

type Error

The error produced by the queue

Required Methods§

source

fn enqueue( &self, message: Message ) -> impl Future<Output = Result<(), Self::Error>> + Send

Enqueues a message to the queue.

source

fn dequeue( &self ) -> impl Future<Output = Result<Option<Message>, Self::Error>> + Send

Attempts to dequeue a message from the queue. Returns None if the queue is empty.

source

fn size(&self) -> impl Future<Output = Result<usize, Self::Error>> + Send

Returns the current size of the queue.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<Message> MessageQueue<Message> for MemoryStorage<Message>
where Message: Send + 'static + Sync,

§

type Error = ()