- All Superinterfaces:
Closable
,Decomposable
,Destroyable
,org.refcodes.mixin.Disposable
,Flushable
,Flushable
,Initializable
,LifecycleComponent
,LinkComponent
,Openable
,Pausable
,org.refcodes.mixin.Resetable
,Resumable
,Startable
,Stoppable
- All Known Subinterfaces:
ComponentComposite.ExtendedComponentComposite<CTX,
CON>
- All Known Implementing Classes:
AbstractComponentComposite
,AbstractComponentComposite.ExtendedCompositeComponentImpl
ComponentComposite
interface so that any therein contained
Component
instances' state change methods are supported by the
ComponentComposite
as well and forwarded to the Component
contained in the ComponentComposite
instance.
For implementing sequential, threaded or threaded joined invocation of the
therein contained Component
instances' state change methods (as of
the ExecutionStrategy
), you may use the ComponentUtility
,
e.g. ComponentUtility.start(ExecutionStrategy, java.util.Collection)
)
or in more seldom cases the ComponentComposite
.
A ComponentComposite
manages a set of Component
instances by
forwarding the state change requests to the contained elements in case them
elements support the according state change method. In case such a state
change is not supported by an therein contained element, then the element is
just ignored for that state change request.
In case of exceptional state, depending on the used ExecutionStrategy
, either no exception is thrown or the one thrown by the first erroneous
Component
.
The ComponentComposite
supports these interfaces for the according
state change requests, depending on the therein contained Component
's
and them implemented interfaces, the according methods are delegated to all
implementing Component
s:
Initializable
Startable
Pausable
Resumable
Stoppable
Destroyable
Decomposable
Flushable
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
TheComponentComposite.ExtendedComponentComposite
provides extended functionality to theComponentComposite
's functionality by including extendedOpenable
functionality (ConnectionOpenable
) and extendsInitializable
functionality (Configurable
).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.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
-
Method Summary
Methods inherited from interface org.refcodes.component.Closable
close, closeIn, closeQuietly, closeUnchecked
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