Interface StateMachine<TInstance>
- Namespace
- Automatonymous
- Assembly
- Automatonymous.dll
A defined state machine that operations against the specified instance
public interface StateMachine<TInstance> : StateMachine, Visitable, IProbeSite where TInstance : class
Type Parameters
TInstance
- Inherited Members
- Extension Methods
Properties
Accessor
Exposes the current state on the given instance
StateAccessor<TInstance> Accessor { get; }
Property Value
- StateAccessor<TInstance>
Methods
ConnectEventObserver(Event, EventObserver<TInstance>)
IDisposable ConnectEventObserver(Event @event, EventObserver<TInstance> observer)
Parameters
event
Eventobserver
EventObserver<TInstance>
Returns
ConnectEventObserver(EventObserver<TInstance>)
IDisposable ConnectEventObserver(EventObserver<TInstance> observer)
Parameters
observer
EventObserver<TInstance>
Returns
ConnectStateObserver(StateObserver<TInstance>)
IDisposable ConnectStateObserver(StateObserver<TInstance> observer)
Parameters
observer
StateObserver<TInstance>
Returns
GetState(string)
Returns the state requested bound to the instance
State<TInstance> GetState(string name)
Parameters
name
string
Returns
- State<TInstance>
RaiseEvent(EventContext<TInstance>)
Raise a simple event on the state machine instance asynchronously
Task RaiseEvent(EventContext<TInstance> context)
Parameters
context
EventContext<TInstance>
Returns
- Task
Task for the instance once completed
RaiseEvent<T>(EventContext<TInstance, T>)
Raise a data event on the state machine instance
Task RaiseEvent<T>(EventContext<TInstance, T> context)
Parameters
context
EventContext<TInstance, T>
Returns
Type Parameters
T