org.apache.struts.action

Class DynaActionFormClass

Implemented Interfaces:
DynaClass, Serializable

public class DynaActionFormClass
extends java.lang.Object
implements DynaClass, Serializable

Implementation of DynaClass for DynaActionForm classes that allow developers to define ActionForms without having to individually code all of the classes. NOTE - This class is only used in the internal implementation of dynamic action form beans. Application developers never need to consult this documentation.
Version:
$Rev: 54929 $ $Date: 2004-10-16 17:38:42 +0100 (Sat, 16 Oct 2004) $
Since:
Struts 1.1

Field Summary

protected Class
beanClass
The DynaActionForm implementation Class which we will use to create new bean instances.
protected FormBeanConfig
config
The form bean configuration information for this class.
protected String
name
The "dynamic class name" for this DynaClass.
protected DynaProperty[]
properties
The set of dynamic properties that are part of this DynaClass.
protected HashMap
propertiesMap
The set of dynamic properties that are part of this DynaClass, keyed by the property name.

Constructor Summary

DynaActionFormClass(FormBeanConfig config)
Construct a new DynaActionFormClass for the specified form bean configuration.

Method Summary

static void
clear()
Deprecated. No longer need to Clear our cache of DynaActionFormClass instances.
static DynaActionFormClass
createDynaActionFormClass(FormBeanConfig config)
Return the DynaActionFormClass instance for the specified form bean configuration instance.
protected Class
getBeanClass()
Return the implementation class we are using to construct new instances, re-introspecting our FormBeanConfig if necessary (that is, after being deserialized, since beanClass is marked transient).
DynaProperty[]
getDynaProperties()
Return an array of DynaPropertys for the properties currently defined in this DynaClass.
DynaProperty
getDynaProperty(String name)
Return a property descriptor for the specified property, if it exists; otherwise, return null.
String
getName()
Return the name of this DynaClass (analogous to the getName() method of java.lang.ClassDynaClass implementation class to support different dynamic classes, with different sets of properties.
protected void
introspect(FormBeanConfig config)
Introspect our form bean configuration to identify the supported properties.
DynaBean
newInstance()
Instantiate and return a new DynaActionForm instance, associated with this DynaActionFormClass.
String
toString()
Render a String representation of this object.

Field Details

beanClass

protected Class beanClass
The DynaActionForm implementation Class which we will use to create new bean instances.

config

protected FormBeanConfig config
The form bean configuration information for this class.

name

protected String name
The "dynamic class name" for this DynaClass.

properties

protected DynaProperty[] properties
The set of dynamic properties that are part of this DynaClass.

propertiesMap

protected HashMap propertiesMap
The set of dynamic properties that are part of this DynaClass, keyed by the property name. Individual descriptor instances will be the same instances as those in the properties list.

Constructor Details

DynaActionFormClass

public DynaActionFormClass(FormBeanConfig config)
Construct a new DynaActionFormClass for the specified form bean configuration. This constructor is private; DynaActionFormClass instances will be created as needed via calls to the static createDynaActionFormClass() method.
Parameters:
config - The FormBeanConfig instance describing the properties of the bean to be created

Method Details

clear

public static void clear()

Deprecated. No longer need to Clear our cache of DynaActionFormClass instances.


createDynaActionFormClass

public static DynaActionFormClass createDynaActionFormClass(FormBeanConfig config)
Return the DynaActionFormClass instance for the specified form bean configuration instance.

getBeanClass

protected Class getBeanClass()
Return the implementation class we are using to construct new instances, re-introspecting our FormBeanConfig if necessary (that is, after being deserialized, since beanClass is marked transient).

getDynaProperties

public DynaProperty[] getDynaProperties()
Return an array of DynaPropertys for the properties currently defined in this DynaClass. If no properties are defined, a zero-length array will be returned.

getDynaProperty

public DynaProperty getDynaProperty(String name)
Return a property descriptor for the specified property, if it exists; otherwise, return null.
Parameters:
name - Name of the dynamic property for which a descriptor is requested

getName

public String getName()
Return the name of this DynaClass (analogous to the getName() method of java.lang.ClassDynaClass implementation class to support different dynamic classes, with different sets of properties.

introspect

protected void introspect(FormBeanConfig config)
Introspect our form bean configuration to identify the supported properties.
Parameters:
config - The FormBeanConfig instance describing the properties of the bean to be created

newInstance

public DynaBean newInstance()
            throws IllegalAccessException,
                   InstantiationException
Instantiate and return a new DynaActionForm instance, associated with this DynaActionFormClass. The properties of the returned DynaActionForm will have been initialized to the default values specified in the form bean configuration information.

toString

public String toString()
Render a String representation of this object.

Copyright B) 2000-2007 - The Apache Software Foundation