java.lang.Object
org.refcodes.tabular.RecordsComposite<T>
- Type Parameters:
T- The type managed by theRecords.
- All Implemented Interfaces:
Flushable,Iterable<Record<T>>,Iterator<Record<T>>,org.refcodes.component.Closable,org.refcodes.component.ComponentComposite,org.refcodes.component.Decomposeable,org.refcodes.component.Destroyable,org.refcodes.component.Flushable,org.refcodes.component.Initializable,org.refcodes.component.LifecycleComponent,org.refcodes.component.LinkComponent,org.refcodes.component.Openable,org.refcodes.component.Pausable,org.refcodes.component.Resumable,org.refcodes.component.Startable,org.refcodes.component.Stoppable,org.refcodes.mixin.Disposable,org.refcodes.mixin.Resetable,Records<T>
public class RecordsComposite<T>
extends Object
implements Records<T>, org.refcodes.component.ComponentComposite
Implementation of the
Records interface wrapping multiple
Records instances. The RecordsComposite makes use of a flavor
of the composite pattern.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.refcodes.component.Closable
org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>Nested classes/interfaces inherited from interface org.refcodes.component.ComponentComposite
org.refcodes.component.ComponentComposite.ExtendedComponentComposite<CTX extends Object,CON extends Object> Nested classes/interfaces inherited from interface org.refcodes.component.Decomposeable
org.refcodes.component.Decomposeable.DecomposeAutomatonNested classes/interfaces inherited from interface org.refcodes.component.Destroyable
org.refcodes.component.Destroyable.DestroyAutomatonNested classes/interfaces inherited from interface org.refcodes.component.Flushable
org.refcodes.component.Flushable.FlushBuilder<B extends org.refcodes.component.Flushable.FlushBuilder<B>>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.UncheckedInitializableNested classes/interfaces inherited from interface org.refcodes.component.LifecycleComponent
org.refcodes.component.LifecycleComponent.LifecycleAutomaton, org.refcodes.component.LifecycleComponent.UncheckedLifecycleComponentNested classes/interfaces inherited from interface org.refcodes.component.LinkComponent
org.refcodes.component.LinkComponent.LinkAutomaton, org.refcodes.component.LinkComponent.LinkComponentBuilder<B extends org.refcodes.component.LinkComponent.LinkComponentBuilder<B>>Nested classes/interfaces inherited from interface org.refcodes.component.Openable
org.refcodes.component.Openable.OpenAutomaton, org.refcodes.component.Openable.OpenBuilder<B extends org.refcodes.component.Openable.OpenBuilder<B>>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.UncheckedPausableNested 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.UncheckedResumableNested 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.UncheckedStartableNested 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 -
Constructor Summary
ConstructorsConstructorDescriptionRecordsComposite(org.refcodes.controlflow.ExecutionStrategy aComponentExecutionStrategy, org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Collection<Records<T>> aRecords) RecordsComposite(org.refcodes.controlflow.ExecutionStrategy aComponentExecutionStrategy, org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Records<T>... aRecords) RecordsComposite(org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Collection<Records<T>> aRecords) RecordsComposite(org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Records<T>... aRecords) -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.refcodes.component.Closable
closeIn, closeQuietly, closeUncheckedMethods inherited from interface org.refcodes.component.Flushable
flushUnchecked, isFlushableMethods inherited from interface org.refcodes.component.Initializable
initializeUncheckedMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface java.util.Iterator
forEachRemainingMethods inherited from interface org.refcodes.component.Openable
openUncheckedMethods inherited from interface org.refcodes.component.Pausable
pauseUncheckedMethods inherited from interface org.refcodes.component.Resumable
resumeUncheckedMethods inherited from interface org.refcodes.component.Startable
startUncheckedMethods inherited from interface org.refcodes.component.Stoppable
stopUnchecked
-
Constructor Details
-
RecordsComposite
@SafeVarargs public RecordsComposite(org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Records<T>... aRecords) -
RecordsComposite
@SafeVarargs public RecordsComposite(org.refcodes.controlflow.ExecutionStrategy aComponentExecutionStrategy, org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Records<T>... aRecords) - Parameters:
aComponentExecutionStrategy- The strategy on how to invoke the state change requests (as of theComponentComposite) defined methods) on the herein containedComponentinstances. CAUTION: The strategy does not affect on how thenext()methods of the herein contained instances are invoked.aRecordServeStrategy- The strategy to be used for serving theRecordinstances.aRecords- TheRecordsinstances from which to serve theRecordinstances.
-
RecordsComposite
public RecordsComposite(org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Collection<Records<T>> aRecords) -
RecordsComposite
public RecordsComposite(org.refcodes.controlflow.ExecutionStrategy aComponentExecutionStrategy, org.refcodes.controlflow.InvocationStrategy aRecordServeStrategy, Collection<Records<T>> aRecords) - Parameters:
aComponentExecutionStrategy- The strategy on how to invoke the state change requests (as of theComponentComposite) defined methods) on the herein containedComponentinstances. CAUTION: The strategy does not affect on how thenext()methods of the herein contained instances are invoked.aRecordServeStrategy- The strategy to be used for serving theRecordinstances.aRecords- TheRecordsinstances from which to serve theRecordinstances.
-
-
Method Details
-
hasNext
public boolean hasNext() -
next
-
remove
public void remove() -
initialize
public void initialize() throws org.refcodes.component.InitializeException- Specified by:
initializein interfaceorg.refcodes.component.Initializable- Throws:
org.refcodes.component.InitializeException
-
start
public void start() throws org.refcodes.component.StartException- Specified by:
startin interfaceorg.refcodes.component.Startable- Throws:
org.refcodes.component.StartException
-
pause
public void pause() throws org.refcodes.component.PauseException- Specified by:
pausein interfaceorg.refcodes.component.Pausable- Throws:
org.refcodes.component.PauseException
-
resume
public void resume() throws org.refcodes.component.ResumeException- Specified by:
resumein interfaceorg.refcodes.component.Resumable- Throws:
org.refcodes.component.ResumeException
-
stop
public void stop() throws org.refcodes.component.StopException- Specified by:
stopin interfaceorg.refcodes.component.Stoppable- Throws:
org.refcodes.component.StopException
-
decompose
public void decompose()- Specified by:
decomposein interfaceorg.refcodes.component.Decomposeable
-
flush
- Specified by:
flushin interfaceFlushable- Specified by:
flushin interfaceorg.refcodes.component.Flushable- Throws:
IOException
-
destroy
public void destroy()- Specified by:
destroyin interfaceorg.refcodes.component.Destroyable
-
reset
public void reset()- Specified by:
resetin interfaceorg.refcodes.mixin.Resetable
-
open
- Specified by:
openin interfaceorg.refcodes.component.Openable- Throws:
IOException
-
close
public void close()- Specified by:
closein interfaceorg.refcodes.component.Closable
-
dispose
public void dispose()- Specified by:
disposein interfaceorg.refcodes.mixin.Disposable
-