public static IStateMachineProvider <TContext, int, TStraightforwardStatefulTask> PerformUntilFinalState <TContext, TStraightforwardStatefulTask>( this IStraightforwardStateMachineBuilder <TContext, TStraightforwardStatefulTask> builder, TContext context) where TStraightforwardStatefulTask : class, IStraightforwardStatefulTask <TContext> { return(builder.PerformUntilFinalState(context, customAction: null)); }
public static IStraightforwardStateMachineBuilder <TContext, TStraightforwardStatefulTask> ThenGoTo <TContext, TStraightforwardStatefulTask>( this IStraightforwardStateMachineBuilder <TContext, TStraightforwardStatefulTask> builder, TStraightforwardStatefulTask statefulTask) where TStraightforwardStatefulTask : class, IStraightforwardStatefulTask <TContext> { return(builder.AddStatefulTask(statefulTask)); }
public static IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTaskWithRollback <TContext> > ThenGoTo <TContext>( this IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTaskWithRollback <TContext> > builder, StraightforwardStatefulTaskDoAction <TContext> doAction, StatefulTaskRollbackAction <TContext>?rollbackAction) { var statefulTask = StraightforwardStatefulTaskWithRollbackWrapper.Create(doAction, rollbackAction); return(builder.AddStatefulTask(statefulTask)); }
public static IStateMachineProvider <TContext, int, TStraightforwardStatefulTask> PerformUntilFinalState <TContext, TStraightforwardStatefulTask>( this IStraightforwardStateMachineBuilder <TContext, TStraightforwardStatefulTask> builder, TContext context, CustomStateMachineAction <int>?customAction) where TStraightforwardStatefulTask : class, IStraightforwardStatefulTask <TContext> { return(StraightforwardStateMachineProvider.Create( context, builder.InitialTask, builder.TransitionsList, customAction )); }
public static IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTaskWithRollback <TContext> > ThenGoToFinalSelfLoop <TContext>( this IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTaskWithRollback <TContext> > builder) { return(builder.ThenGoTo(FinalStraightforwardStatefulTaskWithRollback <TContext> .Create())); }
public static IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTask <TContext> > ThenGoTo <TContext>( this IStraightforwardStateMachineBuilder <TContext, IStraightforwardStatefulTask <TContext> > builder, StraightforwardStatefulTaskDoAction <TContext> doAction) { return(builder.AddStatefulTask(StraightforwardStatefulTaskWrapper.Create(doAction))); }