org.apache.struts.config.impl

Class ModuleConfigImpl

Implemented Interfaces:
Serializable, ModuleConfig
Known Direct Subclasses:
ApplicationConfig

public class ModuleConfigImpl
extends java.lang.Object
implements Serializable, ModuleConfig

The collection of static configuration information that describes a Struts-based module. Multiple modules are identified by a prefix at the beginning of the context relative portion of the request URI. If no module prefix can be matched, the default configuration (with a prefix equal to a zero-length string) is selected, which is elegantly backwards compatible with the previous Struts behavior that only supported one module.

Version:
$Revision: 1.5 $ $Date: 2003/02/06 03:32:10 $

Author:
Craig R. McClanahan

Since:
Struts 1.1

Field Summary

protected HashMap
actionConfigs
The set of action configurations for this module, if any, keyed by the path property.
protected String
actionMappingClass
The default class name to be used when creating action mapping instances.
protected boolean
configured
Has this module been completely configured yet.
protected ControllerConfig
controllerConfig
The controller configuration object for this module.
protected HashMap
dataSources
The set of JDBC data source configurations for this module, if any, keyed by the key property.
protected HashMap
exceptions
The set of exception handling configurations for this module, if any, keyed by the type property.
protected HashMap
formBeans
The set of form bean configurations for this module, if any, keyed by the name property.
protected HashMap
forwards
The set of global forward configurations for this module, if any, keyed by the name property.
protected HashMap
messageResources
The set of message resources configurations for this module, if any, keyed by the key property.
protected ArrayList
plugIns
The set of configured plug-in Actions for this module, if any, in the order they were declared and configured.
protected String
prefix
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet.

Constructor Summary

ModuleConfigImpl(String prefix)
Construct an ModuleConfigImpl object according to the specified parameter values.
ModuleConfigImpl(ModuleConfigImpl moduleConfig)
Deprecated. Only used while we are deprecating ApplicationConfig to insure maximum compatability.

Method Summary

void
addActionConfig(ActionConfig config)
Add a new ActionConfig instance to the set associated with this module.
void
addDataSourceConfig(DataSourceConfig config)
Add a new DataSourceConfig instance to the set associated with this module.
void
addExceptionConfig(ExceptionConfig config)
Add a new ExceptionConfig instance to the set associated with this module.
void
addFormBeanConfig(FormBeanConfig config)
Add a new FormBeanConfig instance to the set associated with this module.
void
addForwardConfig(ForwardConfig config)
Add a new ForwardConfig instance to the set of global forwards associated with this module.
void
addMessageResourcesConfig(MessageResourcesConfig config)
Add a new MessageResourcesConfig instance to the set associated with this module.
void
addPlugInConfig(PlugInConfig plugInConfig)
Add a newly configured PlugInConfig instance to the set of plug-in Actions for this module.
ActionConfig
findActionConfig(String path)
Return the action configuration for the specified path, if any; otherwise return null.
ActionConfig[]
findActionConfigs()
Return the action configurations for this module.
DataSourceConfig
findDataSourceConfig(String key)
Return the data source configuration for the specified key, if any; otherwise return null.
DataSourceConfig[]
findDataSourceConfigs()
Return the data source configurations for this module.
ExceptionConfig
findExceptionConfig(String type)
Return the exception configuration for the specified type, if any; otherwise return null.
ExceptionConfig[]
findExceptionConfigs()
Return the exception configurations for this module.
FormBeanConfig
findFormBeanConfig(String name)
Return the form bean configuration for the specified key, if any; otherwise return null.
FormBeanConfig[]
findFormBeanConfigs()
Return the form bean configurations for this module.
ForwardConfig
findForwardConfig(String name)
Return the forward configuration for the specified key, if any; otherwise return null.
ForwardConfig[]
findForwardConfigs()
Return the form bean configurations for this module.
MessageResourcesConfig
findMessageResourcesConfig(String key)
Return the message resources configuration for the specified key, if any; otherwise return null.
MessageResourcesConfig[]
findMessageResourcesConfigs()
Return the message resources configurations for this module.
PlugInConfig[]
findPlugInConfigs()
Return the configured plug-in actions for this module.
void
freeze()
Freeze the configuration of this module.
String
getActionMappingClass()
The default class name to be used when creating action mapping instances.
boolean
getConfigured()
Has this module been completely configured yet.
ControllerConfig
getControllerConfig()
The controller configuration object for this module.
String
getPrefix()
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet.
void
removeActionConfig(ActionConfig config)
Remove the specified action configuration instance.
void
removeDataSourceConfig(DataSourceConfig config)
Remove the specified data source configuration instance.
void
removeExceptionConfig(ExceptionConfig config)
Remove the specified exception configuration instance.
void
removeFormBeanConfig(FormBeanConfig config)
Remove the specified form bean configuration instance.
void
removeForwardConfig(ForwardConfig config)
Remove the specified forward configuration instance.
void
removeMessageResourcesConfig(MessageResourcesConfig config)
Remove the specified message resources configuration instance.
void
setActionMappingClass(String actionMappingClass)
The default class name to be used when creating action mapping instances.
void
setControllerConfig(ControllerConfig cc)
The controller configuration object for this module.
void
setPrefix(String prefix)
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet.

