public static IStateMachineProvider <TContext, TStateId, TStatefulTask> PerformUntilFinalState <TContext, TStateId, TStatefulTask>( this IStateMachineBuilderWithoutStateId <TContext, TStateId, TStatefulTask> builder, TContext context) where TStatefulTask : class, IStatefulTask <TContext, TStateId> { return(builder.PerformUntilFinalState(context, customAction: null)); }
public static IStateMachineBuilderWithStateId <TContext, TStateId, TStatefulTask> On <TContext, TStateId, TStatefulTask>( this IStateMachineBuilderWithoutStateId <TContext, TStateId, TStatefulTask> builder, TStateId stateId) where TStatefulTask : class, IStatefulTask <TContext, TStateId> { return(builder.RememberStateId(stateId)); }
public static IStateMachineProvider <TContext, TStateId, TStatefulTask> PerformUntilFinalState <TContext, TStateId, TStatefulTask>( this IStateMachineBuilderWithoutStateId <TContext, TStateId, TStatefulTask> builder, TContext context, CustomStateMachineAction <TStateId>?customAction) where TStatefulTask : class, IStatefulTask <TContext, TStateId> { return(StateMachineUntilFinalStateProvider.Create( context, builder.InitialTask, builder.TransitionsTable, customAction )); }
public static IStateMachineBuilderWithoutStateId <TContext, TStateId, IStatefulTaskWithRollback <TContext, TStateId> > OnFinalGoToSelfLoop <TContext, TStateId>( this IStateMachineBuilderWithoutStateId <TContext, TStateId, IStatefulTaskWithRollback <TContext, TStateId> > builder, TStateId finalStateId) { return(builder.On(finalStateId).GoTo(FinalStatefulTaskWithRollback <TContext> .Create(finalStateId))); }