org.apache.struts.config.impl

Class ModuleConfigImpl

Implemented Interfaces:
Serializable, ModuleConfig

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:
$Rev: 170858 $ $Date: 2005-05-19 03:58:27 +0100 (Thu, 19 May 2005) $
Since:
Struts 1.1

Field Summary

protected List
actionConfigList
The set of action configurations for this module, if any, listed in the order in which they are added.
protected HashMap
actionConfigs
The set of action configurations for this module, if any, keyed by the path property.
protected String
actionFormBeanClass
The default class name to be used when creating action form bean instances.
protected String
actionForwardClass
The default class name to be used when creating action forward instances.
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 ActionConfigMatcher
matcher
Matches action config paths against compiled wildcard patterns
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()
Constructor for ModuleConfigImpl.
ModuleConfigImpl(String prefix)
Construct an ModuleConfigImpl object according to the specified parameter values.

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, first looking a direct match, then if none found, a wildcard pattern match; 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
getActionFormBeanClass()
The default class name to be used when creating action form bean instances.
String
getActionForwardClass()
The default class name to be used when creating action forward instances.
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
setActionFormBeanClass(String actionFormBeanClass)
The default class name to be used when creating action form bean instances.
void
setActionForwardClass(String actionForwardClass)
The default class name to be used when creating action forward instances.
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

actionConfigList

protected List actionConfigList
The set of action configurations for this module, if any, listed in the order in which they are added.

actionConfigs

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

actionFormBeanClass

protected String actionFormBeanClass
The default class name to be used when creating action form bean instances.

actionForwardClass

protected String actionForwardClass
The default class name to be used when creating action forward instances.

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.

matcher

protected ActionConfigMatcher matcher
Matches action config paths against compiled wildcard patterns

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()
Constructor for ModuleConfigImpl. Assumes default configuration.
Since:
Struts 1.2.8

ModuleConfigImpl

public ModuleConfigImpl(String prefix)
Construct an ModuleConfigImpl object according to the specified parameter values.
Parameters:
prefix - Context-relative URI prefix for this module

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, first looking a direct match, then if none found, a wildcard pattern match; 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

getActionFormBeanClass

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

getActionForwardClass

public String getActionForwardClass()
The default class name to be used when creating action forward instances.
Specified by:
getActionForwardClass 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

setActionFormBeanClass

public void setActionFormBeanClass(String actionFormBeanClass)
The default class name to be used when creating action form bean instances.
Specified by:
setActionFormBeanClass in interface ModuleConfig
Parameters:
actionFormBeanClass - default class name to be used when creating action form bean instances.

setActionForwardClass

public void setActionForwardClass(String actionForwardClass)
The default class name to be used when creating action forward instances.
Specified by:
setActionForwardClass in interface ModuleConfig
Parameters:
actionForwardClass - default class name to be used when creating action forward instances.

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-2007 - The Apache Software Foundation