Interface ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton<CTX>

Type Parameters:
CTX - the context used to initialize the implementing instance.
All Superinterfaces:
Configurable<CTX>, Configurable.ConfigureAutomaton<CTX>, ConfigurableLifecycleComponent<CTX>, Destroyable, Destroyable.DestroyAutomaton, InitializedAccessor, LifecycleStatusAccessor, Pausable, Pausable.PauseAutomaton, Resumable, Resumable.ResumeAutomaton, RunningAccessor, Startable, Startable.StartAutomaton, Stoppable, Stoppable.StopAutomaton
All Known Implementing Classes:
ConfigurableLifecycleAutomatonImpl
Enclosing interface:
ConfigurableLifecycleComponent<CTX>

A system implementing the ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton interface supports managing ConfigurableLifecycleComponent instances and takes care that the open/close statuses are invoked in the correct order by throwing according exceptions in case the open/close-cycle is invoked in the wrong order. A ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton may be used to wrap a ConfigurableLifecycleComponent by a ConfigurableLifecycleComponentHandle.ConfigurableLifecycleAutomatonHandle for managing ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton instances. The ConfigurableLifecycleComponent contains the business-logic where as the ConfigurableLifecycleComponentHandle provides the frame for managing this business-logic. The ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton takes care of the correct open/close-cycle applied on a ConfigurableLifecycleComponent.