| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface BeanDefinitionDecorator
Interface used by the DefaultBeanDefinitionDocumentReader
 to handle custom, nested (directly under a <bean>) tags.
 
Decoration may also occur based on custom attributes applied to the
 <bean> tag. Implementations are free to turn the metadata in the
 custom tag into as many
 BeanDefinitions as
 required and to transform the
 BeanDefinition of the enclosing
 <bean> tag, potentially even returning a completely different
 BeanDefinition to replace the
 original.
 
BeanDefinitionDecorators should be aware that
 they may be part of a chain. In particular, a BeanDefinitionDecorator should
 be aware that a previous BeanDefinitionDecorator may have replaced the
 original BeanDefinition with a
 ProxyFactoryBean definition allowing for
 custom interceptors to be added.
 
BeanDefinitionDecorators that wish to add an
 interceptor to the enclosing bean should extend
 AbstractInterceptorDrivenBeanDefinitionDecorator
 which handles the chaining ensuring that only one proxy is created and that it
 contains all interceptors from the chain.
 
The parser locates a BeanDefinitionDecorator from the
 NamespaceHandler for the namespace in which the custom tag resides.
NamespaceHandler, 
BeanDefinitionParser| Method Summary | |
|---|---|
|  BeanDefinitionHolder | decorate(Node node,
         BeanDefinitionHolder definition,
         ParserContext parserContext)Parse the specified Node(either an element or an attribute) and decorate
 the suppliedBeanDefinition,
 returning the decorated definition. | 
| Method Detail | 
|---|
BeanDefinitionHolder decorate(Node node,
                              BeanDefinitionHolder definition,
                              ParserContext parserContext)
Node (either an element or an attribute) and decorate
 the supplied BeanDefinition,
 returning the decorated definition.
 Implementations may choose to return a completely new definition, which will
 replace the original definition in the resulting
 BeanFactory.
 
The supplied ParserContext can be used to register any additional
 beans needed to support the main definition.
| 
 | ||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||