Table of Contents

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

flowId Guid
triggerKey string
ct CancellationToken

Returns

Task

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

jobId string

The scheduler's stable job identifier (e.g. "flow-{id}-{triggerKey}").

flowId Guid

The flow to trigger.

triggerKey string

The trigger key within the flow manifest.

cronExpression string

Standard cron expression controlling firing frequency.

Remove(string)

Removes a recurring job, stopping future executions.

void Remove(string jobId)

Parameters

jobId string

The 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

jobId string

The job identifier of the recurring job to trigger.