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 the
ObservableLifeCycleStatusAutomaton
interface with the according hook methods for you to create your domain
driven ObservableLifeCycleStatusAutomaton
.-
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
Nested classes/interfaces inherited from interface org.refcodes.component.Startable
org.refcodes.component.Startable.StartAutomaton, org.refcodes.component.Startable.StartBuilder<B extends org.refcodes.component.Startable.StartBuilder<B>>, org.refcodes.component.Startable.UncheckedStartable
Nested classes/interfaces inherited from interface org.refcodes.component.Stoppable
org.refcodes.component.Stoppable.StopAutomaton, org.refcodes.component.Stoppable.StopBuilder<B extends org.refcodes.component.Stoppable.StopBuilder<B>>, org.refcodes.component.Stoppable.UncheckedStoppable
-
Field Summary
Fields inherited from interface org.refcodes.mixin.Loggable
RUNTIME_LOGGER_CLASS, RUNTIME_LOGGER_FACTORY_CLASS, RUNTIME_LOGGER_FACTORY_METHOD
-
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
Modifier and Type Method Description void
destroy()
boolean
hasObserverSubscription(LifeCycleRequestObserver aObserver)
void
initialize()
void
pause()
void
resume()
void
start()
void
stop()
boolean
subscribeObserver(LifeCycleRequestObserver aObserver)
boolean
unsubscribeObserver(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
Methods inherited from interface org.refcodes.component.Initializable
initializeUnchecked
Methods inherited from interface org.refcodes.mixin.Loggable
alert, alert, critical, critical, debug, error, info, notice, panic, trace, warn, warn
Methods inherited from interface org.refcodes.component.Pausable
pauseUnchecked
Methods inherited from interface org.refcodes.component.Resumable
resumeUnchecked
Methods inherited from interface org.refcodes.component.Startable
startUnchecked
Methods inherited from interface org.refcodes.component.Stoppable
stopUnchecked
-
Constructor Details
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl()Instantiates a new observable life cycle request automaton impl. -
ObservableLifeCycleRequestAutomatonImpl
- 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
- TheEventMetaData
to be used when firing events in case theEventMetaData
is 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
- TheEventMetaData
to be used when firing events in case theEventMetaData
is to be different from the auto-generatedEventMetaData
.
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent, Object aSource)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to 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
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is to be different from the auto-generatedEventMetaData
.
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is 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 firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is 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 firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is to be different from the auto-generatedEventMetaData
.aExecutorService
- The executor service to be used when firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.mixin.EventMetaData aEventMetaData, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is 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 firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.aExecutorService
- The executor service to be used when firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent, Object aSource, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to 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 firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
ObservableLifeCycleRequestAutomatonImpl
public ObservableLifeCycleRequestAutomatonImpl(org.refcodes.component.LifeCycleComponent aLifeCycleComponent, org.refcodes.mixin.EventMetaData aEventMetaData, ExecutorService aExecutorService, org.refcodes.controlflow.ExecutionStrategy aExecutionStrategy)- Parameters:
aLifeCycleComponent
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is to be different from the auto-generatedEventMetaData
.aExecutorService
- The executor service to be used when firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is 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
- TheLifeCycleComponent
to which the life-cycle method calls are to be delegated to.aEventMetaData
- TheEventMetaData
to be used when firing events in case theEventMetaData
is 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 firingGenericActionEvent
instances in multiple threads (if null then a default one is used).aExecutionStrategy
- TheExecutionStrategy
to be used when firingGenericActionEvent
instance (if null then the defaultExecutionStrategy.SEQUENTIAL
is used).
-
-
Method Details
-
hasObserverSubscription
- Specified by:
hasObserverSubscription
in interfaceorg.refcodes.observer.Observable<LifeCycleRequestObserver>
-
subscribeObserver
- Specified by:
subscribeObserver
in interfaceorg.refcodes.observer.Observable<LifeCycleRequestObserver>
-
unsubscribeObserver
- Specified by:
unsubscribeObserver
in interfaceorg.refcodes.observer.Observable<LifeCycleRequestObserver>
-
initialize
public void initialize() throws org.refcodes.component.InitializeException- Specified by:
initialize
in interfaceorg.refcodes.component.Initializable
- Overrides:
initialize
in classorg.refcodes.component.LifeCycleAutomatonImpl
- Throws:
org.refcodes.component.InitializeException
-
start
public void start() throws org.refcodes.component.StartException- Specified by:
start
in interfaceorg.refcodes.component.Startable
- Overrides:
start
in classorg.refcodes.component.LifeCycleAutomatonImpl
- Throws:
org.refcodes.component.StartException
-
pause
public void pause() throws org.refcodes.component.PauseException- Specified by:
pause
in interfaceorg.refcodes.component.Pausable
- Overrides:
pause
in classorg.refcodes.component.LifeCycleAutomatonImpl
- Throws:
org.refcodes.component.PauseException
-
resume
public void resume() throws org.refcodes.component.ResumeException- Specified by:
resume
in interfaceorg.refcodes.component.Resumable
- Overrides:
resume
in classorg.refcodes.component.LifeCycleAutomatonImpl
- Throws:
org.refcodes.component.ResumeException
-
stop
public void stop() throws org.refcodes.component.StopException- Specified by:
stop
in interfaceorg.refcodes.component.Stoppable
- Overrides:
stop
in classorg.refcodes.component.LifeCycleAutomatonImpl
- Throws:
org.refcodes.component.StopException
-
destroy
public void destroy()- Specified by:
destroy
in interfaceorg.refcodes.component.Destroyable
- Overrides:
destroy
in classorg.refcodes.component.LifeCycleAutomatonImpl
-