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 theComponentsupported 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.DecomposeAutomatonNested classes/interfaces inherited from interface org.refcodes.component.Destroyable
Destroyable.DestroyAutomatonNested 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.UncheckedInitializableNested classes/interfaces inherited from interface org.refcodes.component.LifecycleComponent
LifecycleComponent.LifecycleAutomaton, LifecycleComponent.UncheckedLifecycleComponentNested 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.UncheckedPausableNested classes/interfaces inherited from interface org.refcodes.component.Resumable
Resumable.ResumeAutomaton, Resumable.ResumeBuilder<B extends Resumable.ResumeBuilder<B>>, Resumable.UncheckedResumableNested classes/interfaces inherited from interface org.refcodes.component.Startable
Startable.StartAutomaton, Startable.StartBuilder<B extends Startable.StartBuilder<B>>, Startable.UncheckedStartableNested classes/interfaces inherited from interface org.refcodes.component.Stoppable
Stoppable.StopAutomaton, Stoppable.StopBuilder<B extends Stoppable.StopBuilder<B>>, Stoppable.UncheckedStoppable -
Constructor Summary
ConstructorsConstructorDescriptionExtendedCompositeComponentImpl(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 TypeMethodDescriptionvoidinitialize(CTX aContext) Initializes and configures the component.voidOpens 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, stopMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.refcodes.component.Closable
close, closeIn, closeQuietly, closeUncheckedMethods inherited from interface org.refcodes.component.Configurable
initializeUncheckedMethods inherited from interface org.refcodes.component.ConnectionOpenable
openUncheckedMethods inherited from interface org.refcodes.component.Decomposable
decomposeMethods inherited from interface org.refcodes.component.Destroyable
destroyMethods inherited from interface org.refcodes.mixin.Disposable
disposeMethods inherited from interface org.refcodes.component.Flushable
flush, flushUnchecked, isFlushableMethods inherited from interface org.refcodes.component.Initializable
initialize, initializeUncheckedMethods inherited from interface org.refcodes.component.Openable
open, openUncheckedMethods inherited from interface org.refcodes.component.Pausable
pause, pauseUncheckedMethods inherited from interface org.refcodes.mixin.Resetable
resetMethods inherited from interface org.refcodes.component.Resumable
resume, resumeUncheckedMethods inherited from interface org.refcodes.component.Startable
start, startUncheckedMethods 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:
initializein 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:
openin 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.
-