org.springframework.beans.factory.xml
Class UtilNamespaceHandler.PropertiesBeanDefinitionParser

java.lang.Object
  extended by org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
      extended by org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser
          extended by org.springframework.beans.factory.xml.AbstractSimpleBeanDefinitionParser
              extended by org.springframework.beans.factory.xml.UtilNamespaceHandler.PropertiesBeanDefinitionParser
All Implemented Interfaces:
BeanDefinitionParser
Enclosing class:
UtilNamespaceHandler

private static class UtilNamespaceHandler.PropertiesBeanDefinitionParser
extends AbstractSimpleBeanDefinitionParser


Field Summary
 
Fields inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
ID_ATTRIBUTE, NAME_ATTRIBUTE
 
Constructor Summary
private UtilNamespaceHandler.PropertiesBeanDefinitionParser()
           
 
Method Summary
protected  void doParse(org.w3c.dom.Element element, ParserContext parserContext, BeanDefinitionBuilder builder)
          Parse the supplied Element and populate the supplied BeanDefinitionBuilder as required.
protected  java.lang.Class getBeanClass(org.w3c.dom.Element element)
          Determine the bean class corresponding to the supplied Element.
protected  boolean isEligibleAttribute(java.lang.String attributeName)
          Determine whether the given attribute is eligible for being turned into a corresponding bean property value.
 
Methods inherited from class org.springframework.beans.factory.xml.AbstractSimpleBeanDefinitionParser
extractPropertyName, isEligibleAttribute, isEligibleAttribute, postProcess
 
Methods inherited from class org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser
doParse, getBeanClassName, getParentName, parseInternal
 
Methods inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
parse, postProcessComponentDefinition, registerBeanDefinition, resolveId, shouldFireEvents, shouldGenerateId, shouldGenerateIdAsFallback
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UtilNamespaceHandler.PropertiesBeanDefinitionParser

private UtilNamespaceHandler.PropertiesBeanDefinitionParser()
Method Detail

getBeanClass

protected java.lang.Class getBeanClass(org.w3c.dom.Element element)
Description copied from class: AbstractSingleBeanDefinitionParser
Determine the bean class corresponding to the supplied Element.

Note that, for application classes, it is generally preferable to override AbstractSingleBeanDefinitionParser.getBeanClassName(org.w3c.dom.Element) instead, in order to avoid a direct dependence on the bean implementation class. The BeanDefinitionParser and its NamespaceHandler can be used within an IDE plugin then, even if the application classes are not available on the plugin's classpath.

Overrides:
getBeanClass in class AbstractSingleBeanDefinitionParser
Parameters:
element - the Element that is being parsed
Returns:
the Class of the bean that is being defined via parsing the supplied Element, or null if none
See Also:
AbstractSingleBeanDefinitionParser.getBeanClassName(org.w3c.dom.Element)

isEligibleAttribute

protected boolean isEligibleAttribute(java.lang.String attributeName)
Description copied from class: AbstractSimpleBeanDefinitionParser
Determine whether the given attribute is eligible for being turned into a corresponding bean property value.

The default implementation considers any attribute as eligible, except for the "id" attribute.

Overrides:
isEligibleAttribute in class AbstractSimpleBeanDefinitionParser
Parameters:
attributeName - the attribute name taken straight from the XML element being parsed (never null)

doParse

protected void doParse(org.w3c.dom.Element element,
                       ParserContext parserContext,
                       BeanDefinitionBuilder builder)
Description copied from class: AbstractSimpleBeanDefinitionParser
Parse the supplied Element and populate the supplied BeanDefinitionBuilder as required.

This implementation maps any attributes present on the supplied element to PropertyValue instances, and adds them to the builder.

The AbstractSimpleBeanDefinitionParser.extractPropertyName(String) method is used to reconcile the name of an attribute with the name of a JavaBean property.

Overrides:
doParse in class AbstractSimpleBeanDefinitionParser
Parameters:
element - the XML element being parsed
parserContext - the object encapsulating the current state of the parsing process
builder - used to define the BeanDefinition
See Also:
AbstractSimpleBeanDefinitionParser.extractPropertyName(String)