Module org.refcodes.component
Package org.refcodes.component
Class AbstractComponentComposite.ExtendedCompositeComponentImpl<C extends Component,CTX,CON>
java.lang.Object
org.refcodes.component.AbstractComponentComposite<C>
org.refcodes.component.AbstractComponentComposite.ExtendedCompositeComponentImpl<C,CTX,CON>
- Type Parameters:
C
- The type of theComponent
supported by theAbstractComponentComposite.ExtendedCompositeComponentImpl
.CTX
- the generic typeCON
- the generic type
- All Implemented Interfaces:
Flushable
,Closable
,ComponentComposite
,ComponentComposite.ExtendedComponentComposite<CTX,
,CON> Configurable<CTX>
,ConfigurableLifecycleComponent<CTX>
,ConnectionComponent<CON>
,ConnectionOpenable<CON>
,Decomposable
,Destroyable
,Flushable
,Initializable
,LifecycleComponent
,LinkComponent
,Openable
,Pausable
,Resumable
,Startable
,Stoppable
,org.refcodes.mixin.Disposable
,org.refcodes.mixin.Resetable
- Enclosing class:
- AbstractComponentComposite<C extends Component>
public static class AbstractComponentComposite.ExtendedCompositeComponentImpl<C extends Component,CTX,CON>
extends AbstractComponentComposite<C>
implements ComponentComposite.ExtendedComponentComposite<CTX,CON>
The
AbstractComponentComposite.ExtendedCompositeComponentImpl
is an implementation of the
ComponentComposite.ExtendedComponentComposite
. To make sure that the state change
requests you require are supported by the managed Component
instances, specify the according type C
as generic type
argument.-
Nested Class Summary
Nested classes/interfaces inherited from class org.refcodes.component.AbstractComponentComposite
AbstractComponentComposite.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.ComponentComposite
ComponentComposite.ExtendedComponentComposite<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.Decomposable
Decomposable.DecomposeAutomaton
Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable
Destroyable.DestroyAutomaton
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
ConstructorDescriptionExtendedCompositeComponentImpl
(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
Modifier and TypeMethodDescriptionvoid
initialize
(CTX aContext) Initializes and configures the component.void
Opens the component with the given connection.Methods inherited from class org.refcodes.component.AbstractComponentComposite
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.Decomposable
decompose
Methods inherited from interface org.refcodes.component.Destroyable
destroy
Methods inherited from interface org.refcodes.mixin.Disposable
dispose
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.mixin.Resetable
reset
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 Details
-
ExtendedCompositeComponentImpl
Instantiates a new extended composite component impl.- Parameters:
aComponents
- the components
-
ExtendedCompositeComponentImpl
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 Details
-
initialize
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
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.
-