インターフェース ProcessBeanAttributes<T>
- 型パラメーター:
T- Bean のクラス
public interface ProcessBeanAttributes<T>
コンテナーは、Bean オブジェクトを登録する前に、Bean アーカイブにデプロイされた有効な Bean、インターセプタ、デコレータごとにこの型のイベントを発生させます。
このイベントのオブザーバーは、setBeanAttributes(BeanAttributes) または configureBeanAttributes() のいずれかを呼び出すことにより、BeanAttributes をラップまたは置換することができます。両方のメソッドがオブザーバー通知内で呼び出されると、IllegalStateExceptionSE がスローされます。すべてのオブザーバーが呼び出された後、コンテナーはこのプロパティの最終値を使用して、Bean のインスタンスを管理する必要があります。
ProcessBeanAttributes イベントのオブザーバーメソッドが例外をスローした場合、その例外はコンテナーによって定義エラーとして扱われます。
CDI Lite の実装は、Portable Extensions のサポートを提供する必要はありません。
- 導入:
- 1.1
- 作成者:
- Pete Muir, Antoine Sabot-Durand
方法の概要
修飾子と型メソッド説明void定義エラーをコンテナーに登録し、Bean ディスカバリの完了後にコンテナーがデプロイをアボートするようにします。このイベントによって処理されたBeanAttributesで初期化されたBeanAttributesConfiguratorを返し、オブザーバー呼び出しの最後に元の BeanAttributes を置き換える新しい BeanAttributes を構成します。voidプロキシ可能な Bean 型を必要とするインジェクションポイントの検証中に、特定の Bean の Bean 型で宣言されたパブリック、保護、デフォルトの可視性を持つすべての非静的な final メソッドを無視するようにコンテナーに指示します。voidsetBeanAttributes(BeanAttributes<T> beanAttributes) BeanAttributesを置き換えます。voidveto()コンテナーが Bean を無視するように強制します。
メソッドの詳細
getAnnotated
Annotated getAnnotated()- 戻り値:
- マネージド Bean クラスまたはセッション Bean クラスを表す
AnnotatedType、プロデューサーフィールドを表すAnnotatedMethod、プロデューサーフィールドを表すAnnotatedField - 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
getBeanAttributes
BeanAttributes<T> getBeanAttributes()- 戻り値:
- コンテナーが Bean のインスタンスを管理するために使用する
BeanAttributesオブジェクト - 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
setBeanAttributes
BeanAttributesを置き換えます。- パラメーター:
beanAttributes- 使用する新しいBeanAttributes- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
configureBeanAttributes
BeanAttributesConfigurator<T> configureBeanAttributes()このイベントによって処理されたBeanAttributesで初期化されたBeanAttributesConfiguratorを返し、オブザーバー呼び出しの最後に元の BeanAttributes を置き換える新しい BeanAttributes を構成します。各呼び出しは同じ BeanAttributesConfigurator を返します。- 戻り値:
- 再利用できない
BeanAttributesConfiguratorで、置換 BeanAttributes を構成する - 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 2.0
addDefinitionError
定義エラーをコンテナーに登録し、Bean ディスカバリの完了後にコンテナーがデプロイをアボートするようにします。- パラメーター:
t- 追加するエラー- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
veto
void veto()コンテナーが Bean を無視するように強制します。- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
ignoreFinalMethods
void ignoreFinalMethods()プロキシ可能な Bean 型を必要とするインジェクションポイントの検証中に、特定の Bean の Bean 型で宣言されたパブリック、保護、デフォルトの可視性を持つすべての非静的な final メソッドを無視するようにコンテナーに指示します。
これらのメソッドは、Bean インスタンスで呼び出されることはありません。そうしないと、予期しない動作が発生します。
- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 2.0