org.qi4j.bootstrap.builder

## Class ModuleDeclaration

- java.lang.Object
- - org.qi4j.bootstrap.builder.ModuleDeclaration

-     public class ModuleDeclaration
      extends Object

  Provides declared `Module` information that the `ApplicationBuilder` can use.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ModuleDeclaration(String moduleName)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ModuleDeclaration` | `withAssembler(Assembler assembler)` Declare Assembler.
    `ModuleDeclaration` | `withAssembler(Class<?> assemblerClass)` Declare Assembler.
    `ModuleDeclaration` | `withAssembler(String classname)` Declare Assembler.
    `ModuleDeclaration` | `withAssemblers(Iterable<Class<?>> assemblerClasses)` Declare Assemblers.

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

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

- - ### Constructor Detail

    - #### ModuleDeclaration

          public ModuleDeclaration(String moduleName)

  - ### Method Detail

    - #### withAssembler

          public ModuleDeclaration withAssembler(Assembler assembler)

      Declare Assembler.
      Parameters:
        `assembler` - Assembler instance
      Returns:
        This Module declaration

    - #### withAssembler

          public ModuleDeclaration withAssembler(String classname)
                                          throws AssemblyException

      Declare Assembler.
      Parameters:
        `classname` - Assembler class name
      Returns:
        This Module declaration
      Throws:
        `AssemblyException` - if unable to load class, not an Assembler or unable to instanciate

    - #### withAssembler

          public ModuleDeclaration withAssembler(Class<?> assemblerClass)
                                          throws AssemblyException

      Declare Assembler.
      Parameters:
        `assemblerClass` - Assembler class
      Returns:
        This Module declaration
      Throws:
        `AssemblyException` - not an Assembler or if unable to instanciate

    - #### withAssemblers

          public ModuleDeclaration withAssemblers(Iterable<Class<?>> assemblerClasses)
                                           throws AssemblyException

      Declare Assemblers.

      Declare several Assemblers from an Iterable of Class objects.

      Typically used along `ClassScanner`.

      Parameters:
        `assemblerClasses` - Assembler classes
      Returns:
        This Module declaration
      Throws:
        `AssemblyException` - if one of the Class is not an Assembler or unable to instanciate