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 the Component supported by the AbstractComponentComposite.ExtendedCompositeComponentImpl.
CTX - the generic type
CON - 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.
  • Constructor Details

    • 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 strategy
      aComponents - the components
    • ExtendedCompositeComponentImpl

      public ExtendedCompositeComponentImpl(org.refcodes.controlflow.ExecutionStrategy aStrategy, Collection<C> aComponents)
      Instantiates a new extended composite component impl.
      Parameters:
      aStrategy - the strategy
      aComponents - the components
  • Method Details

    • initialize

      public void initialize(CTX aContext) throws ConfigureException
      Initializes and configures the component.
      Specified by:
      initialize in interface Configurable<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 interface ConnectionOpenable<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.