Class ObservableLifecycleRequestAutomatonImpl
- java.lang.Object
-
- org.refcodes.component.LifecycleAutomatonImpl
-
- org.refcodes.component.ext.observer.ObservableLifecycleRequestAutomatonImpl
-
- All Implemented Interfaces:
org.refcodes.component.Destroyable,org.refcodes.component.Destroyable.DestroyAutomaton,ObservableLifecycleRequestAutomaton,org.refcodes.component.Initializable,org.refcodes.component.Initializable.InitializeAutomaton,org.refcodes.component.InitializedAccessor,org.refcodes.component.LifecycleComponent,org.refcodes.component.LifecycleComponent.LifecycleAutomaton,org.refcodes.component.LifecycleStatusAccessor,org.refcodes.component.Pausable,org.refcodes.component.Pausable.PauseAutomaton,org.refcodes.component.Resumable,org.refcodes.component.Resumable.ResumeAutomaton,org.refcodes.component.RunningAccessor,org.refcodes.component.Startable,org.refcodes.component.Startable.StartAutomaton,org.refcodes.component.Stoppable,org.refcodes.component.Stoppable.StopAutomaton,org.refcodes.mixin.Loggable,org.refcodes.observer.Observable<LifecycleRequestObserver>
public class ObservableLifecycleRequestAutomatonImpl extends org.refcodes.component.LifecycleAutomatonImpl implements ObservableLifecycleRequestAutomaton, org.refcodes.mixin.Loggable
Abstract implementation of theObservableLifecycleStatusAutomatoninterface with the according hook methods for you to create your domain drivenObservableLifecycleStatusAutomaton.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.refcodes.component.LifecycleAutomatonImpl
org.refcodes.component.LifecycleAutomatonImpl.ManualLifecycleAutomatonImpl
-
Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable
org.refcodes.component.Destroyable.DestroyAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.component.Initializable
org.refcodes.component.Initializable.InitializeAutomaton, org.refcodes.component.Initializable.InitializeBuilder<B extends org.refcodes.component.Initializable.InitializeBuilder<B>>, org.refcodes.component.Initializable.UncheckedInitializable
-
Nested classes/interfaces inherited from interface org.refcodes.component.InitializedAccessor
org.refcodes.component.InitializedAccessor.InitializedMutator, org.refcodes.component.InitializedAccessor.InitializedProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.LifecycleComponent
org.refcodes.component.LifecycleComponent.LifecycleAutomaton, org.refcodes.component.LifecycleComponent.UncheckedLifecycleComponent
-
Nested classes/interfaces inherited from interface org.refcodes.component.LifecycleStatusAccessor
org.refcodes.component.LifecycleStatusAccessor.LifecycleStatusBuilder<B extends org.refcodes.component.LifecycleStatusAccessor.LifecycleStatusBuilder<B>>, org.refcodes.component.LifecycleStatusAccessor.LifecycleStatusMutator, org.refcodes.component.LifecycleStatusAccessor.LifecycleStatusProperty
-
Nested classes/interfaces inherited from interface org.refcodes.component.Pausable
org.refcodes.component.Pausable.PauseAutomaton, org.refcodes.component.Pausable.PauseBuilder<B extends org.refcodes.component.Pausable.PauseBuilder<B>>, org.refcodes.component.Pausable.UncheckedPausable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Resumable
org.refcodes.component.Resumable.ResumeAutomaton, org.refcodes.component.Resumable.ResumeBuilder<B extends org.refcodes.component.Resumable.ResumeBuilder<B>>, org.refcodes.component.Resumable.UncheckedResumable
-
Nested classes/interfaces inherited from interface org.refcodes.component.RunningAccessor
org.refcodes.component.RunningAccessor.RunningMutator, org.refcodes.component.RunningAccessor.RunningProperty
-
-
Constructor Summary
Constructors Constructor Description ObservableLifecycleRequestAutomatonImpl()Instantiates a new observable life cycle request automaton impl.ObservableLifecycleRequestAutomatonImpl(Object aSource)ObservableLifecycleRequestAutomatonImpl(Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, Object aSource)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData)ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource)ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()booleanhasObserverSubscription(LifecycleRequestObserver aObserver)voidinitialize()voidpause()voidresume()voidstart()voidstop()booleansubscribeObserver(LifecycleRequestObserver aObserver)booleanunsubscribeObserver(LifecycleRequestObserver aObserver)-
Methods inherited from class org.refcodes.component.LifecycleAutomatonImpl
getLifecycleComponent, getLifecycleStatus, isDestroyable, isDestroyed, isInitalizable, isInitialized, isPausable, isPaused, isResumable, isRunning, isStartable, isStoppable, isStopped, setLifecycleStatus
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Constructor Detail
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl()
Instantiates a new observable life cycle request automaton impl.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(Object aSource)
- Parameters:
aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData)
- Parameters:
aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource)- Parameters:
aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent)
- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, Object aSource)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)
- Parameters:
aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)
- Parameters:
aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
ObservableLifecycleRequestAutomatonImpl
public ObservableLifecycleRequestAutomatonImpl(org.refcodes.component.LifecycleComponent aLifecycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifecycleComponent- TheLifecycleComponentto which the life-cycle method calls are to be delegated to.aEventMetaData- TheEventMetaDatato be used when firing events in case theEventMetaDatais to be different from the auto-generatedEventMetaData.aSource- The source instance to be used when firing events in case the source is to be different from this class' instance.aExecutorService- The executor service to be used when firingGenericActionEventinstances in multiple threads (if null then a default one is used).aExecutionStrategy- TheExecutionStrategyto be used when firingGenericActionEventinstance (if null then the defaultExecutionStrategy.SEQUENTIALis used).
-
-
Method Detail
-
hasObserverSubscription
public boolean hasObserverSubscription(LifecycleRequestObserver aObserver)
- Specified by:
hasObserverSubscriptionin interfaceorg.refcodes.observer.Observable<LifecycleRequestObserver>
-
subscribeObserver
public boolean subscribeObserver(LifecycleRequestObserver aObserver)
- Specified by:
subscribeObserverin interfaceorg.refcodes.observer.Observable<LifecycleRequestObserver>
-
unsubscribeObserver
public boolean unsubscribeObserver(LifecycleRequestObserver aObserver)
- Specified by:
unsubscribeObserverin interfaceorg.refcodes.observer.Observable<LifecycleRequestObserver>
-
initialize
public void initialize() throws org.refcodes.component.InitializeException- Specified by:
initializein interfaceorg.refcodes.component.Initializable- Overrides:
initializein classorg.refcodes.component.LifecycleAutomatonImpl- Throws:
org.refcodes.component.InitializeException
-
start
public void start() throws org.refcodes.component.StartException- Specified by:
startin interfaceorg.refcodes.component.Startable- Overrides:
startin classorg.refcodes.component.LifecycleAutomatonImpl- Throws:
org.refcodes.component.StartException
-
pause
public void pause() throws org.refcodes.component.PauseException- Specified by:
pausein interfaceorg.refcodes.component.Pausable- Overrides:
pausein classorg.refcodes.component.LifecycleAutomatonImpl- Throws:
org.refcodes.component.PauseException
-
resume
public void resume() throws org.refcodes.component.ResumeException- Specified by:
resumein interfaceorg.refcodes.component.Resumable- Overrides:
resumein classorg.refcodes.component.LifecycleAutomatonImpl- Throws:
org.refcodes.component.ResumeException
-
stop
public void stop() throws org.refcodes.component.StopException- Specified by:
stopin interfaceorg.refcodes.component.Stoppable- Overrides:
stopin classorg.refcodes.component.LifecycleAutomatonImpl- Throws:
org.refcodes.component.StopException
-
destroy
public void destroy()
- Specified by:
destroyin interfaceorg.refcodes.component.Destroyable- Overrides:
destroyin classorg.refcodes.component.LifecycleAutomatonImpl
-
-