public static ISagaAction FindActionByEventType(
     this ISagaActions actions, Type eventType)
 {
     return(actions.
            FirstOrDefault(action => action.Event == eventType));
 }
 public static ISagaAction FindActionByStateAndEventType(
     this ISagaActions actions, string state, Type eventType)
 {
     return(actions.
            FirstOrDefault(action => action.State == state && action.Event == eventType));
 }
 public static ISagaAction FindActionByStep(
     this ISagaActions actions, string step)
 {
     return(actions.
            FirstOrDefault(action => action.GetStep(step) != null));
 }