org.qi4j.bootstrap
Interface LayerAssembly


public interface LayerAssembly

Fluid API for declaring a layer in an application. This is obtained by calling ApplicationAssembly.layer(String).


Method Summary
 ApplicationAssembly application()
           
 EntityDeclaration entities(Specification<? super EntityAssembly> specification)
          Given a Specification for EntityAssembly's, returns a EntityDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
 ImportedServiceDeclaration importedServices(Specification<? super ImportedServiceAssembly> specification)
          Given a Specification for ImportedServiceAssembly's, returns a ImportedServiceDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
 ModuleAssembly module(String name)
          Get an assembly for a particular Module.
 String name()
           
 ObjectDeclaration objects(Specification<? super ObjectAssembly> specification)
          Given a Specification for ObjectAssembly's, returns a ObjectDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
 ServiceDeclaration services(Specification<? super ServiceAssembly> specification)
          Given a Specification for ServiceAssembly's, returns a ServiceDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
 LayerAssembly setMetaInfo(Object info)
           
 LayerAssembly setName(String name)
           
 TransientDeclaration transients(Specification<? super TransientAssembly> specification)
          Given a Specification for TransientAssembly's, returns a TransientDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
 LayerAssembly uses(LayerAssembly... layerAssembly)
           
 ValueDeclaration values(Specification<? super ValueAssembly> specification)
          Given a Specification for ValueAssembly's, returns a ValueDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.
<ThrowableType extends Throwable>
void
visit(AssemblyVisitor<ThrowableType> visitor)
           
 

Method Detail

module

ModuleAssembly module(String name)
Get an assembly for a particular Module. If this is called many times with the same name, then the same module is affected.

Parameters:
name -
Returns:

application

ApplicationAssembly application()

name

String name()

setName

LayerAssembly setName(String name)

setMetaInfo

LayerAssembly setMetaInfo(Object info)

uses

LayerAssembly uses(LayerAssembly... layerAssembly)

visit

<ThrowableType extends Throwable> void visit(AssemblyVisitor<ThrowableType> visitor)
           throws ThrowableType extends Throwable
Throws:
ThrowableType extends Throwable

entities

EntityDeclaration entities(Specification<? super EntityAssembly> specification)
Given a Specification for EntityAssembly's, returns a EntityDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns:

services

ServiceDeclaration services(Specification<? super ServiceAssembly> specification)
Given a Specification for ServiceAssembly's, returns a ServiceDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns:

transients

TransientDeclaration transients(Specification<? super TransientAssembly> specification)
Given a Specification for TransientAssembly's, returns a TransientDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns:

values

ValueDeclaration values(Specification<? super ValueAssembly> specification)
Given a Specification for ValueAssembly's, returns a ValueDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns:

objects

ObjectDeclaration objects(Specification<? super ObjectAssembly> specification)
Given a Specification for ObjectAssembly's, returns a ObjectDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns:

importedServices

ImportedServiceDeclaration importedServices(Specification<? super ImportedServiceAssembly> specification)
Given a Specification for ImportedServiceAssembly's, returns a ImportedServiceDeclaration that can be used to work with all of the assemblies in this Layer matched by the specification.

Parameters:
specification -
Returns: