MetaDone
metadone.client.grasyla2.base.GrasylaComponent< C > Class Reference
Inheritance diagram for metadone.client.grasyla2.base.GrasylaComponent< C >:
Collaboration diagram for metadone.client.grasyla2.base.GrasylaComponent< C >:

List of all members.

Public Member Functions

 GrasylaComponent (Engine engine, Class< C > type, List<?extends C > components)
 GrasylaComponent (Engine engine, Class< C > type, List<?extends C > components, Object indicator)
Class< C > getType ()
Object getIndicator ()
List< C > getComponent ()
boolean isEmpty ()
Multiplicity getMultiplicity ()
Engine getEngine ()
final boolean isActive ()
boolean isReductible ()
reduceComponent () throws Component.IrreductibleException
Iterator< C > iterator ()
final boolean equals (Object obj)
final int hashCode ()
String toString ()

Static Public Member Functions

static final< C >
GrasylaComponent< C > 
buildCast (Engine engine, Class< C > cl, Object component)
static< C > GrasylaComponent< C > build (Engine engine, Class< C > cl)
static< C > GrasylaComponent< C > build (Engine engine, Class< C > cl, C component)
static< C > GrasylaComponent< C > build (Engine engine, Class< C > cl, List<?extends C > component)
static< C > void addMultiComponent (Class< C > cl, Class<?extends GrasylaComponent< C >> impl)

Static Package Functions

 [static initializer]

Private Attributes

final Engine engine
final Class< C > type
final List< C > component
final Object indicator

Static Private Attributes

static Hashtable< Class
<?>, Class<?extends
GrasylaComponent<?> > > 
componentClasses = new Hashtable<Class<?>, Class<? extends GrasylaComponent<?>>>()

Detailed Description

The default implementation of a component.

By default a component is reductible if its multiplicity is SINGLE. Two other components types are registered for reducing lists.

Author:
kma
Parameters:
<C>The type of the elements
See also:
MultiBooleanComponent
MultiTextComponent

Constructor & Destructor Documentation

metadone.client.grasyla2.base.GrasylaComponent< C >.GrasylaComponent ( Engine  engine,
Class< C >  type,
List<?extends C >  components 
)

Initializes this component.

Parameters:
engineThe engine
typeThe type
componentsThe component list
metadone.client.grasyla2.base.GrasylaComponent< C >.GrasylaComponent ( Engine  engine,
Class< C >  type,
List<?extends C >  components,
Object  indicator 
)

Initializes this component.

Parameters:
engineThe engine
typeThe type
componentsThe component list
indicatorThe indicator or null

Member Function Documentation

metadone.client.grasyla2.base.GrasylaComponent< C >.[static initializer] ( ) [static, package]
static <C> void metadone.client.grasyla2.base.GrasylaComponent< C >.addMultiComponent ( Class< C >  cl,
Class<?extends GrasylaComponent< C >>  impl 
) [static]

Register a class for building reductible components.

Parameters:
<C>The type
clThe class
implThe implementation class
static <C> GrasylaComponent<C> metadone.client.grasyla2.base.GrasylaComponent< C >.build ( Engine  engine,
Class< C >  cl,
List<?extends C >  component 
) [static]

Builds a new component.

Parameters:
<C>The type
engineThe engine
clThe class
componentThe list of component objects
Returns:
A component with the given objects
static <C> GrasylaComponent<C> metadone.client.grasyla2.base.GrasylaComponent< C >.build ( Engine  engine,
Class< C >  cl 
) [static]

Builds a new empty component.

Parameters:
<C>The type
engineThe engine
clThe class
Returns:
An empty component
static <C> GrasylaComponent<C> metadone.client.grasyla2.base.GrasylaComponent< C >.build ( Engine  engine,
Class< C >  cl,
component 
) [static]

Builds a new component.

Parameters:
<C>The type
engineThe engine
clThe class
componentThe component object
Returns:
A component with the given object
static final<C> GrasylaComponent<C> metadone.client.grasyla2.base.GrasylaComponent< C >.buildCast ( Engine  engine,
Class< C >  cl,
Object  component 
) [static]

Builds a new component.

Parameters:
<C>The type
engineThe engine
clThe class
componentThe component object
Returns:
A component with the given object
final boolean metadone.client.grasyla2.base.GrasylaComponent< C >.equals ( Object  obj)
List<C> metadone.client.grasyla2.base.GrasylaComponent< C >.getComponent ( )
Engine metadone.client.grasyla2.base.GrasylaComponent< C >.getEngine ( )
Object metadone.client.grasyla2.base.GrasylaComponent< C >.getIndicator ( )
Multiplicity metadone.client.grasyla2.base.GrasylaComponent< C >.getMultiplicity ( )
Class<C> metadone.client.grasyla2.base.GrasylaComponent< C >.getType ( )
final int metadone.client.grasyla2.base.GrasylaComponent< C >.hashCode ( )
final boolean metadone.client.grasyla2.base.GrasylaComponent< C >.isActive ( )
boolean metadone.client.grasyla2.base.GrasylaComponent< C >.isEmpty ( )
boolean metadone.client.grasyla2.base.GrasylaComponent< C >.isReductible ( )
Iterator<C> metadone.client.grasyla2.base.GrasylaComponent< C >.iterator ( )
C metadone.client.grasyla2.base.GrasylaComponent< C >.reduceComponent ( ) throws Component.IrreductibleException
String metadone.client.grasyla2.base.GrasylaComponent< C >.toString ( )

Member Data Documentation

final List<C> metadone.client.grasyla2.base.GrasylaComponent< C >.component [private]
Hashtable<Class<?>, Class<? extends GrasylaComponent<?> > > metadone.client.grasyla2.base.GrasylaComponent< C >.componentClasses = new Hashtable<Class<?>, Class<? extends GrasylaComponent<?>>>() [static, private]
final Engine metadone.client.grasyla2.base.GrasylaComponent< C >.engine [private]
final Object metadone.client.grasyla2.base.GrasylaComponent< C >.indicator [private]
final Class<C> metadone.client.grasyla2.base.GrasylaComponent< C >.type [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations