
Public Member Functions | |
| AlmaSubsystemContext (AlmaSubsystemActions actions, AcsLogger logger, ThreadFactory threadFactory) | |
| synchronized void | addAcsStateChangeListener (AcsStateChangeListener listener) |
| synchronized AlmaSubsystemStateAbstract | getCurrentTopLevelState () |
| synchronized void | initPass1 () throws AcsJIllegalStateEventEx |
| synchronized void | initPass2 () throws AcsJIllegalStateEventEx |
| synchronized void | reinit () throws AcsJIllegalStateEventEx |
| synchronized void | start () throws AcsJIllegalStateEventEx |
| synchronized void | stop () throws AcsJIllegalStateEventEx |
| synchronized void | shutdownPass1 () throws AcsJIllegalStateEventEx |
| synchronized void | shutdownPass2 () throws AcsJIllegalStateEventEx |
| synchronized void | error () throws AcsJIllegalStateEventEx |
| void | initSubsysPass1 () throws AcsStateActionException |
| void | initSubsysPass2 () throws AcsStateActionException |
| void | reinitSubsystem () throws AcsStateActionException |
| void | shutDownSubsysPass1 () throws AcsStateActionException |
| void | shutDownSubsysPass2 () throws AcsStateActionException |
| void | cleanUp () |
Public Attributes | |
| AvailableState | m_stateAvailable |
| ErrorState | m_stateError |
| OnlineState | m_stateOnline |
| OperationalState | m_stateOperational |
| OfflineState | m_stateOffline |
| ShutdownState | m_stateShutdown |
| ShuttingdownPass1State | m_stateShuttingdownPass1 |
| InitializingPass2State | m_stateInitializingPass2 |
| InitializingPass1State | m_stateInitializingPass1 |
| ReinitializingState | m_stateReinitializing |
| PreInitializedState | m_statePreInitialized |
| PreShutdownState | m_statePreShutdown |
| ShuttingdownPass2State | m_stateShuttingdownPass2 |
Package Functions | |
| void | setState (AlmaSubsystemStateAbstract newState, String eventName) |
| void | illegalEvent (String stateName, String eventName) throws AcsJIllegalStateEventEx |
| void | logTransition (AcsState sourceState, AcsState targetState, String eventName) |
| ThreadPoolExecutor | getSharedActivityExecutor () |
Private Attributes | |
| AlmaSubsystemStateAbstract | m_currentState |
| final AlmaSubsystemActions | m_actionDelegate |
| List< AcsStateChangeListener > | m_stateChangeListeners |
| AcsState[] | m_oldHierarchy |
| final AcsLogger | m_logger |
| final ThreadPoolExecutor | sharedActivityExecutor |
| boolean | m_verbose = false |
The super context class for the AlmaSubsystem state machine.
| alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::AlmaSubsystemContext | ( | AlmaSubsystemActions | actions, | |
| AcsLogger | logger, | |||
| ThreadFactory | threadFactory | |||
| ) | [inline] |
References alma::ACS::MasterComponentImpl::statemachine::ShutdownState::activate(), getCurrentTopLevelState(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::getStateHierarchy(), m_actionDelegate, m_logger, m_oldHierarchy, m_stateAvailable, m_stateChangeListeners, m_stateError, m_stateInitializingPass1, m_stateInitializingPass2, m_stateOffline, m_stateOnline, m_stateOperational, m_statePreInitialized, m_statePreShutdown, m_stateReinitializing, m_stateShutdown, m_stateShuttingdownPass1, m_stateShuttingdownPass2, and sharedActivityExecutor.
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::addAcsStateChangeListener | ( | AcsStateChangeListener | listener | ) | [inline] |
Registers an object that will be notified about any state change in this state machine.
| listener |
References m_stateChangeListeners.
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::initialize(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::setUp().
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::cleanUp | ( | ) | [inline] |
Final clean-up, must be called before unloading this class. Afterwards it may be in an undefined state.
References sharedActivityExecutor.
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::cleanUp().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::error | ( | ) | throws AcsJIllegalStateEventEx [inline] |
| synchronized AlmaSubsystemStateAbstract alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::getCurrentTopLevelState | ( | ) | [inline] |
References m_currentState.
Referenced by AlmaSubsystemContext(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::assertStateHierarchy(), alma::ACS::MasterComponentImpl::MasterComponentImplBase::DefaultResourceErrorHandler< T >::badState(), setState(), and alma::ACS::MasterComponentImpl::MasterComponentImplBase::updateStateHierarchy().
| ThreadPoolExecutor alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::getSharedActivityExecutor | ( | ) | [inline, package] |
References sharedActivityExecutor.
Referenced by alma::ACS::MasterComponentImpl::statemachine::ShuttingdownPass2State::entry(), alma::ACS::MasterComponentImpl::statemachine::ShuttingdownPass1State::entry(), alma::ACS::MasterComponentImpl::statemachine::ReinitializingState::entry(), alma::ACS::MasterComponentImpl::statemachine::InitializingPass2State::entry(), and alma::ACS::MasterComponentImpl::statemachine::InitializingPass1State::entry().
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::illegalEvent | ( | String | stateName, | |
| String | eventName | |||
| ) | throws AcsJIllegalStateEventEx [inline, package] |
References m_logger, m_verbose, alma::ACSErrTypeCommon::wrappers::AcsJIllegalStateEventEx::setEvent(), and alma::ACSErrTypeCommon::wrappers::AcsJIllegalStateEventEx::setState().
Referenced by alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::error(), alma::ACS::MasterComponentImpl::statemachine::OfflineSubStateAbstract::initPass1(), alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::initPass1(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::initPass1(), alma::ACS::MasterComponentImpl::statemachine::OfflineSubStateAbstract::initPass2(), alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::initPass2(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::initPass2(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::reinit(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::shutdownPass1(), alma::ACS::MasterComponentImpl::statemachine::OfflineSubStateAbstract::shutdownPass2(), alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::shutdownPass2(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::shutdownPass2(), alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::start(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::start(), alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::stop(), and alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::stop().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::initPass1 | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::initPass1(), and m_currentState.
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testActionException(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testIllegalEvent(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testLegalLifecycle(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testReentryToCompositeState().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::initPass2 | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::initPass2(), and m_currentState.
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testActionException(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testLegalLifecycle(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testReentryToCompositeState().
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::initSubsysPass1 | ( | ) | throws AcsStateActionException [inline] |
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::initSubsysPass2 | ( | ) | throws AcsStateActionException [inline] |
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::reinit | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References m_currentState, and alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::reinit().
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testReentryToCompositeState().
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::reinitSubsystem | ( | ) | throws AcsStateActionException [inline] |
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::setState | ( | AlmaSubsystemStateAbstract | newState, | |
| String | eventName | |||
| ) | [inline, package] |
References alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::entry(), getCurrentTopLevelState(), alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::getStateHierarchy(), logTransition(), m_currentState, m_oldHierarchy, m_stateChangeListeners, and alma::acs::genfw::runtime::sm::AcsStateChangeListener::stateChangedNotify().
Referenced by alma::ACS::MasterComponentImpl::statemachine::AvailableState::setSubstate().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::shutdownPass1 | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References m_currentState, and alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::shutdownPass1().
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testActionException(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testLegalLifecycle().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::shutdownPass2 | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References m_currentState, and alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::shutdownPass2().
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testActionException(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testLegalLifecycle().
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::shutDownSubsysPass1 | ( | ) | throws AcsStateActionException [inline] |
| void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::shutDownSubsysPass2 | ( | ) | throws AcsStateActionException [inline] |
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::start | ( | ) | throws AcsJIllegalStateEventEx [inline] |
References m_currentState, and alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemStateAbstract::start().
Referenced by alma::ACS::MasterComponentImpl::MasterComponentImplBase::doTransition(), alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testIllegalEvent(), and alma::ACS::MasterComponentImpl::statemachine::StateMachineTest::testLegalLifecycle().
| synchronized void alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::stop | ( | ) | throws AcsJIllegalStateEventEx [inline] |
final AlmaSubsystemActions alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_actionDelegate [private] |
Referenced by AlmaSubsystemContext(), initSubsysPass1(), initSubsysPass2(), reinitSubsystem(), shutDownSubsysPass1(), and shutDownSubsysPass2().
AlmaSubsystemStateAbstract alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_currentState [private] |
Referenced by error(), getCurrentTopLevelState(), initPass1(), initPass2(), reinit(), setState(), shutdownPass1(), shutdownPass2(), start(), and stop().
final AcsLogger alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_logger [private] |
Referenced by AlmaSubsystemContext(), illegalEvent(), and logTransition().
AcsState [] alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_oldHierarchy [private] |
Referenced by AlmaSubsystemContext(), and setState().
Referenced by AlmaSubsystemContext().
List<AcsStateChangeListener> alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_stateChangeListeners [private] |
Referenced by addAcsStateChangeListener(), AlmaSubsystemContext(), and setState().
Referenced by AlmaSubsystemContext(), alma::ACS::MasterComponentImpl::MasterComponentImplBase::DefaultResourceErrorHandler< T >::badState(), alma::ACS::MasterComponentImpl::statemachine::ShuttingdownPass2State::entry(), alma::ACS::MasterComponentImpl::statemachine::ShuttingdownPass1State::entry(), alma::ACS::MasterComponentImpl::statemachine::ReinitializingState::entry(), alma::ACS::MasterComponentImpl::statemachine::InitializingPass2State::entry(), alma::ACS::MasterComponentImpl::statemachine::InitializingPass1State::entry(), and alma::ACS::MasterComponentImpl::statemachine::AvailableSubStateAbstract::error().
Referenced by AlmaSubsystemContext().
Referenced by AlmaSubsystemContext(), alma::ACS::MasterComponentImpl::statemachine::ReinitializingState::entry(), alma::ACS::MasterComponentImpl::statemachine::InitializingPass2State::entry(), alma::ACS::MasterComponentImpl::statemachine::OperationalState::stop(), and alma::ACS::MasterComponentImpl::statemachine::OnlineState::stop().
boolean alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::m_verbose = false [private] |
Referenced by illegalEvent(), and logTransition().
final ThreadPoolExecutor alma::ACS::MasterComponentImpl::statemachine::AlmaSubsystemContext::sharedActivityExecutor [private] |
Executor for do/ actions in activity states. This executor only has one worker thread and therefore synchronizes concurrent requests. : Discuss if and how we want to escape from a hanging action method. Both timeout and asynchronous actions pose ugly implementation issues for the subsystem MCs.
Referenced by AlmaSubsystemContext(), cleanUp(), and getSharedActivityExecutor().
1.6.2