pub struct NativeDbTaskStore {
pub store: Arc<&'static Database<'static>>,
}Fields§
§store: Arc<&'static Database<'static>>Implementations§
Source§impl NativeDbTaskStore
impl NativeDbTaskStore
pub fn new(db_path: Option<String>, cache_size: Option<u64>) -> Self
pub fn init(database: &'static Database<'static>) -> Self
pub fn fetch_and_lock_task( db: Arc<&'static Database<'static>>, queue: String, runner_id: String, ) -> Result<Option<TaskMeta>, NativeDbTaskStoreError>
pub fn fetch_pending_tasks( db: Arc<&'static Database<'static>>, ) -> Result<Vec<TaskMeta>, NativeDbTaskStoreError>
pub fn clean_up( db: Arc<&'static Database<'static>>, ) -> Result<(), NativeDbTaskStoreError>
pub fn set_status( db: Arc<&'static Database<'static>>, task_id: String, status: TaskStatus, reason: Option<String>, ) -> Result<(), NativeDbTaskStoreError>
pub fn heartbeat( db: Arc<&'static Database<'static>>, task_id: String, runner_id: String, ) -> Result<(), NativeDbTaskStoreError>
pub fn restore( db: Arc<&'static Database<'static>>, ) -> Result<(), NativeDbTaskStoreError>
pub fn get( db: Arc<&'static Database<'static>>, task_id: String, ) -> Result<Option<TaskMeta>, NativeDbTaskStoreError>
pub fn list( db: Arc<&'static Database<'static>>, ) -> Result<Vec<TaskMeta>, NativeDbTaskStoreError>
pub fn store_one( db: Arc<&'static Database<'static>>, task: TaskMeta, ) -> Result<(), NativeDbTaskStoreError>
pub fn store_many( db: Arc<&'static Database<'static>>, tasks: Vec<TaskMeta>, ) -> Result<(), NativeDbTaskStoreError>
Trait Implementations§
Source§impl Clone for NativeDbTaskStore
impl Clone for NativeDbTaskStore
Source§fn clone(&self) -> NativeDbTaskStore
fn clone(&self) -> NativeDbTaskStore
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 Default for NativeDbTaskStore
impl Default for NativeDbTaskStore
Source§impl TaskStore for NativeDbTaskStore
impl TaskStore for NativeDbTaskStore
type Error = NativeDbTaskStoreError
Source§fn restore_tasks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn restore_tasks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Restores task states by cleaning up all tasks in a running state and handling their next run times. Read more
Source§fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Retrieves task metadata based on the task ID. Read more
Source§fn list<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Lists all task metadata. Read more
Source§fn store_task<'life0, 'async_trait>(
&'life0 self,
task: TaskMeta,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn store_task<'life0, 'async_trait>(
&'life0 self,
task: TaskMeta,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stores task metadata. Read more
Source§fn store_tasks<'life0, 'async_trait>(
&'life0 self,
tasks: Vec<TaskMeta>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn store_tasks<'life0, 'async_trait>(
&'life0 self,
tasks: Vec<TaskMeta>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stores tasks metadata. Read more
Source§fn fetch_pending_tasks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn fetch_pending_tasks<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TaskMeta>, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Fetches all pending tasks from the store. Read more
Source§fn update_task_execution_status<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
is_success: bool,
last_error: Option<String>,
last_duration_ms: Option<usize>,
last_retry_count: Option<usize>,
next_run: Option<i64>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_task_execution_status<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
is_success: bool,
last_error: Option<String>,
last_duration_ms: Option<usize>,
last_retry_count: Option<usize>,
next_run: Option<i64>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Updates the execution status of a task. Read more
Source§fn heartbeat<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
runner_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn heartbeat<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
runner_id: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Updates the heartbeat for a task. Read more
Source§fn set_task_stopped<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
reason: Option<String>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn set_task_stopped<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 str,
reason: Option<String>,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Marks a task as stopped. Read more
Auto Trait Implementations§
impl Freeze for NativeDbTaskStore
impl !RefUnwindSafe for NativeDbTaskStore
impl Send for NativeDbTaskStore
impl Sync for NativeDbTaskStore
impl Unpin for NativeDbTaskStore
impl !UnwindSafe for NativeDbTaskStore
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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