org.qi4j.bootstrap
Interface EntityDeclaration


public interface EntityDeclaration

Fluent API for declaring entities. Instances of this API are acquired by calling ModuleAssembly.entities(Class[]).


Method Summary
 EntityDeclaration setMetaInfo(java.lang.Object info)
          Set additional metainfo for this entity declaration.
 EntityDeclaration visibleIn(Visibility visibility)
          Set visibility for declared entities.
 EntityDeclaration withConcerns(java.lang.Class<?>... concerns)
          Declare additional concerns for these entities.
 EntityDeclaration withMixins(java.lang.Class<?>... mixins)
          Declare additional mixins for these entities.
 EntityDeclaration withSideEffects(java.lang.Class<?>... sideEffects)
          Declare additional side-effects for these entitites.
 EntityDeclaration withTypes(java.lang.Class<?>... types)
          Declare additional interfaces for these declared interfaces.
 

Method Detail

setMetaInfo

EntityDeclaration setMetaInfo(java.lang.Object info)
Set additional metainfo for this entity declaration.

Parameters:
info - metainfo that can be retrieved from the EntityDescriptor.
Returns:
This instance for a fluid DSL

visibleIn

EntityDeclaration visibleIn(Visibility visibility)
Set visibility for declared entities.

Parameters:
visibility - The Visibility that this EntityComposite will have.
Returns:
This instance for a fluid DSL

withConcerns

EntityDeclaration withConcerns(java.lang.Class<?>... concerns)
Declare additional concerns for these entities.

Parameters:
concerns - The concerns that are to be added to the EntityComposite beyond the statically declared ones.
Returns:
This instance for a fluid DSL

withSideEffects

EntityDeclaration withSideEffects(java.lang.Class<?>... sideEffects)
Declare additional side-effects for these entitites.

Parameters:
sideEffects - The sideeffects that are to be added to the EntityComposite beyond the statically declared ones.
Returns:
This instance for a fluid DSL

withMixins

EntityDeclaration withMixins(java.lang.Class<?>... mixins)
Declare additional mixins for these entities.

This can be useful to override any default mixins from the entity interface.

Parameters:
mixins - The mixins that are to be added to the EntityComposite beyond the statically declared ones.
Returns:
This instance for a fluid DSL

withTypes

EntityDeclaration withTypes(java.lang.Class<?>... types)
Declare additional interfaces for these declared interfaces.

This can be useful to add types that the entities should implement, but which you do not want to include in the entity interface itself.

Parameters:
types - list of interfaces to add
Returns:
This instance for a fluid DSL