org.qi4j.library.sql.assembly

## Class AbstractPooledDataSourceServiceAssembler<AssemblerType>

- java.lang.Object
- - org.qi4j.bootstrap.Assemblers.VisibilityIdentityConfig<AssemblerType>
  - - org.qi4j.library.sql.assembly.AbstractPooledDataSourceServiceAssembler<AssemblerType>

- All Implemented Interfaces:
    Assembler, Assemblers.Configurable<AssemblerType>, Assemblers.Identifiable<AssemblerType>, Assemblers.Visible<AssemblerType>
  Direct Known Subclasses:
    BoneCPDataSourceServiceAssembler, DBCPDataSourceServiceAssembler

      public abstract class AbstractPooledDataSourceServiceAssembler<AssemblerType>
      extends Assemblers.VisibilityIdentityConfig<AssemblerType>

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static String` | `DEFAULT_DATASOURCE_SERVICE_IDENTITY`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractPooledDataSourceServiceAssembler()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `assemble(ModuleAssembly module)` Assemblers receive a callback to the ModuleAssembly they are supposed to configure.
    `protected abstract void` | `onAssemble(ModuleAssembly module, String identity, Visibility visibility)`

    - ### Methods inherited from class org.qi4j.bootstrap.Assemblers.VisibilityIdentityConfig

      `configModule, configVisibility, hasConfig, hasIdentity, identifiedBy, identity, visibility, visibleIn, withConfig`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DEFAULT_DATASOURCE_SERVICE_IDENTITY

          public static String DEFAULT_DATASOURCE_SERVICE_IDENTITY

  - ### Constructor Detail

    - #### AbstractPooledDataSourceServiceAssembler

          public AbstractPooledDataSourceServiceAssembler()

  - ### Method Detail

    - #### assemble

          public final void assemble(ModuleAssembly module)
                              throws AssemblyException

      Description copied from interface: `Assembler`
      Assemblers receive a callback to the ModuleAssembly they are supposed to configure. They can use this to register objects, composites, services etc. and the additional metadata that may exist for these artifacts.

      An Assembler may create new Modules by calling `ModuleAssembly.layer()` and then `LayerAssembly.module(String)` (String)}. This allows an Assembler to bootstrap an entire Layer with more Modules.

      Parameters:
        `module` - the Module to assemble
      Throws:
        `AssemblyException` - thrown if the assembler tries to do something illegal

    - #### onAssemble

          protected abstract void onAssemble(ModuleAssembly module,
                        String identity,
                        Visibility visibility)