Interface LifeCycleComponent.LifeCycleAutomaton

All Superinterfaces:
Destroyable, Destroyable.DestroyAutomaton, Initializable, Initializable.InitializeAutomaton, InitializedAccessor, LifeCycleComponent, LifeCycleStatusAccessor, Pausable, Pausable.PauseAutomaton, Resumable, Resumable.ResumeAutomaton, RunningAccessor, Startable, Startable.StartAutomaton, Stoppable, Stoppable.StopAutomaton
All Known Implementing Classes:
LifeCycleAutomatonImpl, LifeCycleAutomatonImpl.ManualLifeCycleAutomatonImpl
Enclosing interface:
LifeCycleComponent

public static interface LifeCycleComponent.LifeCycleAutomaton
extends LifeCycleComponent, Initializable.InitializeAutomaton, Startable.StartAutomaton, Pausable.PauseAutomaton, Resumable.ResumeAutomaton, Stoppable.StopAutomaton, Destroyable.DestroyAutomaton, LifeCycleStatusAccessor
A system implementing the LifeCycleComponent.LifeCycleAutomaton interface supports managing LifeCycleComponent instances and takes care that the life-cycle stages are invoked in the correct order by throwing according exceptions in case the life-cycle is invoked in the wrong order. A LifeCycleComponent.LifeCycleAutomaton may be used to wrap a LifeCycleComponent by a LifeCycleComponentHandle.LifeCycleAutomatonHandle for managing LifeCycleComponent instances. The LifeCycleComponent contains the business-logic where as the LifeCycleComponentHandle.LifeCycleAutomatonHandle provides the frame for managing this business-logic. The LifeCycleComponent.LifeCycleAutomaton takes care of the correct life-cycle applied on a LifeCycleComponent.