pub struct SqlitePersistenceProvider { /* private fields */ }Expand description
SQLite-backed persistence provider for the WFE workflow engine.
Implementations§
Trait Implementations§
Source§impl EventRepository for SqlitePersistenceProvider
impl EventRepository for SqlitePersistenceProvider
fn create_event<'life0, 'life1, 'async_trait>(
&'life0 self,
event: &'life1 Event,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_event<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Event>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_runnable_events<'life0, 'async_trait>(
&'life0 self,
as_at: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_events<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
event_name: &'life1 str,
event_key: &'life2 str,
as_of: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn mark_event_processed<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn mark_event_unprocessed<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl PersistenceProvider for SqlitePersistenceProvider
impl PersistenceProvider for SqlitePersistenceProvider
fn persist_errors<'life0, 'life1, 'async_trait>(
&'life0 self,
errors: &'life1 [ExecutionError],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn ensure_store_exists<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§impl ScheduledCommandRepository for SqlitePersistenceProvider
impl ScheduledCommandRepository for SqlitePersistenceProvider
fn supports_scheduled_commands(&self) -> bool
fn schedule_command<'life0, 'life1, 'async_trait>(
&'life0 self,
command: &'life1 ScheduledCommand,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn process_commands<'life0, 'life1, 'async_trait>(
&'life0 self,
as_of: DateTime<Utc>,
handler: &'life1 (dyn Fn(ScheduledCommand) -> Pin<Box<dyn Future<Output = Result<()>> + Send>> + Send + Sync),
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§impl SubscriptionRepository for SqlitePersistenceProvider
impl SubscriptionRepository for SqlitePersistenceProvider
fn create_event_subscription<'life0, 'life1, 'async_trait>(
&'life0 self,
subscription: &'life1 EventSubscription,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_subscriptions<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
event_name: &'life1 str,
event_key: &'life2 str,
as_of: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<Vec<EventSubscription>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn terminate_subscription<'life0, 'life1, 'async_trait>(
&'life0 self,
subscription_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_subscription<'life0, 'life1, 'async_trait>(
&'life0 self,
subscription_id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<EventSubscription>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_first_open_subscription<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
event_name: &'life1 str,
event_key: &'life2 str,
as_of: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<Option<EventSubscription>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn set_subscription_token<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
subscription_id: &'life1 str,
token: &'life2 str,
worker_id: &'life3 str,
expiry: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn clear_subscription_token<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
subscription_id: &'life1 str,
token: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Source§impl WorkflowRepository for SqlitePersistenceProvider
impl WorkflowRepository for SqlitePersistenceProvider
fn create_new_workflow<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 WorkflowInstance,
) -> Pin<Box<dyn Future<Output = Result<String>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn persist_workflow<'life0, 'life1, 'async_trait>(
&'life0 self,
instance: &'life1 WorkflowInstance,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn persist_workflow_with_subscriptions<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
instance: &'life1 WorkflowInstance,
subscriptions: &'life2 [EventSubscription],
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn get_runnable_instances<'life0, 'async_trait>(
&'life0 self,
as_at: DateTime<Utc>,
) -> Pin<Box<dyn Future<Output = Result<Vec<String>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_workflow_instance<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<WorkflowInstance>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_workflow_instances<'life0, 'life1, 'async_trait>(
&'life0 self,
ids: &'life1 [String],
) -> Pin<Box<dyn Future<Output = Result<Vec<WorkflowInstance>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Auto Trait Implementations§
impl Freeze for SqlitePersistenceProvider
impl !RefUnwindSafe for SqlitePersistenceProvider
impl Send for SqlitePersistenceProvider
impl Sync for SqlitePersistenceProvider
impl Unpin for SqlitePersistenceProvider
impl UnsafeUnpin for SqlitePersistenceProvider
impl !UnwindSafe for SqlitePersistenceProvider
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> 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