Table of Contents

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 Event
observer EventObserver<TInstance>

Returns

IDisposable

ConnectEventObserver(EventObserver<TInstance>)

IDisposable ConnectEventObserver(EventObserver<TInstance> observer)

Parameters

observer EventObserver<TInstance>

Returns

IDisposable

ConnectStateObserver(StateObserver<TInstance>)

IDisposable ConnectStateObserver(StateObserver<TInstance> observer)

Parameters

observer StateObserver<TInstance>

Returns

IDisposable

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

Task

Type Parameters

T