Interface BeanDefinitionDecorator
- All Known Implementing Classes:
AbstractInterceptorDrivenBeanDefinitionDecorator
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.
- Since:
- 2.0
- Author:
- Rob Harrop
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondecorate
(Node node, BeanDefinitionHolder definition, ParserContext parserContext) Parse the specifiedNode
(either an element or an attribute) and decorate the suppliedBeanDefinition
, returning the decorated definition.
-
Method Details
-
decorate
BeanDefinitionHolder decorate(Node node, BeanDefinitionHolder definition, ParserContext parserContext) Parse the specifiedNode
(either an element or an attribute) and decorate the suppliedBeanDefinition
, 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.
-