EventActivity <TInstance> CreateConditionalEventActivity(Activity <TInstance> activity) { var conditionalEventActivity = new ConditionalEventActivityImpl <TInstance, TData>(activity, _filterExpression); var converterActivity = new DataConverterActivity <TInstance, TData>(conditionalEventActivity); return(new EventActivityImpl <TInstance>(_event, converterActivity)); }
public static EventActivityBinder <TInstance, TData> ThenAsync <TInstance, TData>( this EventActivityBinder <TInstance, TData> source, Func <TInstance, TData, Task <TInstance> > action) where TInstance : class { var activity = new TaskActivity <TInstance, TData>(action); var adapter = new DataConverterActivity <TInstance, TData>(activity); return(source.Add(adapter)); }
public static EventActivityBinder <TInstance, TData> Then <TInstance, TData>( this EventActivityBinder <TInstance, TData> source, Action <TInstance, TData> action) where TInstance : class { var activity = new ActionActivity <TInstance, TData>(action); var adapter = new DataConverterActivity <TInstance, TData>(activity); return(source.Add(adapter)); }
ActivityBinder <TInstance> CreateStateActivityBinder(Activity <TInstance, TData> activity) { var converterActivity = new DataConverterActivity <TInstance, TData>(activity); return(new ExecuteActivityBinder <TInstance>(_event, converterActivity)); }