org.apache.tapestry5.model
Interface MutableComponentModel

All Superinterfaces:
ComponentModel
All Known Implementing Classes:
MutableComponentModelImpl

public interface MutableComponentModel
extends ComponentModel

Mutable version of ComponentModel used during the transformation phase.


Method Summary
 MutableEmbeddedComponentModel addEmbeddedComponent(String id, String type, String componentClassName, boolean inheritInformalParameters, Location location)
          Defines a new embedded component.
 void addEventHandler(String eventType)
          Identifies that the component includes an event handler for the indicated event type.
 void addMixinClassName(String mixinClassName, String... order)
          Adds a mixin to the component's implementation, optionally specifying ordering constraints, as per OrderedConfiguration.
 void addParameter(String name, boolean required, boolean allowNull, String defaultBindingPrefix)
          Deprecated. Use addParameter(String, boolean, boolean, String, boolean) instead.
 void addParameter(String name, boolean required, boolean allowNull, String defaultBindingPrefix, boolean cached)
          Adds a new formal parameter to the model.
 void addRenderPhase(Class renderPhase)
          Identifies that the component does handle the render phase.
 void enableSupportsInformalParameters()
          Sets the internal flag to indicate that this model (and all models that extend from it) support informal parameters.
 String setFieldPersistenceStrategy(String fieldName, String strategy)
          Used to define the field persistence strategy for a particular field name.
 void setMeta(String key, String value)
          Stores a meta data value under the indicated key.
 void setMixinAfter(boolean mixinAfter)
          Changes the value of the mixinAfter flag.
 
Methods inherited from interface org.apache.tapestry5.model.ComponentModel
getBaseResource, getComponentClassName, getDeclaredParameterNames, getEmbeddedComponentIds, getEmbeddedComponentModel, getFieldPersistenceStrategy, getHandledRenderPhases, getLogger, getMeta, getMixinClassNames, getOrderForMixin, getParameterModel, getParameterNames, getParentModel, getPersistentFieldNames, getSupportsInformalParameters, handlesEvent, isFormalParameter, isMixinAfter, isPage, isRootClass
 

Method Detail

addParameter

void addParameter(String name,
                  boolean required,
                  boolean allowNull,
                  String defaultBindingPrefix)
Deprecated. Use addParameter(String, boolean, boolean, String, boolean) instead.

Adds a new formal parameter to the model. Each parameter has a unique name (though access to parameters is case insensitive).

Parameters:
name - new, unique name for the parameter
required - if true, the parameter must be bound
allowNull - if true, then parameter may be bound to null, if false a null check will be added
defaultBindingPrefix - the default binding prefix for this parameter @throws IllegalArgumentException if a parameter with the given name has already been defined for this model
See Also:
Parameter

addParameter

void addParameter(String name,
                  boolean required,
                  boolean allowNull,
                  String defaultBindingPrefix,
                  boolean cached)
Adds a new formal parameter to the model. Each parameter has a unique name (though access to parameters is case insensitive).

Parameters:
name - new, unique name for the parameter
required - if true, the parameter must be bound
allowNull - if true, then parameter may be bound to null, if false a null check will be added
defaultBindingPrefix - the default binding prefix for this parameter @throws IllegalArgumentException if a parameter with the given name has already been defined for this model
cached - if true, the parameter value should be cached within the component during rendering
Since:
5.2.0.0
See Also:
Parameter

addEmbeddedComponent

MutableEmbeddedComponentModel addEmbeddedComponent(String id,
                                                   String type,
                                                   String componentClassName,
                                                   boolean inheritInformalParameters,
                                                   Location location)
Defines a new embedded component.

Parameters:
id - the unique id for the embedded component, which must not already exist.
type - the type of the component (posslibly blank)
componentClassName - the fully qualified class name (derived from the field), used if the type is blank
inheritInformalParameters - if true, then the component will inherit informal parameters provided to its container
location - where the component is defined @return a mutable model allowing parameters to be set

setFieldPersistenceStrategy

String setFieldPersistenceStrategy(String fieldName,
                                   String strategy)
Used to define the field persistence strategy for a particular field name. Returns a logical name for the field, which is guaranteed to be unique (this is necessary for handling the case where a subclass has a persistent field with the same name as a persistent field from a super-class).

Parameters:
fieldName - the name of the field which is to be made persistent
strategy - the strategy for persisting the field, from Persist.value(). This value may be blank, in which case the stategy is inherited from the component, or the component's container.
Returns:
a logical name for the field, to be used with ComponentModel.getFieldPersistenceStrategy(String), and with InternalComponentResources.persistFieldChange(String, Object), etc.

addMixinClassName

void addMixinClassName(String mixinClassName,
                       String... order)
Adds a mixin to the component's implementation, optionally specifying ordering constraints, as per OrderedConfiguration.

Since:
5.2.0.0

enableSupportsInformalParameters

void enableSupportsInformalParameters()
Sets the internal flag to indicate that this model (and all models that extend from it) support informal parameters.


setMixinAfter

void setMixinAfter(boolean mixinAfter)
Changes the value of the mixinAfter flag. The default value is false.


setMeta

void setMeta(String key,
             String value)
Stores a meta data value under the indicated key.


addRenderPhase

void addRenderPhase(Class renderPhase)
Identifies that the component does handle the render phase.

Parameters:
renderPhase - annotation class corresponding to the render phase
Since:
5.0.19, 5.1.0.0
See Also:
ComponentModel.getHandledRenderPhases()

addEventHandler

void addEventHandler(String eventType)
Identifies that the component includes an event handler for the indicated event type.

Parameters:
eventType - of handled event
Since:
5.1.0.0


Copyright © 2003-2012 The Apache Software Foundation.