インターフェース BeanDefinitionDecorator

すべての既知の実装クラス:
AbstractInterceptorDrivenBeanDefinitionDecorator

public interface BeanDefinitionDecorator
カスタムのネストされた(<bean> の直下)タグを処理するために DefaultBeanDefinitionDocumentReader によって使用されるインターフェース。

<bean> タグに適用されたカスタム属性に基づいて装飾が行われることもあります。実装は自由にカスタムタグのメタデータを必要な数の BeanDefinitions に変換し、囲まれた <bean> タグの BeanDefinition を変換します。完全に異なる BeanDefinition を返してオリジナルを置き換えることもできます。

BeanDefinitionDecorators は、チェーンの一部である可能性があることに注意する必要があります。特に、BeanDefinitionDecorator は、以前の BeanDefinitionDecorator が元の BeanDefinitionProxyFactoryBean 定義に置き換えて、カスタム interceptors を追加できることを認識している必要があります。

囲んでいる Bean にインターセプターを追加する BeanDefinitionDecorators は、AbstractInterceptorDrivenBeanDefinitionDecorator を継承してチェーンを処理し、1 つのプロキシのみが作成され、チェーンからのすべてのインターセプターが含まれるようにします。

パーサーは、カスタムタグが存在するネームスペースの NamespaceHandler から BeanDefinitionDecorator を見つけます。

導入:
2.0
作成者:
Rob Harrop
関連事項:
  • メソッドの詳細

    • decorate

      BeanDefinitionHolder decorate(NodeSE node, BeanDefinitionHolder definition, ParserContext parserContext)
      指定された NodeSE(要素または属性のいずれか)を解析し、指定された BeanDefinition を修飾して、修飾された定義を返します。

      実装は、完全に新しい定義を返すことを選択できます。これにより、結果の BeanFactory の元の定義が置き換えられます。

      提供されている ParserContext を使用して、メイン定義をサポートするために必要な追加の Bean を登録できます。