net.eduvax.util
public abstract class AStateMachineCommand<TMachineSt,TMachineEv,TEv extends Event> extends java.lang.Object implements java.lang.Runnable
Modifier and Type | Field and Description |
---|---|
private ErrorHandler |
_errHandler
Error handler.
|
private Handler<TEv> |
_evHandler
Event handler.
|
private EventProducer<TEv> |
_evProducer
Event generator.
|
private TMachineEv |
_koEv
Event to report command failure.
|
private TMachineEv |
_okEv
Event to report command succes.
|
private TMachineEv |
_startEv
Event to report command start.
|
private StateMachine<TMachineSt,TMachineEv> |
_stateMachine
State machine controlling this command execution.
|
Constructor and Description |
---|
AStateMachineCommand(StateMachine<TMachineSt,TMachineEv> stateMachine,
Handler<TEv> evHandler,
EventProducer<TEv> evProducer,
ErrorHandler errHandler,
TMachineEv startEv,
TMachineEv okEv,
TMachineEv koEv)
Create new command.
|
Modifier and Type | Method and Description |
---|---|
protected ErrorHandler |
getErrHandler()
Get error handler.
|
abstract void |
oRun()
Command entry point.
|
void |
run()
Runnable implementation.
|
private TMachineEv _startEv
private TMachineEv _okEv
private TMachineEv _koEv
private StateMachine<TMachineSt,TMachineEv> _stateMachine
private EventProducer<TEv extends Event> _evProducer
private ErrorHandler _errHandler
public AStateMachineCommand(StateMachine<TMachineSt,TMachineEv> stateMachine, Handler<TEv> evHandler, EventProducer<TEv> evProducer, ErrorHandler errHandler, TMachineEv startEv, TMachineEv okEv, TMachineEv koEv)
stateMachine
- execution controler automata.evHandler
- target for all automated events created during command
execution.evProducer
- event generator to use to create events.errHandler
- error handler.startEv
- transition linked to command start.okEv
- transition linked to command succes.koEv
- transition linked to command failure.public abstract void oRun()
public void run()
run
in interface java.lang.Runnable
protected ErrorHandler getErrHandler()