Interface IRecurringTriggerDispatcher
- Namespace
- FlowOrchestrator.Core.Execution
- Assembly
- FlowOrchestrator.Core.dll
Bridges the engine to the recurring-job scheduler (Hangfire, Quartz, etc.) for cron-based flow triggers. Implementations live in the runtime adapter package; the Core engine and Dashboard only depend on this interface.
public interface IRecurringTriggerDispatcher
Methods
EnqueueTriggerAsync(Guid, string, CancellationToken)
Enqueues a one-time immediate trigger for a flow identified by flowId
and triggerKey. Used when a paused schedule is manually fired.
Task EnqueueTriggerAsync(Guid flowId, string triggerKey, CancellationToken ct = default)
Parameters
flowIdGuidtriggerKeystringctCancellationToken
Returns
RegisterOrUpdate(string, Guid, string, string)
Creates or updates a recurring cron job that calls TriggerByScheduleAsync.
void RegisterOrUpdate(string jobId, Guid flowId, string triggerKey, string cronExpression)
Parameters
jobIdstringThe scheduler's stable job identifier (e.g.
"flow-{id}-{triggerKey}").flowIdGuidThe flow to trigger.
triggerKeystringThe trigger key within the flow manifest.
cronExpressionstringStandard cron expression controlling firing frequency.
Remove(string)
Removes a recurring job, stopping future executions.
void Remove(string jobId)
Parameters
jobIdstringThe job identifier used when the job was registered.
TriggerOnce(string)
Immediately triggers the next execution of a recurring job without altering its schedule.
void TriggerOnce(string jobId)
Parameters
jobIdstringThe job identifier of the recurring job to trigger.