public interface BeanManager
ポータブル拡張機能がコンテナーと直接やり取りできるようにします。Bean のコンテキスト参照を取得するための操作と、ポータブル拡張機能を使用するための他の多くの操作を提供します。
Bean は、次のように挿入することで BeanManager
のインスタンスを取得できます。
@Inject BeanManager manager;
Java EE コンポーネントは、java:comp/BeanManager
という名前を検索することにより、JNDISE から BeanManager
のインスタンスを取得できます。
BeanManager のほとんどの操作は、アプリケーションの実行中にいつでも呼び出すことができます。
ただし、AfterBeanDiscovery
イベントが発生する前に、次の操作を呼び出さないでください。
getBeans(String)
,getBeans(java.lang.reflect.Type, java.lang.annotation.Annotation...)
,getPassivationCapableBean(String)
,resolve(java.util.Set)
,resolveDecorators(java.util.Set, java.lang.annotation.Annotation...)
,resolveInterceptors(InterceptionType, java.lang.annotation.Annotation...)
,resolveObserverMethods(Object, java.lang.annotation.Annotation...)
,validate(InjectionPoint)
,createInstance()
AfterDeploymentValidation
イベントが発生する前に、次の操作を呼び出さないでください。
getReference(Bean, java.lang.reflect.Type, CreationalContext)
,getInjectableReference(InjectionPoint, CreationalContext)
,コンテナーが例外をスローします。
修飾子と型 | メソッドと説明 |
---|---|
boolean | areInterceptorBindingsEquivalent(AnnotationSE interceptorBinding1, AnnotationSE interceptorBinding2) Nonbinding でアノテーションが付けられたメンバーを考慮して、2 つのインターセプターバインディングが型安全な解決の目的で同等と見なされるかどうかを判断します。 |
boolean | areQualifiersEquivalent(AnnotationSE qualifier1, AnnotationSE qualifier2) Nonbinding でアノテーションが付けられたメンバーを考慮して、2 つの修飾子が型安全な解決の目的で同等と見なされるかどうかを判断します。 |
<T> AnnotatedType<T> | createAnnotatedType(ClassSE<T> type) 指定されたクラスまたはインターフェースのアノテーションを読み取るために使用できる AnnotatedType を取得します。 |
<T> Bean<T> | createBean(BeanAttributes<T> attributes, ClassSE<T> beanClass, InjectionTargetFactory<T> injectionTargetFactory) |
<T,X> Bean<T> | createBean(BeanAttributes<T> attributes, ClassSE<X> beanClass, ProducerFactory<X> producerFactory) |
BeanAttributes<?> | createBeanAttributes(AnnotatedMember<?> type) 指定された AnnotatedType の BeanAttributes を取得します。 |
<T> BeanAttributes<T> | createBeanAttributes(AnnotatedType<T> type) 指定された AnnotatedType の BeanAttributes を取得します。 |
<T> CreationalContext<T> | createCreationalContext(Contextual<T> contextual) 指定されたコンテキスト型、または非コンテキストオブジェクトの CreationalContext のインスタンスを取得します。 |
InjectionPoint | createInjectionPoint(AnnotatedField<?> field) 指定された AnnotatedField の InjectionPoint のコンテナー提供の実装を取得します。 |
InjectionPoint | createInjectionPoint(AnnotatedParameter<?> parameter) 指定された AnnotatedParameter の InjectionPoint のコンテナー提供の実装を取得します。 |
<T> InjectionTarget<T> | createInjectionTarget(AnnotatedType<T> type) 指定された AnnotatedType の InjectionTarget を取得します。 |
Instance<ObjectSE> | createInstance() Bean インスタンスにアクセスするための Instance オブジェクトを取得します。 |
<T> InterceptionFactory<T> | createInterceptionFactory(CreationalContext<T> ctx, ClassSE<T> clazz) 指定された CreationalContext と型の InterceptionFactory を作成します。 |
void | fireEvent(ObjectSE event, AnnotationSE... qualifiers) イベントを発生させ、オブザーバーに通知します。 |
SetSE<Bean<?>> | getBeans(StringSE name) EL の規則に従って、指定された EL 名を持ち、 BeanManager が注入されたクラスまたは JNDI 環境名前空間から BeanManager が取得された Java EE コンポーネントを含むモジュールまたはライブラリで注入可能な Bean のセットを返します。名前解決。 |
SetSE<Bean<?>> | getBeans(TypeSE beanType, AnnotationSE... qualifiers) 与えられた必要な型と修飾子を持ち、型安全解決のルールに従って、 BeanManager が注入されたクラスを含むモジュールまたはライブラリ、または BeanManager が JNDI 環境の名前空間から取得された Java EE コンポーネントを含むモジュールまたはライブラリで注入可能な Bean のセットを返します。 |
Context | getContext(ClassSE<? extends AnnotationSE> scopeType) 指定されたスコープのアクティブなコンテキストオブジェクトを取得します。 |
ELResolver | getELResolver() EL 名で Bean を解決する ELResolver を返します。 |
Event<ObjectSE> | getEvent() 指定された型 java.lang.Object および指定された修飾子 @Default を持つイベントのインスタンスを返します。Event 組み込み Bean 要件を注入せずに、型安全な同期または非同期のイベント起動を可能にします。 |
<T extends Extension> | getExtension(ClassSE<T> extensionClass) META-INF/services で宣言された Extension クラスのコンテナーのインスタンスを取得します。 |
ObjectSE | getInjectableReference(InjectionPoint ij, CreationalContext<?> ctx) 特定のインジェクションポイントの注入可能な参照を取得します。 |
<T> InjectionTargetFactory<T> | getInjectionTargetFactory(AnnotatedType<T> annotatedType) コンテナーが作成した InjectionTarget インスタンスを提供する InjectionTargetFactory の実装。 |
SetSE<AnnotationSE> | getInterceptorBindingDefinition(ClassSE<? extends AnnotationSE> bindingType) 特定のインターセプターバインディング型のメタアノテーションのセットを取得します。 |
int | getInterceptorBindingHashCode(AnnotationSE interceptorBinding) JDK アルゴリズムを使用してアノテーションハッシュコードを決定し、 Nonbinding でアノテーションされたメンバーを無視して、インターセプターバインディングのハッシュコードを決定します。 |
Bean<?> | getPassivationCapableBean(StringSE id) 指定された識別子を持つ PassivationCapable Bean を返します。 |
<X> ProducerFactory<X> | getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean) 指定されたフィールドに対してコンテナーが作成した Producer インスタンスを提供する ProducerFactory の実装。 |
<X> ProducerFactory<X> | getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean) 指定されたメソッドに対してコンテナーが作成した Producer インスタンスを提供する ProducerFactory の実装。 |
int | getQualifierHashCode(AnnotationSE qualifier) アノテーションハッシュコードを決定するための JDK アルゴリズムを使用して、 Nonbinding でアノテーションされたメンバーを無視して、修飾子のハッシュコードを決定します。 |
ObjectSE | getReference(Bean<?> bean, TypeSE beanType, CreationalContext<?> ctx) Bean の特定の Bean および特定の Bean 型のコンテキスト参照を取得します。 |
SetSE<AnnotationSE> | getStereotypeDefinition(ClassSE<? extends AnnotationSE> stereotype) 特定のステレオタイプのメタアノテーションを取得します。 |
boolean | isInterceptorBinding(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それがインターセプターバインディング型であるかどうかを判断します。 |
boolean | isNormalScope(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それが通常のスコープ型であるかどうかを判断します。 |
boolean | isPassivatingScope(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それが非活性化スコープ型であるかどうかを判断します。 |
boolean | isQualifier(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それが修飾子型であるかどうかを判別します。 |
boolean | isScope(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それがスコープ型であるかどうかを判断します。 |
boolean | isStereotype(ClassSE<? extends AnnotationSE> annotationType) 指定されたアノテーション型をテストして、それがステレオタイプであるかどうかを判別します。 |
<X> Bean<? extends X> | resolve(SetSE<Bean<? extends X>> beans) あいまいな依存関係解決ルールを Bean のセットに適用します。 |
ListSE<Decorator<?>> | resolveDecorators(SetSE<TypeSE> types, AnnotationSE... qualifiers) BeanManager が注入されたクラス、または BeanManager が取得された JNDI 環境名前空間の Java EE コンポーネントを含むモジュールまたはライブラリで有効になっている、Bean 型のセットと修飾子のセットのデコレータの順序付きリストを返します。 |
ListSE<Interceptor<?>> | resolveInterceptors(InterceptionType type, AnnotationSE... interceptorBindings) 一連のインターセプターバインディングおよびインターセプトの型に対して有効なインターセプターの順序付きリストを返します。インターセプターは、 BeanManager が挿入されたクラス、または BeanManager が取得された JNDI 環境名前空間の Java EE コンポーネントを含むモジュールまたはライブラリで有効になります。 |
<T> SetSE<ObserverMethod<? super T>> | resolveObserverMethods(T event, AnnotationSE... qualifiers) イベントのオブザーバーメソッドの順序付けられたセットを返します。 |
void | validate(InjectionPoint injectionPoint) 特定のインジェクションポイントを検証します。 |
ExpressionFactory | wrapExpressionFactory(ExpressionFactory expressionFactory) |
ObjectSE getReference(Bean<?> bean, TypeSE beanType, CreationalContext<?> ctx)
Bean の特定の Bean および特定の Bean 型のコンテキスト参照を取得します。
bean
- Bean を表す Bean
オブジェクト beanType
- 返されるクライアントプロキシによって実装する必要がある Bean 型 ctx
- 作成されたスコープ Dependent
のオブジェクトを破棄するために使用できる CreationalContext
IllegalArgumentExceptionSE
- 指定された型が指定された Bean の Bean 型でない場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterDeploymentValidation
イベントが発生する前。ObjectSE getInjectableReference(InjectionPoint ij, CreationalContext<?> ctx)
特定のインジェクションポイントの注入可能な参照を取得します。
ij
- ゴール噴射点 ctx
- 作成されたスコープ Dependent
のオブジェクトを破棄するために使用できる CreationalContext
UnsatisfiedResolutionException
- 型安全な解決の結果、依存関係が満たされない場合 AmbiguousResolutionException
- 型安全な解決により、解決できないあいまいな依存関係が発生する IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterDeploymentValidation
イベントが発生する前。<T> CreationalContext<T> createCreationalContext(Contextual<T> contextual)
CreationalContext
のインスタンスを取得します。T
- インスタンスの型 contextual
- Contextual
、または非コンテキストオブジェクトの場合は null 値 CreationalContext
SetSE<Bean<?>> getBeans(TypeSE beanType, AnnotationSE... qualifiers)
BeanManager
が注入されたクラス、または JNDI 環境名前空間から BeanManager
が取得された Java EE コンポーネントを含むモジュールまたはライブラリに注入できる Bean のセットを返します。型安全な解決。修飾子が指定されていない場合は、デフォルトの修飾子が使用されます。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のみを返すことに注意してください。beanType
- 必要な Bean 型 qualifiers
- 必要な修飾子 IllegalArgumentExceptionSE
- 指定された型が型変数を表す場合 IllegalArgumentExceptionSE
- 同じ非反復修飾子型の 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- 修飾子型ではないアノテーションのインスタンスが指定された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。SetSE<Bean<?>> getBeans(StringSE name)
BeanManager
が注入されたクラスまたは JNDI 環境名前空間から BeanManager
が取得された Java EE コンポーネントを含むモジュールまたはライブラリで注入可能な Bean のセットを返します。名前解決。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のみを返すことに注意してください。name
- EL 名 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。Bean<?> getPassivationCapableBean(StringSE id)
PassivationCapable
Bean を返します。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のみを返すことに注意してください。id
- 識別子 PassivationCapable
を実装し、指定された識別子を持つ Bean
、そのような Bean がない場合は null 値 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。<X> Bean<? extends X> resolve(SetSE<Bean<? extends X>> beans)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のみを返すことに注意してください。X
- Bean の一般的な型 beans
- 指定された型の Bean のセット AmbiguousResolutionException
- あいまいな依存関係解決ルールが失敗した場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。void validate(InjectionPoint injectionPoint)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出されたインジェクションポイントのみを検証することに注意してください。injectionPoint
- 検証するインジェクションポイント InjectionException
- インジェクションポイントに関連付けられているデプロイ問題(たとえば、満たされていない、解決できないあいまいな依存関係)がある場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。void fireEvent(ObjectSE event, AnnotationSE... qualifiers)
このメソッドは CDI 2.0 から非推奨になり、代わりに getEvent()
を使用する必要があります。
event
- イベントオブジェクト qualifiers
- イベント修飾子 IllegalArgumentExceptionSE
- イベントオブジェクトの実行時型に型変数が含まれる場合 IllegalArgumentExceptionSE
- 同じ非反復修飾子型の 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- 修飾子型ではないアノテーションのインスタンスが指定された場合 IllegalArgumentExceptionSE
- イベントオブジェクトの実行時型がコンテナーライフサイクルイベントの型に割り当て可能な場合 ObserverException
- 通知されたオブザーバがチェックされた例外をスローすると、ラップされ、(チェックされていない)ObserverException
として再スローされます <T> SetSE<ObserverMethod<? super T>> resolveObserverMethods(T event, AnnotationSE... qualifiers)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出されたオブザーバーのみを返すことに注意してください。T
- イベントの型 event
- イベントオブジェクト qualifiers
- イベント修飾子 IllegalArgumentExceptionSE
- イベントオブジェクトの実行時型に型変数が含まれる場合 IllegalArgumentExceptionSE
- 同じ非反復修飾子型の 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- 修飾子型ではないアノテーションのインスタンスが指定された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。ListSE<Decorator<?>> resolveDecorators(SetSE<TypeSE> types, AnnotationSE... qualifiers)
BeanManager
が注入されたクラス、または BeanManager
が取得された JNDI 環境名前空間の Java EE コンポーネントを含むモジュールまたはライブラリで有効になっています。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出されたデコレータのみを返すことに注意してください。types
- 装飾された Bean の Bean 型のセット qualifiers
- 装飾された Bean によって宣言された修飾子 IllegalArgumentExceptionSE
- Bean 型のセットが空の場合 IllegalArgumentExceptionSE
- バインディング型ではないアノテーションが渡された場合 IllegalArgumentExceptionSE
- 同じバインディング型の 2 つのインスタンスが渡された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。ListSE<Interceptor<?>> resolveInterceptors(InterceptionType type, AnnotationSE... interceptorBindings)
BeanManager
が注入されたクラス、または BeanManager
が取得された JNDI 環境名前空間の Java EE コンポーネントを含むモジュールまたはライブラリで有効になっています。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが起動される前にコンテナーによって検出されたインターセプターのみを返すことに注意してください。type
- 遮断の型 interceptorBindings
- インターセプターのバインディング IllegalArgumentExceptionSE
- インターセプターバインディング型が指定されていない場合 IllegalArgumentExceptionSE
- 同じインターセプターバインディング型の 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- インターセプターバインディング型ではないアノテーションのインスタンスが指定された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。boolean isScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 boolean isNormalScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 true
boolean isPassivatingScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 true
boolean isQualifier(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 true
boolean isInterceptorBinding(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- テストするアノテーション true
boolean isStereotype(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 true
SetSE<AnnotationSE> getInterceptorBindingDefinition(ClassSE<? extends AnnotationSE> bindingType)
bindingType
- インターセプターバインディング型 SetSE<AnnotationSE> getStereotypeDefinition(ClassSE<? extends AnnotationSE> stereotype)
stereotype
- ステレオタイプ boolean areQualifiersEquivalent(AnnotationSE qualifier1, AnnotationSE qualifier2)
Nonbinding
でアノテーションが付けられたメンバーを考慮して、2 つの修飾子が型安全な解決の目的で同等と見なされるかどうかを判断します。qualifier1
- チェックする修飾子 qualifier2
- チェックする修飾子 boolean areInterceptorBindingsEquivalent(AnnotationSE interceptorBinding1, AnnotationSE interceptorBinding2)
Nonbinding
でアノテーションが付けられたメンバーを考慮して、2 つのインターセプターバインディングが型安全な解決の目的で同等と見なされるかどうかを判断します。interceptorBinding1
- チェックするインターセプターバインディング interceptorBinding2
- チェックするインターセプターバインディング int getQualifierHashCode(AnnotationSE qualifier)
Nonbinding
でアノテーションされたメンバーを無視して、修飾子のハッシュコードを決定します。qualifier
- 考慮すべき修飾子 int getInterceptorBindingHashCode(AnnotationSE interceptorBinding)
Nonbinding
でアノテーションされたメンバーを無視して、インターセプターバインディングのハッシュコードを決定します。interceptorBinding
- 考慮すべきインターセプターバインディング Context getContext(ClassSE<? extends AnnotationSE> scopeType)
scopeType
- 範囲 ContextNotActiveException
- 指定されたスコープのアクティブなコンテキストオブジェクトがない場合 IllegalArgumentExceptionSE
- 指定されたスコープに複数のアクティブなコンテキストオブジェクトがある場合 ELResolver getELResolver()
ELResolver
を返します。ELResolver
ExpressionFactory wrapExpressionFactory(ExpressionFactory expressionFactory)
MethodExpression
および ValueExpression
の作成を指定された ExpressionFactory
に委譲するラッパー ExpressionFactory
を返します。ラッパー ExpressionFactory
によって返される MethodExpression
または ValueExpression
を使用して UnifiedEL 式が評価される場合、コンテナーはスコープ Dependent
を持つオブジェクトの破棄を処理します。expressionFactory
- ラップする ExpressionFactory
ExpressionFactory
<T> AnnotatedType<T> createAnnotatedType(ClassSE<T> type)
AnnotatedType
を取得します。T
- クラスまたはインターフェース type
- Class
SE オブジェクト AnnotatedType
<T> InjectionTarget<T> createInjectionTarget(AnnotatedType<T> type)
指定された AnnotatedType
の InjectionTarget
を取得します。コンテナーは、実際の Java クラスの要素によって宣言されたアノテーションと型を無視し、代わりに Annotated
インターフェースを介して提供されるメタデータを使用します。
このメソッドは CDI 1.1 から非推奨になり、代わりに getInjectionTargetFactory(AnnotatedType)
を使用する必要があります。
T
- 型 type
- AnnotatedType
InjectionTarget
の実装 IllegalArgumentExceptionSE
- 型のインジェクションポイントに関連する定義エラーがある場合 <T> InjectionTargetFactory<T> getInjectionTargetFactory(AnnotatedType<T> annotatedType)
コンテナーが作成した InjectionTarget
インスタンスを提供する InjectionTargetFactory
の実装。
このファクトリをラップして、コンテナーで作成されたインジェクションターゲットに動作を追加できます。
T
- 型 annotatedType
- 注入ターゲットファクトリを作成するためのアノテーション付き型 InjectionTargetFactory
<X> ProducerFactory<X> getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean)
指定されたフィールドに対してコンテナーが作成した Producer
インスタンスを提供する ProducerFactory
の実装。
このファクトリをラップして、コンテナーで作成されたプロデューサーに動作を追加できます。
X
- 宣言型 field
- プロデューサーファクトリを作るためのフィールド declaringBean
- プロデューサーを宣言する Bean。プロデューサーが静的であるか、宣言オブジェクトが非コンテキストである場合、null になる可能性があります <X> ProducerFactory<X> getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean)
指定されたメソッドに対してコンテナーが作成した Producer
インスタンスを提供する ProducerFactory
の実装。
このファクトリをラップして、コンテナーで作成されたプロデューサーに動作を追加できます。
X
- Bean 型 method
- プロデューサーファクトリを作成する方法 declaringBean
- プロデューサーを宣言する Bean。プロデューサーが静的であるか、宣言オブジェクトが非コンテキストである場合、null になる可能性があります <T> BeanAttributes<T> createBeanAttributes(AnnotatedType<T> type)
AnnotatedType
の BeanAttributes
を取得します。コンテナーは、実際の Java クラスの要素によって宣言されたアノテーションと型を無視し、代わりに Annotated
インターフェースを介して提供されるメタデータを使用します。T
- 型 type
- AnnotatedType
InjectionTarget
の実装 BeanAttributes<?> createBeanAttributes(AnnotatedMember<?> type)
AnnotatedType
の BeanAttributes
を取得します。コンテナーは、実際の Java クラスの要素によって宣言されたアノテーションと型を無視し、代わりに Annotated
インターフェースを介して提供されるメタデータを使用します。type
- AnnotatedType
InjectionTarget
の実装 <T> Bean<T> createBean(BeanAttributes<T> attributes, ClassSE<T> beanClass, InjectionTargetFactory<T> injectionTargetFactory)
指定された BeanAttributes
、Bean クラス、InjectionTarget
の Bean
を取得します。
InjectionTarget
は、Bean のインスタンスを作成および破棄し、依存性注入とライフサイクルコールバックを実行し、Bean.getInjectionPoints()
の戻り値を決定します。InjectionTarget
は InjectionTargetFactory
から取得されます。getInjectionTargetFactory(AnnotatedType)
では、InjectionTarget
で作成されたコンテナーを使用できます。
T
- 型 attributes
- 返される Bean
の Bean 型、修飾子、スコープ、名前、ステレオタイプ、BeanAttributes.isAlternative()
と Bean.isNullable()
の戻り値を決定する BeanAttributes
beanClass
- Bean.getBeanClass()
の戻り値を決定するクラス injectionTargetFactory
- InjectionTarget
を取得するために使用される InjectionTargetFactory
Bean
の実装 <T,X> Bean<T> createBean(BeanAttributes<T> attributes, ClassSE<X> beanClass, ProducerFactory<X> producerFactory)
指定された BeanAttributes
、Bean クラス、Producer
の Bean
を取得します。
Producer
は、デコレータのインスタンスを作成および破棄し、Bean.getInjectionPoints()
の戻り値を決定します。Producer
は ProducerFactory
から取得されます。getProducerFactory(AnnotatedMethod, Bean)
または getProducerFactory(AnnotatedField, Bean)
では、Producer
で作成されたコンテナーを使用できます。
T
- 型 X
- 宣言する Bean の型 attributes
- 返される Bean
の Bean 型、修飾子、スコープ、名前、ステレオタイプ、BeanAttributes.isAlternative()
と Bean.isNullable()
の戻り値を決定する BeanAttributes
beanClass
- Bean.getClass()
の戻り値を決定するクラス producerFactory
- Producer
を取得するために使用される ProducerFactory
Bean
の実装 InjectionPoint createInjectionPoint(AnnotatedField<?> field)
AnnotatedField
の InjectionPoint
のコンテナー提供の実装を取得します。field
- 注入位置を定義する AnnotatedField
InjectionPoint
IllegalArgumentExceptionSE
- インジェクションポイントに関連する定義エラーがある場合 InjectionPoint createInjectionPoint(AnnotatedParameter<?> parameter)
AnnotatedParameter
の InjectionPoint
のコンテナー提供の実装を取得します。parameter
- 注入位置を定義する AnnotatedParameter
InjectionPoint
IllegalArgumentExceptionSE
- インジェクションポイントに関連する定義エラーがある場合 <T extends Extension> T getExtension(ClassSE<T> extensionClass)
META-INF/services
で宣言された Extension クラスのコンテナーのインスタンスを取得します。T
- 拡張機能の型 extensionClass
- 拡張クラスの型 IllegalArgumentExceptionSE
- コンテナーに特定のクラスのインスタンスがない場合 <T> InterceptionFactory<T> createInterceptionFactory(CreationalContext<T> ctx, ClassSE<T> clazz)
CreationalContext
と型の InterceptionFactory
を作成します。T
- このファクトリが動作するインスタンスの型 ctx
- InterceptionFactory
が作成する CreationalContext
clazz
- このファクトリが動作するインスタンスのクラス InterceptionFactory
Event<ObjectSE> getEvent()
java.lang.Object
および指定された修飾子 @Default
を持つイベントのインスタンスを返します。Event
組み込み Bean 要件を注入せずに、型安全な同期または非同期のイベント起動を可能にします。Object
および修飾子 @Default
である新しい Event
オブジェクト Instance<ObjectSE> createInstance()
Instance
オブジェクトを取得します。返された Instance
オブジェクトは、型安全解決のルールに従って、BeanManager
が注入されたクラスまたは JNDI 環境名前空間から BeanManager
が取得された Java EE コンポーネントを含むモジュールまたはライブラリで注入可能な Bean のインスタンスにのみアクセスできます。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドによって返される Instance
は、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のインスタンスにのみアクセスできることに注意してください。この Instance
で取得された従属スコープ Bean のインスタンスは、Instance.destroy(Object)
を呼び出すことによって明示的に破棄する必要があります。Instance.select(java.lang.annotation.Annotation...)
メソッドに修飾子が渡されない場合、@Default
修飾子が想定されます。Instance
オブジェクト IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterDeploymentValidation
イベントが発生する前。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.