インターフェース AfterBeanDiscovery
public interface AfterBeanDiscovery
Bean 検出プロセスが完全に完了し、検出された Bean に関連する定義エラーがないことを検証し、検出された Bean の Bean および ObserverMethod オブジェクトを登録したが、デプロイの問題を検出する前に、コンテナーによって起動される 2 番目のイベントのイベント型。
ポータブル拡張機能は、このイベントを利用して、Bean、インターセプター、デコレーター、オブザーバーメソッド、およびカスタムコンテキストオブジェクトをコンテナーに登録できます。
void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager manager) { ... }
AfterBeanDiscovery イベントのオブザーバーメソッドが例外をスローした場合、その例外はコンテナーによって定義エラーとして扱われます。
CDI Lite の実装は、Portable Extensions のサポートを提供する必要はありません。
- 作成者:
- David Allen, Antoine Sabot-Durand
方法の概要
修飾子と型メソッド説明<T> BeanConfigurator<T>addBean()新しいBeanConfiguratorを取得して、新しいBeanを構成し、オブザーバー呼び出しの最後に追加します。void指定されたBeanを含む型ProcessBeanのイベントを発生させてから、Beanをコンテナーに登録します。これにより、インターセプターでもデコレーターでもない Bean を他の Bean に注入できるようになります。voidaddContext(Context context) カスタムContextオブジェクトをコンテナーに登録します。void定義エラーをコンテナーに登録し、すべてのオブザーバーに通知された後、コンテナーがデプロイを中止するようにします。<T> ObserverMethodConfigurator<T>新しいObserverMethodConfiguratorを取得して、新しいObserverMethodを構成し、オブザーバー呼び出しの最後に追加します。voidaddObserverMethod(ObserverMethod<?> observerMethod) 指定されたObserverMethodを含む型ProcessObserverMethodのイベントを発生させてから、ObserverMethodをコンテナーに登録して、イベント通知に使用できるようにします。<T> AnnotatedType<T>getAnnotatedType(ClassSE<T> type, StringSE id) コンテナーの初期化中に定義された、特定のクラスまたはインターフェースのアノテーションを読み取るために使用できるAnnotatedTypeを取得します。<T> IterableSE<AnnotatedType<T>>getAnnotatedTypes(ClassSE<T> type) コンテナーの初期化中に定義された特定のクラスまたはインターフェースのアノテーションを読み取るために使用できるAnnotatedTypeを取得します。
方法の詳細
addDefinitionError
定義エラーをコンテナーに登録し、すべてのオブザーバーに通知された後、コンテナーがデプロイを中止するようにします。- パラメーター:
t-ThrowableSE としての定義エラー- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
addBean
指定されたBeanを含む型ProcessBeanのイベントを発生させてから、Beanをコンテナーに登録します。これにより、インターセプターでもデコレーターでもない Bean を他の Bean に注入できるようになります。指定されたBeanは、InterceptorまたはDecoratorを実装できます。- パラメーター:
bean- デプロイに追加する Bean- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
addBean
新しいBeanConfiguratorを取得して、新しいBeanを構成し、オブザーバー呼び出しの最後に追加します。次に、この構成からビルドされたBeanを含む型ProcessBeanのイベントを発生させ、それをコンテナーに登録して、他の Bean への注入に使用できるようにします。呼び出しごとに新しい BeanConfigurator が返されます。- 型パラメーター:
T- Bean の型- 戻り値:
- 追加するように Bean を構成するための再利用不可能な
BeanConfigurator - 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 2.0
addObserverMethod
指定されたObserverMethodを含む型ProcessObserverMethodのイベントを発生させてから、ObserverMethodをコンテナーに登録して、イベント通知に使用できるようにします。- パラメーター:
observerMethod- デプロイに追加するカスタムオブザーバーメソッド- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
addObserverMethod
新しいObserverMethodConfiguratorを取得して、新しいObserverMethodを構成し、オブザーバー呼び出しの最後に追加します。次に、この構成からビルドされたObserverMethodを含む型ProcessObserverMethodのイベントを発生させ、ObserverMethodをコンテナーに登録して、イベント通知に使用できるようにします。呼び出しごとに新しい ObserverMethodConfigurator が返されます。- 型パラメーター:
T- 構成された ObserverMethod が監視するイベントの型- 戻り値:
- 再利用不可能な
ObserverMethodConfiguratorインスタンス - 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 2.0
addContext
カスタムContextオブジェクトをコンテナーに登録します。- パラメーター:
context- デプロイに追加するカスタムコンテキスト- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合
getAnnotatedType
コンテナーの初期化中に定義された、特定のクラスまたはインターフェースのアノテーションを読み取るために使用できるAnnotatedTypeを取得します。- 型パラメーター:
T- クラスまたはインターフェース- パラメーター:
type-ClassSE オブジェクトid- 型識別子。null の場合、型の完全修飾子クラス名が使用されます- 戻り値:
AnnotatedType- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 1.1
getAnnotatedTypes
コンテナーの初期化中に定義された特定のクラスまたはインターフェースのアノテーションを読み取るために使用できるAnnotatedTypeを取得します。- 型パラメーター:
T- クラスまたはインターフェース- パラメーター:
type-ClassSE オブジェクト- 戻り値:
AnnotatedTypes- 例外:
IllegalStateExceptionSE- オブザーバーメソッド呼び出し以外で呼び出された場合- 導入:
- 1.1