public interface BeanManager
ポータブル拡張機能がコンテナーと直接やり取りできるようにします。Bean のコンテキスト参照を取得するための操作と、ポータブル拡張機能を使用するための他の多くの操作を提供します。
Bean は、それを注入することで BeanManager のインスタンスを取得できます。
@Inject BeanManager manager;
Jakarta 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, javax.enterprise.context.spi.CreationalContext)
,getInjectableReference(InjectionPoint, javax.enterprise.context.spi.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 名を持ち、 BeanManager がインジェクトされたクラスを含むモジュールまたはライブラリ、または JNDI 環境の名前空間からの Jakarta EE コンポーネントでインジェクションに使用できる Bean のセットを返します。EL の名前解決の規則に従って、BeanManager が取得されました。 |
SetSE<Bean<?>> | getBeans(TypeSE beanType, AnnotationSE... qualifiers) 指定された必要な型と修飾子を持ち、 BeanManager が挿入されたクラスを含むモジュールまたはライブラリ、または JNDI 環境の名前空間が |
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) |
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) Bean 型のセットと修飾子のセットのデコレーターの順序付きリストを返します。これらは、BeanManager が注入されたクラスを含むモジュールまたはライブラリ、または JNDI 環境名前空間から BeanManager が取得された Jakarta EE コンポーネントで有効になります。 |
ListSE<Interceptor<?>> | resolveInterceptors(InterceptionType type, AnnotationSE... interceptorBindings) 一連のインターセプターバインディングとインターセプトの型に対して有効になっているインターセプターの順序付きリストを返します。インターセプターは、BeanManager が注入されたクラスまたは Jakarta EE コンポーネントから BeanManager が取得された JNDI 環境の名前空間を含むモジュールまたはライブラリで有効になります。 |
<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
オブジェクト 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
のインスタンスを取得します。contextual
- Contextual
、または非コンテキストオブジェクトの場合は null 値 CreationalContext
SetSE<Bean<?>> getBeans(TypeSE beanType, AnnotationSE... qualifiers)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のみを返すことに注意してください。beanType
- 必要な Bean 型 qualifiers
- 必要な修飾子 IllegalArgumentExceptionSE
- 指定された型が型変数を表す場合 IllegalArgumentExceptionSE
- 同じ非反復修飾子タイプの 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- 修飾子タイプではないアノテーションのインスタンスが指定された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。SetSE<Bean<?>> getBeans(StringSE name)
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)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出されたデコレーターのみを返すことに注意してください。types
- 装飾された Bean の Bean 型のセット qualifiers
- 装飾された Bean によって宣言された修飾子 IllegalArgumentExceptionSE
- Bean 型のセットが空の場合 IllegalArgumentExceptionSE
- バインディングタイプではないアノテーションが渡された場合 IllegalArgumentExceptionSE
- 同じバインディングタイプの 2 つのインスタンスが渡された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。ListSE<Interceptor<?>> resolveInterceptors(InterceptionType type, AnnotationSE... interceptorBindings)
AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドは、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出されたインターセプターのみを返すことに注意してください。type
- 遮断のタイプ interceptorBindings
- インターセプターのバインディング IllegalArgumentExceptionSE
- インターセプターバインディングタイプが指定されていない場合 IllegalArgumentExceptionSE
- 同じインターセプターバインディングタイプの 2 つのインスタンスが指定されている場合 IllegalArgumentExceptionSE
- インターセプターバインディングタイプではないアノテーションのインスタンスが指定された場合 IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterBeanDiscovery
イベントが発生する前。boolean isScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 boolean isNormalScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 boolean isPassivatingScope(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 boolean isQualifier(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 boolean isInterceptorBinding(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- テストするアノテーション boolean isStereotype(ClassSE<? extends AnnotationSE> annotationType)
annotationType
- アノテーション型 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
の実装。
このファクトリをラップして、コンテナーで作成されたインジェクションターゲットに動作を追加できます。
annotatedType
- 注入ターゲットファクトリを作成するためのアノテーション付きタイプ InjectionTargetFactory
<X> ProducerFactory<X> getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean)
指定されたフィールドに対してコンテナーが作成した Producer
インスタンスを提供する ProducerFactory
の実装。
このファクトリをラップして、コンテナーで作成されたプロデューサーに動作を追加できます。
field
- 生産者ファクトリを作るためのフィールド declaringBean
- プロデューサーを宣言する Bean。プロデューサーが静的であるか、宣言オブジェクトが非コンテキストである場合、null になる可能性があります <X> ProducerFactory<X> getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean)
指定されたメソッドに対してコンテナーが作成した Producer
インスタンスを提供する ProducerFactory
の実装。
このファクトリをラップして、コンテナーで作成されたプロデューサーに動作を追加できます。
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()
Event
組み込みの Bean 要件を挿入せずに、型セーフな同期または非同期のイベントを発生させることができます。Event
オブジェクト Instance<ObjectSE> createInstance()
Instance
オブジェクトを取得します。返された Instance オブジェクトは、 BeanManager が注入されたクラスまたは JNDI の Jakarta EE コンポーネントを含むモジュールまたはライブラリで、注入に使用できる Bean のインスタンスにのみアクセスできます。型セーフ解決のルールに従って、環境名前空間 BeanManager が取得されます。AfterBeanDiscovery
イベントオブザーバーの呼び出し中に呼び出された場合、このメソッドによって返される Instance は、AfterBeanDiscovery
イベントが発生する前にコンテナーによって検出された Bean のインスタンスにのみアクセスできることに注意してください。この Instance で取得された従属スコープ Bean のインスタンスは、Instance.destroy(Object)
を呼び出すことによって明示的に破棄する必要があります。Instance.select(java.lang.annotation.Annotation...)
メソッドに修飾子が渡されない場合、 @Default 修飾子が想定されます。Instance
オブジェクト IllegalStateExceptionSE
- アプリケーションの初期化中に呼び出された場合、AfterDeploymentValidation
イベントが発生する前。Copyright © 2019 Eclipse Foundation.
Use is subject to license terms.