Field Details

actionConfigs

protected HashMap actionConfigs
The set of action configurations for this module, if any, keyed by the path property.


actionMappingClass

protected String actionMappingClass
The default class name to be used when creating action mapping instances.


configured

protected boolean configured
Has this module been completely configured yet. Once this flag has been set, any attempt to modify the configuration will return an IllegalStateException.


controllerConfig

protected ControllerConfig controllerConfig
The controller configuration object for this module.


dataSources

protected HashMap dataSources
The set of JDBC data source configurations for this module, if any, keyed by the key property.


exceptions

protected HashMap exceptions
The set of exception handling configurations for this module, if any, keyed by the type property.


formBeans

protected HashMap formBeans
The set of form bean configurations for this module, if any, keyed by the name property.


forwards

protected HashMap forwards
The set of global forward configurations for this module, if any, keyed by the name property.


messageResources

protected HashMap messageResources
The set of message resources configurations for this module, if any, keyed by the key property.


plugIns

protected ArrayList plugIns
The set of configured plug-in Actions for this module, if any, in the order they were declared and configured.


prefix

protected String prefix
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet. A configuration with a prefix of a zero-length String is the default configuration for this web module.

Constructor Details

ModuleConfigImpl

public ModuleConfigImpl(String prefix)
Construct an ModuleConfigImpl object according to the specified parameter values.

Parameters:
prefix - Context-relative URI prefix for this module


ModuleConfigImpl

public ModuleConfigImpl(ModuleConfigImpl moduleConfig)

Deprecated. Only used while we are deprecating ApplicationConfig to insure maximum compatability.

Only used while we are deprecating ApplicationConfig. performs a shallow copy to ensure that any operations performed on an ApplicationConfig object is performed on the same underlying ModuleConfigImpl sub objects

Parameters:
moduleConfig -

Method Details

addActionConfig

public void addActionConfig(ActionConfig config)
Add a new ActionConfig instance to the set associated with this module.
Specified by:
addActionConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addDataSourceConfig

public void addDataSourceConfig(DataSourceConfig config)
Add a new DataSourceConfig instance to the set associated with this module.
Specified by:
addDataSourceConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addExceptionConfig

public void addExceptionConfig(ExceptionConfig config)
Add a new ExceptionConfig instance to the set associated with this module.
Specified by:
addExceptionConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addFormBeanConfig

public void addFormBeanConfig(FormBeanConfig config)
Add a new FormBeanConfig instance to the set associated with this module.
Specified by:
addFormBeanConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addForwardConfig

public void addForwardConfig(ForwardConfig config)
Add a new ForwardConfig instance to the set of global forwards associated with this module.
Specified by:
addForwardConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addMessageResourcesConfig

public void addMessageResourcesConfig(MessageResourcesConfig config)
Add a new MessageResourcesConfig instance to the set associated with this module.
Specified by:
addMessageResourcesConfig in interface ModuleConfig

Parameters:
config - The new configuration instance to be added


addPlugInConfig

public void addPlugInConfig(PlugInConfig plugInConfig)
Add a newly configured PlugInConfig instance to the set of plug-in Actions for this module.
Specified by:
addPlugInConfig in interface ModuleConfig

Parameters:
plugInConfig - The new configuration instance to be added


findActionConfig

public ActionConfig findActionConfig(String path)
Return the action configuration for the specified path, if any; otherwise return null.
Specified by:
findActionConfig in interface ModuleConfig

Parameters:
path - Path of the action configuration to return


findActionConfigs

public ActionConfig[] findActionConfigs()
Return the action configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findActionConfigs in interface ModuleConfig


findDataSourceConfig

public DataSourceConfig findDataSourceConfig(String key)
Return the data source configuration for the specified key, if any; otherwise return null.
Specified by:
findDataSourceConfig in interface ModuleConfig

Parameters:
key - Key of the data source configuration to return


findDataSourceConfigs

public DataSourceConfig[] findDataSourceConfigs()
Return the data source configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findDataSourceConfigs in interface ModuleConfig


findExceptionConfig

public ExceptionConfig findExceptionConfig(String type)
Return the exception configuration for the specified type, if any; otherwise return null.
Specified by:
findExceptionConfig in interface ModuleConfig

Parameters:
type - Exception class name to find a configuration for


findExceptionConfigs

