Class CatchExceptionActivityBinder<TInstance, TData, TException>
- Namespace
- Automatonymous.Binders
- Assembly
- Automatonymous.dll
public class CatchExceptionActivityBinder<TInstance, TData, TException> : ExceptionActivityBinder<TInstance, TData, TException>, EventActivities<TInstance> where TInstance : class where TException : Exception
Type Parameters
TInstance
TData
TException
- Inheritance
-
CatchExceptionActivityBinder<TInstance, TData, TException>
- Implements
-
ExceptionActivityBinder<TInstance, TData, TException>EventActivities<TInstance>
- Inherited Members
- Extension Methods
Constructors
CatchExceptionActivityBinder(StateMachine<TInstance>, Event<TData>)
public CatchExceptionActivityBinder(StateMachine<TInstance> machine, Event<TData> @event)
Parameters
machine
StateMachine<TInstance>event
Event<TData>
Properties
Event
public Event<TData> Event { get; }
Property Value
- Event<TData>
StateMachine
public StateMachine<TInstance> StateMachine { get; }
Property Value
- StateMachine<TInstance>
Methods
Add(Activity<TInstance, TData>)
public ExceptionActivityBinder<TInstance, TData, TException> Add(Activity<TInstance, TData> activity)
Parameters
activity
Activity<TInstance, TData>
Returns
- ExceptionActivityBinder<TInstance, TData, TException>
Add(Activity<TInstance>)
public ExceptionActivityBinder<TInstance, TData, TException> Add(Activity<TInstance> activity)
Parameters
activity
Activity<TInstance>
Returns
- ExceptionActivityBinder<TInstance, TData, TException>
Catch<T>(Func<ExceptionActivityBinder<TInstance, TData, T>, ExceptionActivityBinder<TInstance, TData, T>>)
Catch an exception and execute the compensating activities
public ExceptionActivityBinder<TInstance, TData, TException> Catch<T>(Func<ExceptionActivityBinder<TInstance, TData, T>, ExceptionActivityBinder<TInstance, TData, T>> activityCallback) where T : Exception
Parameters
activityCallback
Func<ExceptionActivityBinder<TInstance, TData, T>, ExceptionActivityBinder<TInstance, TData, T>>
Returns
- ExceptionActivityBinder<TInstance, TData, TException>
Type Parameters
T
GetStateActivityBinders()
public IEnumerable<ActivityBinder<TInstance>> GetStateActivityBinders()
Returns
- IEnumerable<ActivityBinder<TInstance>>
If(StateMachineCondition<TInstance, TData>, Func<ExceptionActivityBinder<TInstance, TData, TException>, ExceptionActivityBinder<TInstance, TData, TException>>)
Create a conditional branch of activities for processing
public ExceptionActivityBinder<TInstance, TData, TException> If(StateMachineCondition<TInstance, TData> condition, Func<ExceptionActivityBinder<TInstance, TData, TException>, ExceptionActivityBinder<TInstance, TData, TException>> activityCallback)
Parameters
condition
StateMachineCondition<TInstance, TData>activityCallback
Func<ExceptionActivityBinder<TInstance, TData, TException>, ExceptionActivityBinder<TInstance, TData, TException>>
Returns
- ExceptionActivityBinder<TInstance, TData, TException>