Skip to main content

TaskStore

Trait TaskStore 

Source
pub trait TaskStore:
    Send
    + Sync
    + 'static {
    // Required methods
    fn enqueue<'a>(
        &'a self,
        opts: EnqueueOpts,
    ) -> BoxFuture<'a, Result<String, TaskError>>;
    fn claim<'a>(
        &'a self,
        queue: &'a str,
        worker: &'a str,
        lease: Duration,
        limit: usize,
    ) -> BoxFuture<'a, Result<Vec<Task>, TaskError>>;
    fn heartbeat<'a>(
        &'a self,
        id: &'a str,
        lease: Duration,
    ) -> BoxFuture<'a, Result<(), TaskError>>;
    fn complete<'a>(
        &'a self,
        id: &'a str,
    ) -> BoxFuture<'a, Result<(), TaskError>>;
    fn fail<'a>(
        &'a self,
        id: &'a str,
        retry_at: Option<SystemTime>,
    ) -> BoxFuture<'a, Result<(), TaskError>>;
    fn reap<'a>(
        &'a self,
        now: SystemTime,
    ) -> BoxFuture<'a, Result<u64, TaskError>>;
    fn list<'a>(
        &'a self,
        queue: &'a str,
        limit: usize,
    ) -> BoxFuture<'a, Result<Vec<Task>, TaskError>>;
}

Required Methods§

Source

fn enqueue<'a>( &'a self, opts: EnqueueOpts, ) -> BoxFuture<'a, Result<String, TaskError>>

Source

fn claim<'a>( &'a self, queue: &'a str, worker: &'a str, lease: Duration, limit: usize, ) -> BoxFuture<'a, Result<Vec<Task>, TaskError>>

Source

fn heartbeat<'a>( &'a self, id: &'a str, lease: Duration, ) -> BoxFuture<'a, Result<(), TaskError>>

Source

fn complete<'a>(&'a self, id: &'a str) -> BoxFuture<'a, Result<(), TaskError>>

Source

fn fail<'a>( &'a self, id: &'a str, retry_at: Option<SystemTime>, ) -> BoxFuture<'a, Result<(), TaskError>>

Source

fn reap<'a>(&'a self, now: SystemTime) -> BoxFuture<'a, Result<u64, TaskError>>

Source

fn list<'a>( &'a self, queue: &'a str, limit: usize, ) -> BoxFuture<'a, Result<Vec<Task>, TaskError>>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§