public ExceptionConfig[] findExceptionConfigs()
Return the exception configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findExceptionConfigs in interface ModuleConfig


findFormBeanConfig

public FormBeanConfig findFormBeanConfig(String name)
Return the form bean configuration for the specified key, if any; otherwise return null.
Specified by:
findFormBeanConfig in interface ModuleConfig

Parameters:
name - Name of the form bean configuration to return


findFormBeanConfigs

public FormBeanConfig[] findFormBeanConfigs()
Return the form bean configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findFormBeanConfigs in interface ModuleConfig


findForwardConfig

public ForwardConfig findForwardConfig(String name)
Return the forward configuration for the specified key, if any; otherwise return null.
Specified by:
findForwardConfig in interface ModuleConfig

Parameters:
name - Name of the forward configuration to return


findForwardConfigs

public ForwardConfig[] findForwardConfigs()
Return the form bean configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findForwardConfigs in interface ModuleConfig


findMessageResourcesConfig

public MessageResourcesConfig findMessageResourcesConfig(String key)
Return the message resources configuration for the specified key, if any; otherwise return null.
Specified by:
findMessageResourcesConfig in interface ModuleConfig

Parameters:
key - Key of the data source configuration to return


findMessageResourcesConfigs

public MessageResourcesConfig[] findMessageResourcesConfigs()
Return the message resources configurations for this module. If there are none, a zero-length array is returned.
Specified by:
findMessageResourcesConfigs in interface ModuleConfig


findPlugInConfigs

public PlugInConfig[] findPlugInConfigs()
Return the configured plug-in actions for this module. If there are none, a zero-length array is returned.
Specified by:
findPlugInConfigs in interface ModuleConfig


freeze

public void freeze()
Freeze the configuration of this module. After this method returns, any attempt to modify the configuration will return an IllegalStateException.
Specified by:
freeze in interface ModuleConfig


getActionMappingClass

public String getActionMappingClass()
The default class name to be used when creating action mapping instances.
Specified by:
getActionMappingClass in interface ModuleConfig


getConfigured

public boolean getConfigured()
Has this module been completely configured yet. Once this flag has been set, any attempt to modify the configuration will return an IllegalStateException.
Specified by:
getConfigured in interface ModuleConfig


getControllerConfig

public ControllerConfig getControllerConfig()
The controller configuration object for this module.
Specified by:
getControllerConfig in interface ModuleConfig


getPrefix

public String getPrefix()
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet. A configuration with a prefix of a zero-length String is the default configuration for this web module.
Specified by:
getPrefix in interface ModuleConfig


removeActionConfig

public void removeActionConfig(ActionConfig config)
Remove the specified action configuration instance.
Specified by:
removeActionConfig in interface ModuleConfig

Parameters:
config - ActionConfig instance to be removed


removeDataSourceConfig

public void removeDataSourceConfig(DataSourceConfig config)
Remove the specified data source configuration instance.
Specified by:
removeDataSourceConfig in interface ModuleConfig

Parameters:
config - DataSourceConfig instance to be removed


removeExceptionConfig

public void removeExceptionConfig(ExceptionConfig config)
Remove the specified exception configuration instance.
Specified by:
removeExceptionConfig in interface ModuleConfig

Parameters:
config - ActionConfig instance to be removed


removeFormBeanConfig

public void removeFormBeanConfig(FormBeanConfig config)
Remove the specified form bean configuration instance.
Specified by:
removeFormBeanConfig in interface ModuleConfig

Parameters:
config - FormBeanConfig instance to be removed


removeForwardConfig

public void removeForwardConfig(ForwardConfig config)
Remove the specified forward configuration instance.
Specified by:
removeForwardConfig in interface ModuleConfig

Parameters:
config - ForwardConfig instance to be removed


removeMessageResourcesConfig

public void removeMessageResourcesConfig(MessageResourcesConfig config)
Remove the specified message resources configuration instance.
Specified by:
removeMessageResourcesConfig in interface ModuleConfig

Parameters:
config - MessageResourcesConfig instance to be removed


setActionMappingClass

public void setActionMappingClass(String actionMappingClass)
The default class name to be used when creating action mapping instances.
Specified by:
setActionMappingClass in interface ModuleConfig

Parameters:
actionMappingClass - default class name to be used when creating action mapping instances.


setControllerConfig

public void setControllerConfig(ControllerConfig cc)
The controller configuration object for this module.
Specified by:
setControllerConfig in interface ModuleConfig

Parameters:
cc - The controller configuration object for this module.


setPrefix

public void setPrefix(String prefix)
The prefix of the context-relative portion of the request URI, used to select this configuration versus others supported by the controller servlet. A configuration with a prefix of a zero-length String is the default configuration for this web module.
Specified by:
setPrefix in interface ModuleConfig


Copyright B) 2000-2005 - Apache Software Foundation