Module org.refcodes.component
Package org.refcodes.component
Class CompositeComponentImpl.ExtendedCompositeComponentImpl<C extends Component,CTX,CON>
- java.lang.Object
-
- org.refcodes.component.CompositeComponentImpl<C>
-
- org.refcodes.component.CompositeComponentImpl.ExtendedCompositeComponentImpl<C,CTX,CON>
-
- Type Parameters:
C
- The type of theComponent
supported by theCompositeComponentImpl.ExtendedCompositeComponentImpl
.CTX
- the generic typeCON
- the generic type
- All Implemented Interfaces:
Flushable
,Closable
,CompositeComponent
,CompositeComponent.ExtendedCompositeComponent<CTX,CON>
,Configurable<CTX>
,ConfigurableLifecycleComponent<CTX>
,ConnectionComponent<CON>
,ConnectionOpenable<CON>
,Decomposeable
,Destroyable
,Flushable
,Initializable
,LifecycleComponent
,LinkComponent
,Openable
,Pausable
,Resetable
,Resumable
,Startable
,Stoppable
,org.refcodes.mixin.Disposable
- Enclosing class:
- CompositeComponentImpl<C extends Component>
public static class CompositeComponentImpl.ExtendedCompositeComponentImpl<C extends Component,CTX,CON> extends CompositeComponentImpl<C> implements CompositeComponent.ExtendedCompositeComponent<CTX,CON>
TheCompositeComponentImpl.ExtendedCompositeComponentImpl
is an implementation of theCompositeComponent.ExtendedCompositeComponent
. To make sure that the state change requests you require are supported by the managedComponent
instances, specify the according typeC
as generic type argument.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.refcodes.component.CompositeComponentImpl
CompositeComponentImpl.ExtendedCompositeComponentImpl<C extends Component,CTX,CON>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Closable
Closable.CloseAutomaton, Closable.CloseBuilder<B extends Closable.CloseBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.CompositeComponent
CompositeComponent.ExtendedCompositeComponent<CTX,CON>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Configurable
Configurable.ConfigureAutomaton<CTX>, Configurable.ConfigureBuilder<CTX,B extends Configurable.ConfigureBuilder<CTX,B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConfigurableLifecycleComponent
ConfigurableLifecycleComponent.ConfigurableLifecycleAutomaton<CTX>
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionComponent
ConnectionComponent.ConnectionAutomaton<CON>, ConnectionComponent.ConnectionComponentBuilder<CON,B extends ConnectionComponent.ConnectionComponentBuilder<CON,B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionOpenable
ConnectionOpenable.ConnectionOpenAutomaton<CON>, ConnectionOpenable.ConnectionOpenBuilder<CON,B extends ConnectionOpenable.ConnectionOpenBuilder<CON,B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Decomposeable
Decomposeable.DecomposeAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable
Destroyable.DestroyAutomaton
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.Disposable
org.refcodes.mixin.Disposable.Disposedable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Flushable
Flushable.FlushBuilder<B extends Flushable.FlushBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Initializable
Initializable.InitializeAutomaton, Initializable.InitializeBuilder<B extends Initializable.InitializeBuilder<B>>, Initializable.UncheckedInitializable
-
Nested classes/interfaces inherited from interface org.refcodes.component.LifecycleComponent
LifecycleComponent.LifecycleAutomaton, LifecycleComponent.UncheckedLifecycleComponent
-
Nested classes/interfaces inherited from interface org.refcodes.component.LinkComponent
LinkComponent.LinkAutomaton, LinkComponent.LinkComponentBuilder<B extends LinkComponent.LinkComponentBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Openable
Openable.OpenAutomaton, Openable.OpenBuilder<B extends Openable.OpenBuilder<B>>
-
Nested classes/interfaces inherited from interface org.refcodes.component.Pausable
Pausable.PauseAutomaton, Pausable.PauseBuilder<B extends Pausable.PauseBuilder<B>>, Pausable.UncheckedPausable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Resumable
Resumable.ResumeAutomaton, Resumable.ResumeBuilder<B extends Resumable.ResumeBuilder<B>>, Resumable.UncheckedResumable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Startable
Startable.StartAutomaton, Startable.StartBuilder<B extends Startable.StartBuilder<B>>, Startable.UncheckedStartable
-
Nested classes/interfaces inherited from interface org.refcodes.component.Stoppable
Stoppable.StopAutomaton, Stoppable.StopBuilder<B extends Stoppable.StopBuilder<B>>, Stoppable.UncheckedStoppable
-
-
Constructor Summary
Constructors Constructor Description ExtendedCompositeComponentImpl(C... aComponents)
Instantiates a new extended composite component impl.ExtendedCompositeComponentImpl(Collection<C> aComponents)
Instantiates a new extended composite component impl.ExtendedCompositeComponentImpl(org.refcodes.controlflow.ExecutionStrategy aStrategy, C... aComponents)
Instantiates a new extended composite component impl.ExtendedCompositeComponentImpl(org.refcodes.controlflow.ExecutionStrategy aStrategy, Collection<C> aComponents)
Instantiates a new extended composite component impl.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
initialize(CTX aContext)
Initializes and configures the component.void
open(CON aConnection)
Opens the component with the given connection.-
Methods inherited from class org.refcodes.component.CompositeComponentImpl
close, decompose, destroy, dispose, flush, getComponents, getExecutionStrategy, initialize, open, pause, reset, resume, start, stop
-
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.Closable
close, closeIn, closeQuietly, closeUnchecked
-
Methods inherited from interface org.refcodes.component.Configurable
initializeUnchecked
-
Methods inherited from interface org.refcodes.component.ConnectionOpenable
openUnchecked
-
Methods inherited from interface org.refcodes.component.Decomposeable
decompose
-
Methods inherited from interface org.refcodes.component.Destroyable
destroy
-
Methods inherited from interface org.refcodes.component.Flushable
flush, flushUnchecked, isFlushable
-
Methods inherited from interface org.refcodes.component.Initializable
initialize, initializeUnchecked
-
Methods inherited from interface org.refcodes.component.Openable
open, openUnchecked
-
Methods inherited from interface org.refcodes.component.Pausable
pause, pauseUnchecked
-
Methods inherited from interface org.refcodes.component.Resumable
resume, resumeUnchecked
-
Methods inherited from interface org.refcodes.component.Startable
start, startUnchecked
-
Methods inherited from interface org.refcodes.component.Stoppable
stop, stopUnchecked
-
-
-
-
Constructor Detail
-
ExtendedCompositeComponentImpl
@SafeVarargs public ExtendedCompositeComponentImpl(C... aComponents)
Instantiates a new extended composite component impl.- Parameters:
aComponents
- the components
-
ExtendedCompositeComponentImpl
public ExtendedCompositeComponentImpl(Collection<C> aComponents)
Instantiates a new extended composite component impl.- Parameters:
aComponents
- the components
-
ExtendedCompositeComponentImpl
@SafeVarargs public ExtendedCompositeComponentImpl(org.refcodes.controlflow.ExecutionStrategy aStrategy, C... aComponents)
Instantiates a new extended composite component impl.- Parameters:
aStrategy
- the strategyaComponents
- the components
-
ExtendedCompositeComponentImpl
public ExtendedCompositeComponentImpl(org.refcodes.controlflow.ExecutionStrategy aStrategy, Collection<C> aComponents)
Instantiates a new extended composite component impl.- Parameters:
aStrategy
- the strategyaComponents
- the components
-
-
Method Detail
-
initialize
public void initialize(CTX aContext) throws ConfigureException
Initializes and configures the component.- Specified by:
initialize
in interfaceConfigurable<C extends Component>
- Parameters:
aContext
- The context to be passed to the implementing instance.- Throws:
ConfigureException
-
open
public void open(CON aConnection) throws IOException
Opens the component with the given connection.- Specified by:
open
in interfaceConnectionOpenable<C extends Component>
- Parameters:
aConnection
- The connection used for opening the connection.- Throws:
IOException
- Thrown in case opening or accessing an open line (connection, junction, link) caused problems.
-
-