Class ConfigurationDeclaration
- java.lang.Object
-
- org.apache.commons.configuration2.beanutils.XMLBeanDeclaration
-
- org.apache.commons.configuration2.builder.combined.ConfigurationDeclaration
-
- All Implemented Interfaces:
BeanDeclaration
public class ConfigurationDeclaration extends XMLBeanDeclaration
A specialized
BeanDeclaration
implementation that represents the declaration of a configuration source.Instances of this class are able to extract all information about a configuration source from the configuration definition file. The declaration of a configuration source is very similar to a bean declaration processed by
XMLBeanDeclaration
. There are very few differences, e.g. some reserved attributes likeoptional
andat
, and the fact that a bean factory is never needed.- Since:
- 2.0
-
-
Field Summary
Fields Modifier and Type Field Description private CombinedConfigurationBuilder
configurationBuilder
Stores a reference to the associated configuration builder.-
Fields inherited from class org.apache.commons.configuration2.beanutils.XMLBeanDeclaration
ATTR_BEAN_CLASS, ATTR_BEAN_FACTORY, ATTR_FACTORY_PARAM, ATTR_PREFIX, RESERVED_PREFIX
-
-
Constructor Summary
Constructors Constructor Description ConfigurationDeclaration(CombinedConfigurationBuilder builder, HierarchicalConfiguration<?> config)
Creates a new instance ofConfigurationDeclaration
and initializes it.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getAt()
Gets the value of theat
attribute.java.lang.String
getBeanClassName()
Gets the bean's class name.java.lang.String
getBeanFactoryName()
Gets the name of the bean factory.CombinedConfigurationBuilder
getConfigurationBuilder()
Gets the associated configuration builder.java.lang.String
getName()
Gets the name for the represented configuration source.boolean
isForceCreate()
Gets a flag whether this configuration should always be created and added to the resulting combined configuration.boolean
isOptional()
Gets a flag whether this is an optional configuration.boolean
isReload()
Returns a flag whether a builder with reloading support should be created.protected boolean
isReservedAttributeName(java.lang.String name)
Tests if the specified attribute name is reserved and thus does not point to a property of the bean to be created.-
Methods inherited from class org.apache.commons.configuration2.beanutils.XMLBeanDeclaration
getAttributeNames, getBeanFactoryParameter, getBeanProperties, getConfiguration, getConstructorArgs, getDefaultBeanClassName, getNestedBeanDeclarations, interpolate, isReservedChildName, isReservedName
-
-
-
-
Field Detail
-
configurationBuilder
private final CombinedConfigurationBuilder configurationBuilder
Stores a reference to the associated configuration builder.
-
-
Constructor Detail
-
ConfigurationDeclaration
public ConfigurationDeclaration(CombinedConfigurationBuilder builder, HierarchicalConfiguration<?> config)
Creates a new instance ofConfigurationDeclaration
and initializes it.- Parameters:
builder
- the associated configuration builderconfig
- the configuration this declaration is based onto
-
-
Method Detail
-
getAt
public java.lang.String getAt()
Gets the value of theat
attribute.- Returns:
- the value of the
at
attribute (can be null)
-
getBeanClassName
public java.lang.String getBeanClassName()
Gets the bean's class name. This implementation will always return null.- Specified by:
getBeanClassName
in interfaceBeanDeclaration
- Overrides:
getBeanClassName
in classXMLBeanDeclaration
- Returns:
- the name of the bean's class
-
getBeanFactoryName
public java.lang.String getBeanFactoryName()
Gets the name of the bean factory. For configuration source declarations always a reserved factory is used. This factory's name is returned by this implementation.- Specified by:
getBeanFactoryName
in interfaceBeanDeclaration
- Overrides:
getBeanFactoryName
in classXMLBeanDeclaration
- Returns:
- the name of the bean factory
-
getConfigurationBuilder
public CombinedConfigurationBuilder getConfigurationBuilder()
Gets the associated configuration builder.- Returns:
- the configuration builder
-
getName
public java.lang.String getName()
Gets the name for the represented configuration source. The name is optional, so this method can return null.- Returns:
- the name of the associated configuration source or null
-
isForceCreate
public boolean isForceCreate()
Gets a flag whether this configuration should always be created and added to the resulting combined configuration. This flag is evaluated only for optional configurations whose normal creation has caused an error. If for such a configuration theforceCreate
attribute is set and the corresponding configuration provider supports this mode, an empty configuration will be created and added to the resulting combined configuration.- Returns:
- the value of the
forceCreate
attribute
-
isOptional
public boolean isOptional()
Gets a flag whether this is an optional configuration.- Returns:
- a flag if this declaration points to an optional configuration
-
isReload
public boolean isReload()
Returns a flag whether a builder with reloading support should be created. This may not be supported by all configuration builder providers.- Returns:
- a flag whether a reloading builder should be created
-
isReservedAttributeName
protected boolean isReservedAttributeName(java.lang.String name)
Tests if the specified attribute name is reserved and thus does not point to a property of the bean to be created. This method is called when processing the attributes of this bean declaration. It is then possible to ignore some attributes with a specific meaning. This implementation delegates toXMLBeanDeclaration.isReservedName(String)
. This implementation checks for additional reserved attribute names. Note that in some cases the presence of other attribute names determine whether a name is reserved or not. For instance, per default the attributeconfig-at
is reserved. However, if this attribute is not present, the attributeat
is also considered as a reserved attribute. (This is mainly done for dealing with legacy configuration files supported by earlier versions of this library.)- Overrides:
isReservedAttributeName
in classXMLBeanDeclaration
- Parameters:
name
- the name of the attribute to be checked- Returns:
- a flag whether this name is reserved
-
-