public interface BeanDefinitionDecorator
<bean>
の直下)タグを処理するために DefaultBeanDefinitionDocumentReader
によって使用されるインターフェース。<bean>
タグに適用されたカスタム属性に基づいて装飾が行われることもあります。実装は自由にカスタムタグのメタデータを必要な数の BeanDefinitions
に変換し、囲まれた <bean>
タグの BeanDefinition
を変換します。完全に異なる BeanDefinition
を返してオリジナルを置き換えることもできます。
BeanDefinitionDecorators
は、チェーンの一部である可能性があることに注意する必要があります。特に、BeanDefinitionDecorator
は、以前の BeanDefinitionDecorator
が元の BeanDefinition
を ProxyFactoryBean
定義に置き換えて、カスタム interceptors
を追加できることを認識している必要があります。
囲んでいる Bean にインターセプターを追加する BeanDefinitionDecorators
は、AbstractInterceptorDrivenBeanDefinitionDecorator
を継承してチェーンを処理し、1 つのプロキシのみが作成され、チェーンからのすべてのインターセプターが含まれるようにします。
パーサーは、カスタムタグが存在するネームスペースの NamespaceHandler
から BeanDefinitionDecorator
を見つけます。
NamespaceHandler
, BeanDefinitionParser
修飾子と型 | メソッドと説明 |
---|---|
BeanDefinitionHolder | decorate(NodeSE node, BeanDefinitionHolder definition, ParserContext parserContext) 指定された Node SE(要素または属性のいずれか)を解析し、指定された BeanDefinition を修飾して、修飾された定義を返します。 |
BeanDefinitionHolder decorate(NodeSE node, BeanDefinitionHolder definition, ParserContext parserContext)
Node
SE(要素または属性のいずれか)を解析し、指定された BeanDefinition
を修飾して、修飾された定義を返します。 実装は、完全に新しい定義を返すことを選択できます。これにより、結果の BeanFactory
の元の定義が置き換えられます。
提供されている ParserContext
を使用して、メイン定義をサポートするために必要な追加の Bean を登録できます。