/// <summary>
 /// Initializes a new instance.
 /// </summary>
 /// <param name="requestTokenFactory"></param>
 /// <param name="exceptionFactory"></param>
 /// <param name="contextCallback"></param>
 public FaultedToActivity(AsyncRequestTokenFactory <TInstance, TData, TRequest> requestTokenFactory, AsyncExceptionFactory <TInstance, TData, TRequest> exceptionFactory, Action <SendContext <FaultEvent <TRequest> > > contextCallback)
 {
     this.requestTokenFactory = requestTokenFactory ?? throw new ArgumentNullException(nameof(requestTokenFactory));
     this.exceptionFactory    = exceptionFactory ?? throw new ArgumentNullException(nameof(exceptionFactory));
     this.contextCallback     = contextCallback;
 }
Esempio n. 2
0
 /// <summary>
 /// Responds to a stored request with a fault.
 /// </summary>
 /// <typeparam name="TInstance"></typeparam>
 /// <typeparam name="TData"></typeparam>
 /// <typeparam name="TRequest"></typeparam>
 /// <param name="source"></param>
 /// <param name="requestTokenFactory"></param>
 /// <param name="exceptionFactory"></param>
 /// <param name="contextCallback"></param>
 /// <returns></returns>
 public static EventActivityBinder <TInstance, TData> FaultedToAsync <TInstance, TData, TRequest>(this EventActivityBinder <TInstance, TData> source, AsyncRequestTokenFactory <TInstance, TData, TRequest> requestTokenFactory, AsyncExceptionFactory <TInstance, TData, TRequest> exceptionFactory, Action <SendContext <FaultEvent <TRequest> > > contextCallback = null)
     where TInstance : class, SagaStateMachineInstance
     where TData : class
     where TRequest : class
 {
     return(source.Add(new FaultedToActivity <TInstance, TData, TRequest>(requestTokenFactory, exceptionFactory, contextCallback)));
 }