Interface IStepResult
- Namespace
- FlowOrchestrator.Core.Execution
- Assembly
- FlowOrchestrator.Core.dll
The outcome of a step execution returned by IStepHandler or IStepHandler<TInput>. Controls the orchestrator's next action.
public interface IStepResult
Properties
DelayNextStep
When non-null, the orchestrator schedules the next step invocation after this delay instead of enqueueing it immediately (used by PollableStepHandler<TInput>).
TimeSpan? DelayNextStep { get; set; }
Property Value
DispatchHint
Optional hint instructing the engine to spawn dynamic child steps after this step completes.
null (the default) means the engine continues using the static DAG only.
Used by ForEachStepHandler to fan out loop iterations without calling the dispatcher directly.
StepDispatchHint? DispatchHint { get; }
Property Value
FailedReason
string? FailedReason { get; set; }
Property Value
Key
The key of the step that produced this result. Set automatically if not populated by the handler.
string Key { get; set; }
Property Value
ReThrow
When true, the orchestrator rethrows the step's exception after recording it, allowing Hangfire's built-in retry policy to kick in.
bool ReThrow { get; set; }
Property Value
Result
Optional output value serialised to JSON and stored in IOutputsRepository.
Available to subsequent steps via @outputs('stepKey') expressions.
object? Result { get; set; }
Property Value
Status
Terminal or intermediate status of the step. A Pending status with DelayNextStep instructs Hangfire to reschedule (polling pattern).
StepStatus Status { get; set; }