Class SequenceStateMachine
java.lang.Object
org.scictrl.csshell.epics.server.application.AbstractApplication
org.scictrl.csshell.epics.server.application.automata.StateMachine
org.scictrl.csshell.epics.server.application.automata.SequenceStateMachine
- All Implemented Interfaces:
Application,OnDemandValueProcessor.ValueProvider
This State Machine delegated too sequence of state machines..
- Author:
- igor@scictrl.com
-
Nested Class Summary
Nested classes/interfaces inherited from class org.scictrl.csshell.epics.server.application.automata.StateMachine
StateMachine.State -
Field Summary
Fields inherited from class org.scictrl.csshell.epics.server.application.automata.StateMachine
ABORT, ACTIVATE, DESCRIPTION, DRYRUN, ENABLED, PREPARE, PROGRESS, STATE, STATE_STRINGFields inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
database, DEFAULT_NAME_DELIMITER, dynamicRecordCreator, ERROR_SUM, LINK_ERROR, LINK_ERROR_STRING, links, log, name, NAME_DELIMITER, nameDelimiter, records -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidactivate()Application has now reference to Database.voidConfigures the internals of this application, provides reference to configuration with root inside applications tag.static final SequenceStateMachinenewApplication(String name, double timeout, String[] names) newApplication.voidsetState.voidstateMachineAbort.voidstateMachineActivate(boolean dryrun) Activates state machine.voidstateMachinePrepare.voidupdateProgress.voidupdateState.Methods inherited from class org.scictrl.csshell.epics.server.application.automata.StateMachine
getProgress, getState, getStatus, getTimeout, isAbortOnFail, isDryRun, isEnabled, isInitializationFailed, notifyRecordChange, notifyRecordWrite, setEnabled, setProgress, setStateInitializationFailed, setStatus, setTimeoutMethods inherited from class org.scictrl.csshell.epics.server.application.AbstractApplication
addRecord, addRecordOfCommandProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfMemoryValueProcessor, addRecordOfOnDemandProcessor, addRecordOfOnLinkValueProcessor, configure, connectLinks, createNewStore, fullRecordName, getLinks, getName, getNameDelimiter, getNotNull, getRecord, getRecordErrorSum, getRecordLinkError, getRecordNames, getRecords, getStore, getStore, getValue, initialize, isActivated, isDynamicRecordCreator, log4debug, log4error, log4error, log4info, notifyLinkChange, processLinkChange, pushDoneCommandProcessor, reconnectLinks, resetOnDemandProcessor, restore, store, toString, updateErrorSum, updateErrorSum, updateLinkError, updateLinkError
-
Constructor Details
-
SequenceStateMachine
public SequenceStateMachine()Constructor for SequenceStateMachine.
-
-
Method Details
-
newApplication
public static final SequenceStateMachine newApplication(String name, double timeout, String[] names) newApplication.
- Parameters:
name- aStringobjecttimeout- a doublenames- an array ofStringobjects- Returns:
- a
SequenceStateMachineobject
-
configure
public void configure(String name, org.apache.commons.configuration.HierarchicalConfiguration config) Configures the internals of this application, provides reference to configuration with root inside applications tag. Server structure is not yet initialized, so does not have reference to Database, the Database reference will be available during activate call.- Specified by:
configurein interfaceApplication- Overrides:
configurein classStateMachine- Parameters:
name- aStringobjectconfig- configuration with room inside application tag.
-
activate
public void activate()Application has now reference to Database. Application might want to connect to other records on this server or PVs on other servers. This can not be done until all records from configuration has been loaded. Call to this method signals application that records has been loaded and linking to other values can be commenced.- Specified by:
activatein interfaceApplication- Overrides:
activatein classStateMachine
-
updateProgress
public void updateProgress()updateProgress.
-
updateState
public void updateState()updateState.
-
stateMachinePrepare
public void stateMachinePrepare()stateMachinePrepare.
- Overrides:
stateMachinePreparein classStateMachine
-
stateMachineActivate
public void stateMachineActivate(boolean dryrun) Activates state machine. If this state machine is in dry-run mode or dry-run parameter with
trueis called, then this step is activate in dry-run mode.- Overrides:
stateMachineActivatein classStateMachine- Parameters:
dryrun- dry-run mode request
-
stateMachineAbort
public void stateMachineAbort()stateMachineAbort.
- Overrides:
stateMachineAbortin classStateMachine
-
setState
setState.
- Overrides:
setStatein classStateMachine- Parameters:
st- aStateMachine.Stateobject
-