public abstract class

NamespaceHandlerSupport

extends Object
implements NamespaceHandler
java.lang.Object
   ↳ org.springframework.beans.factory.xml.NamespaceHandlerSupport
Known Direct Subclasses

Class Overview

Support class for implementing custom NamespaceHandlers. Parsing and decorating of individual Nodes is done via BeanDefinitionParser and BeanDefinitionDecorator strategy interfaces, respectively.

Provides the registerBeanDefinitionParser(String, BeanDefinitionParser) and registerBeanDefinitionDecorator(String, BeanDefinitionDecorator) methods for registering a BeanDefinitionParser or BeanDefinitionDecorator to handle a specific element.

Summary

Public Constructors
NamespaceHandlerSupport()
Public Methods
BeanDefinitionHolder decorate(Node node, BeanDefinitionHolder definition, ParserContext parserContext)
Decorates the supplied Node by delegating to the BeanDefinitionDecorator that is registered to handle that Node.
BeanDefinition parse(Element element, ParserContext parserContext)
Parses the supplied Element by delegating to the BeanDefinitionParser that is registered for that Element.
Protected Methods
final void registerBeanDefinitionDecorator(String elementName, BeanDefinitionDecorator dec)
Subclasses can call this to register the supplied BeanDefinitionDecorator to handle the specified element.
final void registerBeanDefinitionDecoratorForAttribute(String attrName, BeanDefinitionDecorator dec)
Subclasses can call this to register the supplied BeanDefinitionDecorator to handle the specified attribute.
final void registerBeanDefinitionParser(String elementName, BeanDefinitionParser parser)
Subclasses can call this to register the supplied BeanDefinitionParser to handle the specified element.
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.springframework.beans.factory.xml.NamespaceHandler

Public Constructors

public NamespaceHandlerSupport ()

Also: SpringBeans

Public Methods

public BeanDefinitionHolder decorate (Node node, BeanDefinitionHolder definition, ParserContext parserContext)

Also: SpringBeans

Decorates the supplied Node by delegating to the BeanDefinitionDecorator that is registered to handle that Node.

Parameters
node the source element or attribute that is to be parsed
definition the current bean definition
parserContext the object encapsulating the current state of the parsing process
Returns
  • the decorated definition (to be registered in the BeanFactory), or simply the original bean definition if no decoration is required. A null value is strictly speaking invalid, but will be leniently treated like the case where the original bean definition gets returned.

public BeanDefinition parse (Element element, ParserContext parserContext)

Also: SpringBeans

Parses the supplied Element by delegating to the BeanDefinitionParser that is registered for that Element.

Parameters
element the element that is to be parsed into one or more BeanDefinitions
parserContext the object encapsulating the current state of the parsing process
Returns
  • the primary BeanDefinition (can be null as explained above)

Protected Methods

protected final void registerBeanDefinitionDecorator (String elementName, BeanDefinitionDecorator dec)

Also: SpringBeans

Subclasses can call this to register the supplied BeanDefinitionDecorator to handle the specified element. The element name is the local (non-namespace qualified) name.

protected final void registerBeanDefinitionDecoratorForAttribute (String attrName, BeanDefinitionDecorator dec)

Also: SpringBeans

Subclasses can call this to register the supplied BeanDefinitionDecorator to handle the specified attribute. The attribute name is the local (non-namespace qualified) name.

protected final void registerBeanDefinitionParser (String elementName, BeanDefinitionParser parser)

Also: SpringBeans

Subclasses can call this to register the supplied BeanDefinitionParser to handle the specified element. The element name is the local (non-namespace qualified) name.