pub struct MemTriggerStore { /* private fields */ }Expand description
In-memory trigger store for testing and development.
Implementations§
Trait Implementations§
Source§impl Default for MemTriggerStore
impl Default for MemTriggerStore
Source§impl TriggerStore for MemTriggerStore
impl TriggerStore for MemTriggerStore
Source§fn register_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
condition: &'life1 TriggerCondition,
) -> Pin<Box<dyn Future<Output = RustvelloResult<ConditionId>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn register_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
condition: &'life1 TriggerCondition,
) -> Pin<Box<dyn Future<Output = RustvelloResult<ConditionId>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Register a condition and return its deterministic ID.
Source§fn get_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<TriggerCondition>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<TriggerCondition>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get a condition by ID.
Source§fn get_conditions_for_task<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 TaskId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_conditions_for_task<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 TaskId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all conditions that watch a specific task.
Source§fn get_cron_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_cron_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all cron conditions.
Source§fn get_event_conditions<'life0, 'life1, 'async_trait>(
&'life0 self,
event_code: &'life1 str,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_event_conditions<'life0, 'life1, 'async_trait>(
&'life0 self,
event_code: &'life1 str,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all event conditions matching an event code.
Source§fn register_trigger<'life0, 'life1, 'async_trait>(
&'life0 self,
trigger: &'life1 TriggerDefinitionDTO,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn register_trigger<'life0, 'life1, 'async_trait>(
&'life0 self,
trigger: &'life1 TriggerDefinitionDTO,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Register a trigger definition.
Source§fn get_trigger<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 TriggerDefinitionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<TriggerDefinitionDTO>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_trigger<'life0, 'life1, 'async_trait>(
&'life0 self,
id: &'life1 TriggerDefinitionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<TriggerDefinitionDTO>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get a trigger definition by ID.
Source§fn get_triggers_for_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<TriggerDefinitionDTO>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_triggers_for_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<TriggerDefinitionDTO>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get all trigger definitions that reference a given condition.
Source§fn remove_triggers_for_task<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 TaskId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<u32>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn remove_triggers_for_task<'life0, 'life1, 'async_trait>(
&'life0 self,
task_id: &'life1 TaskId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<u32>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Remove all trigger definitions for a task.
Source§fn record_valid_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
vc: &'life1 ValidCondition,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn record_valid_condition<'life0, 'life1, 'async_trait>(
&'life0 self,
vc: &'life1 ValidCondition,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Record a condition that has been evaluated and found satisfied.
Source§fn get_valid_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<ValidCondition>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_valid_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<ValidCondition>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all pending valid conditions.
Source§fn clear_valid_conditions<'life0, 'life1, 'async_trait>(
&'life0 self,
ids: &'life1 [String],
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn clear_valid_conditions<'life0, 'life1, 'async_trait>(
&'life0 self,
ids: &'life1 [String],
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Clear valid conditions by their IDs (after processing).
Source§fn get_last_cron_execution<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<DateTime<Utc>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_last_cron_execution<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Option<DateTime<Utc>>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get the last cron execution time for a condition.
Source§fn store_cron_execution<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
time: DateTime<Utc>,
expected_last: Option<DateTime<Utc>>,
) -> Pin<Box<dyn Future<Output = RustvelloResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn store_cron_execution<'life0, 'life1, 'async_trait>(
&'life0 self,
cond_id: &'life1 ConditionId,
time: DateTime<Utc>,
expected_last: Option<DateTime<Utc>>,
) -> Pin<Box<dyn Future<Output = RustvelloResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Store a cron execution time with optimistic locking.
Returns
true if the store succeeded (expected_last matched).Source§fn claim_trigger_run<'life0, 'life1, 'async_trait>(
&'life0 self,
run_id: &'life1 TriggerRunId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn claim_trigger_run<'life0, 'life1, 'async_trait>(
&'life0 self,
run_id: &'life1 TriggerRunId,
) -> Pin<Box<dyn Future<Output = RustvelloResult<bool>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Attempt to claim a trigger run. Returns
true if this is first claim.Source§fn purge<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn purge<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Purge all trigger data.
Source§fn get_all_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_conditions<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = RustvelloResult<Vec<(ConditionId, TriggerCondition)>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all registered conditions regardless of type. Read more
Auto Trait Implementations§
impl !Freeze for MemTriggerStore
impl !RefUnwindSafe for MemTriggerStore
impl Send for MemTriggerStore
impl Sync for MemTriggerStore
impl Unpin for MemTriggerStore
impl UnsafeUnpin for MemTriggerStore
impl !UnwindSafe for MemTriggerStore
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