Class ForwardingBeanManager
- java.lang.Object
-
- org.jboss.weld.util.ForwardingBeanManager
-
- All Implemented Interfaces:
BeanManager
,Serializable
- Direct Known Subclasses:
BeanManagerProxy
public abstract class ForwardingBeanManager extends Object implements BeanManager, Serializable
Forwarding implementation ofBeanManager
.- Author:
- Martin Kouba
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ForwardingBeanManager()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
areInterceptorBindingsEquivalent(Annotation interceptorBinding1, Annotation interceptorBinding2)
Determine if two interceptor bindings are considered equivalent for the purposes of typesafe resolution, taking into account any members annotated withNonbinding
.boolean
areQualifiersEquivalent(Annotation qualifier1, Annotation qualifier2)
Determine if two qualifiers are considered equivalent for the purposes of typesafe resolution, taking into account any members annotated withNonbinding
.<T> AnnotatedType<T>
createAnnotatedType(Class<T> type)
Obtain anAnnotatedType
that may be used to read the annotations of the given class or interface.<T> Bean<T>
createBean(BeanAttributes<T> attributes, Class<T> beanClass, InjectionTargetFactory<T> injectionTargetFactory)
<T,X>
Bean<T>createBean(BeanAttributes<T> attributes, Class<X> beanClass, ProducerFactory<X> producerFactory)
BeanAttributes<?>
createBeanAttributes(AnnotatedMember<?> type)
Obtains aBeanAttributes
for the givenAnnotatedType
.<T> BeanAttributes<T>
createBeanAttributes(AnnotatedType<T> type)
Obtains aBeanAttributes
for the givenAnnotatedType
.<T> CreationalContext<T>
createCreationalContext(Contextual<T> contextual)
Obtain an instance of aCreationalContext
for the given contextual type, or for a non-contextual object.InjectionPoint
createInjectionPoint(AnnotatedField<?> field)
Obtains a container provided implementation ofInjectionPoint
for the givenAnnotatedField
.InjectionPoint
createInjectionPoint(AnnotatedParameter<?> parameter)
Obtains a container provided implementation ofInjectionPoint
for the givenAnnotatedParameter
.<T> InjectionTarget<T>
createInjectionTarget(AnnotatedType<T> type)
Obtains anInjectionTarget
for the givenAnnotatedType
.Instance<Object>
createInstance()
Obtains anInstance
object to access to beans instances.<T> InterceptionFactory<T>
createInterceptionFactory(CreationalContext<T> ctx, Class<T> clazz)
Create anInterceptionFactory
for the givenCreationalContext
and type.abstract BeanManager
delegate()
boolean
equals(Object obj)
void
fireEvent(Object event, Annotation... qualifiers)
Fire an event and notify observers.Set<Bean<?>>
getBeans(Type beanType, Annotation... qualifiers)
Return the set of beans which have the given required type and qualifiers and are available for injection in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained, according to the rules of typesafe resolution.Set<Bean<?>>
getBeans(String name)
Return the set of beans which have the given EL name and are available for injection in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained, according to the rules of EL name resolution.Context
getContext(Class<? extends Annotation> scopeType)
Obtains an active context object for the given scope .jakarta.el.ELResolver
getELResolver()
Returns aELResolver
that resolves beans by EL name.Event<Object>
getEvent()
Returns an instance of Event with specified typejava.lang.Object
and specified qualifier@Default
It allows typesafe synchronous or asynchronous event firing without injection ofEvent
built-in bean requirement.<T extends Extension>
TgetExtension(Class<T> extensionClass)
Obtains the container's instance of an Extension class declared inMETA-INF/services
.Object
getInjectableReference(InjectionPoint ij, CreationalContext<?> ctx)
Obtains an injectable reference for a certain injection point.<T> InjectionTargetFactory<T>
getInjectionTargetFactory(AnnotatedType<T> annotatedType)
An implementation ofInjectionTargetFactory
that provides container createdInjectionTarget
instances.Set<Annotation>
getInterceptorBindingDefinition(Class<? extends Annotation> bindingType)
Obtains the set of meta-annotations for a certain interceptor binding type .int
getInterceptorBindingHashCode(Annotation interceptorBinding)
Determine the hash code of an interceptor binding, using the JDK algorithm for determining an annotation hash code, ignoring any members annotated withNonbinding
.Bean<?>
getPassivationCapableBean(String id)
Returns thePassivationCapable
bean with the given identifier.<X> ProducerFactory<X>
getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean)
An implementation ofProducerFactory
that provides container createdProducer
instances for the given field.<X> ProducerFactory<X>
getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean)
An implementation ofProducerFactory
that provides container createdProducer
instances for the given method.int
getQualifierHashCode(Annotation qualifier)
Determine the hash code of a qualifier, using the JDK algorithm for determining an annotation hash code, ignoring any members annotated withNonbinding
.Object
getReference(Bean<?> bean, Type beanType, CreationalContext<?> ctx)
Obtains a contextual reference for a certain bean and a certain bean type of the bean.Set<Annotation>
getStereotypeDefinition(Class<? extends Annotation> stereotype)
Obtains meta-annotations for a certain stereotype.int
hashCode()
boolean
isInterceptorBinding(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is an interceptor binding type .boolean
isNormalScope(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is a normal scope type.boolean
isPassivatingScope(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is a passivating scope type.boolean
isQualifier(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is a qualifier type.boolean
isScope(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is a scope type.boolean
isStereotype(Class<? extends Annotation> annotationType)
Test the given annotation type to determine if it is a stereotype.<X> Bean<? extends X>
resolve(Set<Bean<? extends X>> beans)
Apply the ambiguous dependency resolution rules to a set of beans.List<Decorator<?>>
resolveDecorators(Set<Type> types, Annotation... qualifiers)
Return an ordered list of decorators for a set of bean types and a set of qualifiers and which are enabled in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained.List<Interceptor<?>>
resolveInterceptors(InterceptionType type, Annotation... interceptorBindings)
Return an ordered list of enabled interceptors for a set of interceptor bindings and a type of interception and which are enabled in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained.<T> Set<ObserverMethod<? super T>>
resolveObserverMethods(T event, Annotation... qualifiers)
Return an ordered set of observer methods for an event.String
toString()
void
validate(InjectionPoint injectionPoint)
Validate a certain injection point.jakarta.el.ExpressionFactory
wrapExpressionFactory(jakarta.el.ExpressionFactory expressionFactory)
Returns a wrapperExpressionFactory
that delegatesMethodExpression
andValueExpression
creation to the givenExpressionFactory
.
-
-
-
Method Detail
-
delegate
public abstract BeanManager delegate()
-
getReference
public Object getReference(Bean<?> bean, Type beanType, CreationalContext<?> ctx)
Description copied from interface:BeanManager
Obtains a contextual reference for a certain bean and a certain bean type of the bean.
- Specified by:
getReference
in interfaceBeanManager
- Parameters:
bean
- theBean
object representing the beanbeanType
- a bean type that must be implemented by any client proxy that is returnedctx
- aCreationalContext
that may be used to destroy any object with scopeDependent
that is created- Returns:
- a contextual reference representing the bean
-
getInjectableReference
public Object getInjectableReference(InjectionPoint ij, CreationalContext<?> ctx)
Description copied from interface:BeanManager
Obtains an injectable reference for a certain injection point.
- Specified by:
getInjectableReference
in interfaceBeanManager
- Parameters:
ij
- the target injection pointctx
- aCreationalContext
that may be used to destroy any object with scopeDependent
that is created- Returns:
- the injectable reference
-
createCreationalContext
public <T> CreationalContext<T> createCreationalContext(Contextual<T> contextual)
Description copied from interface:BeanManager
Obtain an instance of aCreationalContext
for the given contextual type, or for a non-contextual object.- Specified by:
createCreationalContext
in interfaceBeanManager
- Type Parameters:
T
- type of the instance- Parameters:
contextual
- theContextual
, or a null value in the case of a non-contextual object- Returns:
- the new
CreationalContext
-
getBeans
public Set<Bean<?>> getBeans(Type beanType, Annotation... qualifiers)
Description copied from interface:BeanManager
Return the set of beans which have the given required type and qualifiers and are available for injection in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained, according to the rules of typesafe resolution. If no qualifiers are given, the default qualifier is assumed. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return beans discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
getBeans
in interfaceBeanManager
- Parameters:
beanType
- the required bean typequalifiers
- the required qualifiers- Returns:
- the resulting set of beans
-
getBeans
public Set<Bean<?>> getBeans(String name)
Description copied from interface:BeanManager
Return the set of beans which have the given EL name and are available for injection in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained, according to the rules of EL name resolution. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return beans discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
getBeans
in interfaceBeanManager
- Parameters:
name
- the EL name- Returns:
- the resulting set of beans
-
getPassivationCapableBean
public Bean<?> getPassivationCapableBean(String id)
Description copied from interface:BeanManager
Returns thePassivationCapable
bean with the given identifier. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return beans discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
getPassivationCapableBean
in interfaceBeanManager
- Parameters:
id
- the identifier- Returns:
- a
Bean
that implementsPassivationCapable
and has the given identifier, or a null value if there is no such bean
-
resolve
public <X> Bean<? extends X> resolve(Set<Bean<? extends X>> beans)
Description copied from interface:BeanManager
Apply the ambiguous dependency resolution rules to a set of beans. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return beans discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
resolve
in interfaceBeanManager
- Type Parameters:
X
- a common type of the beans- Parameters:
beans
- a set of beans of the given type- Returns:
- the resolved bean, or null if null or an empty set is passed
-
validate
public void validate(InjectionPoint injectionPoint)
Description copied from interface:BeanManager
Validate a certain injection point. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only validate injection points discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
validate
in interfaceBeanManager
- Parameters:
injectionPoint
- the injection point to validate
-
fireEvent
public void fireEvent(Object event, Annotation... qualifiers)
Description copied from interface:BeanManager
Fire an event and notify observers.This method is deprecated from CDI 2.0 and
BeanManager.getEvent()
should be used instead.- Specified by:
fireEvent
in interfaceBeanManager
- Parameters:
event
- the event objectqualifiers
- the event qualifiers
-
resolveObserverMethods
public <T> Set<ObserverMethod<? super T>> resolveObserverMethods(T event, Annotation... qualifiers)
Description copied from interface:BeanManager
Return an ordered set of observer methods for an event. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return observers discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
resolveObserverMethods
in interfaceBeanManager
- Type Parameters:
T
- the type of the event- Parameters:
event
- the event objectqualifiers
- the event qualifiers- Returns:
- the resulting set of observer methods
-
resolveDecorators
public List<Decorator<?>> resolveDecorators(Set<Type> types, Annotation... qualifiers)
Description copied from interface:BeanManager
Return an ordered list of decorators for a set of bean types and a set of qualifiers and which are enabled in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return decorators discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
resolveDecorators
in interfaceBeanManager
- Parameters:
types
- the set of bean types of the decorated beanqualifiers
- the qualifiers declared by the decorated bean- Returns:
- the resulting set of decorators
-
resolveInterceptors
public List<Interceptor<?>> resolveInterceptors(InterceptionType type, Annotation... interceptorBindings)
Description copied from interface:BeanManager
Return an ordered list of enabled interceptors for a set of interceptor bindings and a type of interception and which are enabled in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained. Note that when called during invocation of anAfterBeanDiscovery
event observer, this method will only return interceptors discovered by the container before theAfterBeanDiscovery
event is fired.- Specified by:
resolveInterceptors
in interfaceBeanManager
- Parameters:
type
- the type of the interceptioninterceptorBindings
- the interceptor bindings- Returns:
- the resulting set of interceptors
-
isScope
public boolean isScope(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is a scope type.- Specified by:
isScope
in interfaceBeanManager
- Parameters:
annotationType
- the annotation type- Returns:
- true if the annotation type is a scope type
-
isNormalScope
public boolean isNormalScope(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is a normal scope type.- Specified by:
isNormalScope
in interfaceBeanManager
- Parameters:
annotationType
- the annotation type- Returns:
true
if the annotation type is a normal scope type
-
isPassivatingScope
public boolean isPassivatingScope(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is a passivating scope type.- Specified by:
isPassivatingScope
in interfaceBeanManager
- Parameters:
annotationType
- the annotation type- Returns:
true
if the annotation type is a passivating scope type
-
isQualifier
public boolean isQualifier(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is a qualifier type.- Specified by:
isQualifier
in interfaceBeanManager
- Parameters:
annotationType
- the annotation type- Returns:
true
if the annotation type is a qualifier type
-
isInterceptorBinding
public boolean isInterceptorBinding(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is an interceptor binding type .- Specified by:
isInterceptorBinding
in interfaceBeanManager
- Parameters:
annotationType
- the annotation to test- Returns:
true
if the annotation type is a interceptor binding type
-
isStereotype
public boolean isStereotype(Class<? extends Annotation> annotationType)
Description copied from interface:BeanManager
Test the given annotation type to determine if it is a stereotype.- Specified by:
isStereotype
in interfaceBeanManager
- Parameters:
annotationType
- the annotation type- Returns:
true
if the annotation type is a stereotype
-
getInterceptorBindingDefinition
public Set<Annotation> getInterceptorBindingDefinition(Class<? extends Annotation> bindingType)
Description copied from interface:BeanManager
Obtains the set of meta-annotations for a certain interceptor binding type .- Specified by:
getInterceptorBindingDefinition
in interfaceBeanManager
- Parameters:
bindingType
- the interceptor binding type- Returns:
- the set of meta-annotations
-
getStereotypeDefinition
public Set<Annotation> getStereotypeDefinition(Class<? extends Annotation> stereotype)
Description copied from interface:BeanManager
Obtains meta-annotations for a certain stereotype.- Specified by:
getStereotypeDefinition
in interfaceBeanManager
- Parameters:
stereotype
- the stereotype- Returns:
- the set of meta-annotations
-
areQualifiersEquivalent
public boolean areQualifiersEquivalent(Annotation qualifier1, Annotation qualifier2)
Description copied from interface:BeanManager
Determine if two qualifiers are considered equivalent for the purposes of typesafe resolution, taking into account any members annotated withNonbinding
.- Specified by:
areQualifiersEquivalent
in interfaceBeanManager
- Parameters:
qualifier1
- a qualifier to checkqualifier2
- a qualifier to check- Returns:
- true if the two qualifiers are equivalent, otherwise false
-
areInterceptorBindingsEquivalent
public boolean areInterceptorBindingsEquivalent(Annotation interceptorBinding1, Annotation interceptorBinding2)
Description copied from interface:BeanManager
Determine if two interceptor bindings are considered equivalent for the purposes of typesafe resolution, taking into account any members annotated withNonbinding
.- Specified by:
areInterceptorBindingsEquivalent
in interfaceBeanManager
- Parameters:
interceptorBinding1
- an interceptor binding to checkinterceptorBinding2
- an interceptor binding to check- Returns:
- true if the two interceptor bindings are equivalent, otherwise false
-
getQualifierHashCode
public int getQualifierHashCode(Annotation qualifier)
Description copied from interface:BeanManager
Determine the hash code of a qualifier, using the JDK algorithm for determining an annotation hash code, ignoring any members annotated withNonbinding
.- Specified by:
getQualifierHashCode
in interfaceBeanManager
- Parameters:
qualifier
- the qualifier to consider- Returns:
- the hashCode for the qualifier
-
getInterceptorBindingHashCode
public int getInterceptorBindingHashCode(Annotation interceptorBinding)
Description copied from interface:BeanManager
Determine the hash code of an interceptor binding, using the JDK algorithm for determining an annotation hash code, ignoring any members annotated withNonbinding
.- Specified by:
getInterceptorBindingHashCode
in interfaceBeanManager
- Parameters:
interceptorBinding
- the interceptor binding to consider- Returns:
- the hashCode for the interceptor binding
-
getContext
public Context getContext(Class<? extends Annotation> scopeType)
Description copied from interface:BeanManager
Obtains an active context object for the given scope .- Specified by:
getContext
in interfaceBeanManager
- Parameters:
scopeType
- the scope- Returns:
- the context object
-
getELResolver
public jakarta.el.ELResolver getELResolver()
Description copied from interface:BeanManager
Returns aELResolver
that resolves beans by EL name.- Specified by:
getELResolver
in interfaceBeanManager
- Returns:
- the
ELResolver
-
wrapExpressionFactory
public jakarta.el.ExpressionFactory wrapExpressionFactory(jakarta.el.ExpressionFactory expressionFactory)
Description copied from interface:BeanManager
Returns a wrapperExpressionFactory
that delegatesMethodExpression
andValueExpression
creation to the givenExpressionFactory
. When a Unified EL expression is evaluated using aMethodExpression
orValueExpression
returned by the wrapperExpressionFactory
, the container handles destruction of objects with scopeDependent
.- Specified by:
wrapExpressionFactory
in interfaceBeanManager
- Parameters:
expressionFactory
- theExpressionFactory
to wrap- Returns:
- the wrapped
ExpressionFactory
-
createAnnotatedType
public <T> AnnotatedType<T> createAnnotatedType(Class<T> type)
Description copied from interface:BeanManager
Obtain anAnnotatedType
that may be used to read the annotations of the given class or interface.- Specified by:
createAnnotatedType
in interfaceBeanManager
- Type Parameters:
T
- the class or interface- Parameters:
type
- theClass
object- Returns:
- the
AnnotatedType
-
createInjectionTarget
public <T> InjectionTarget<T> createInjectionTarget(AnnotatedType<T> type)
Description copied from interface:BeanManager
Obtains an
InjectionTarget
for the givenAnnotatedType
. The container ignores the annotations and types declared by the elements of the actual Java class and uses the metadata provided via theAnnotated
interface instead.This method is deprecated from CDI 1.1 and
BeanManager.getInjectionTargetFactory(AnnotatedType)
should be used instead.- Specified by:
createInjectionTarget
in interfaceBeanManager
- Type Parameters:
T
- the type- Parameters:
type
- theAnnotatedType
- Returns:
- a container provided implementation of
InjectionTarget
-
createBeanAttributes
public <T> BeanAttributes<T> createBeanAttributes(AnnotatedType<T> type)
Description copied from interface:BeanManager
Obtains aBeanAttributes
for the givenAnnotatedType
. The container ignores the annotations and types declared by the elements of the actual Java class and uses the metadata provided via theAnnotated
interface instead.- Specified by:
createBeanAttributes
in interfaceBeanManager
- Type Parameters:
T
- the type- Parameters:
type
- theAnnotatedType
- Returns:
- a container provided implementation of
InjectionTarget
-
createBeanAttributes
public BeanAttributes<?> createBeanAttributes(AnnotatedMember<?> type)
Description copied from interface:BeanManager
Obtains aBeanAttributes
for the givenAnnotatedType
. The container ignores the annotations and types declared by the elements of the actual Java class and uses the metadata provided via theAnnotated
interface instead.- Specified by:
createBeanAttributes
in interfaceBeanManager
- Parameters:
type
- theAnnotatedType
- Returns:
- a container provided implementation of
InjectionTarget
-
createBean
public <T> Bean<T> createBean(BeanAttributes<T> attributes, Class<T> beanClass, InjectionTargetFactory<T> injectionTargetFactory)
Description copied from interface:BeanManager
Obtains a
Bean
for the givenBeanAttributes
, bean class andInjectionTarget
.The
InjectionTarget
creates and destroys instances of the bean, performs dependency injection and lifecycle callbacks, and determines the return value ofBean.getInjectionPoints()
. TheInjectionTarget
is obtained from theInjectionTargetFactory
.BeanManager.getInjectionTargetFactory(AnnotatedType)
allows use of a container createdInjectionTarget
.- Specified by:
createBean
in interfaceBeanManager
- Type Parameters:
T
- the type- Parameters:
attributes
- aBeanAttributes
which determines the bean types, qualifiers, scope, name and stereotypes of the returnedBean
, and the return values ofBeanAttributes.isAlternative()
andBean.isNullable()
beanClass
- a class, which determines the return value ofBean.getBeanClass()
injectionTargetFactory
- anInjectionTargetFactory
, used to obtain anInjectionTarget
- Returns:
- a container provided implementation of
Bean
-
createBean
public <T,X> Bean<T> createBean(BeanAttributes<T> attributes, Class<X> beanClass, ProducerFactory<X> producerFactory)
Description copied from interface:BeanManager
Obtains a
Bean
for the givenBeanAttributes
, bean class andProducer
.The
Producer
creates and destroys instances of the decorator, and determines the return value ofBean.getInjectionPoints()
. TheProducer
is obtained from theProducerFactory
.BeanManager.getProducerFactory(AnnotatedMethod, Bean)
orBeanManager.getProducerFactory(AnnotatedField, Bean)
allows use of a container createdProducer
.- Specified by:
createBean
in interfaceBeanManager
- Type Parameters:
T
- the typeX
- the type of the declaring bean- Parameters:
attributes
- aBeanAttributes
which determines the bean types, qualifiers, scope, name and stereotypes of the returnedBean
, and the return values ofBeanAttributes.isAlternative()
andBean.isNullable()
beanClass
- a class, which determines the return value ofBean.getClass()
producerFactory
- aProducerFactory
, used to obtain aProducer
- Returns:
- a container provided implementation of
Bean
-
createInjectionPoint
public InjectionPoint createInjectionPoint(AnnotatedField<?> field)
Description copied from interface:BeanManager
Obtains a container provided implementation ofInjectionPoint
for the givenAnnotatedField
.- Specified by:
createInjectionPoint
in interfaceBeanManager
- Parameters:
field
- theAnnotatedField
defining the injection point- Returns:
- the container provided
InjectionPoint
-
createInjectionPoint
public InjectionPoint createInjectionPoint(AnnotatedParameter<?> parameter)
Description copied from interface:BeanManager
Obtains a container provided implementation ofInjectionPoint
for the givenAnnotatedParameter
.- Specified by:
createInjectionPoint
in interfaceBeanManager
- Parameters:
parameter
- theAnnotatedParameter
defining the injection point- Returns:
- the container provided
InjectionPoint
-
getExtension
public <T extends Extension> T getExtension(Class<T> extensionClass)
Description copied from interface:BeanManager
Obtains the container's instance of an Extension class declared inMETA-INF/services
.- Specified by:
getExtension
in interfaceBeanManager
- Type Parameters:
T
- the type of the extension- Parameters:
extensionClass
- the type of the extension class- Returns:
- the extension instance
-
createInterceptionFactory
public <T> InterceptionFactory<T> createInterceptionFactory(CreationalContext<T> ctx, Class<T> clazz)
Description copied from interface:BeanManager
Create anInterceptionFactory
for the givenCreationalContext
and type.- Specified by:
createInterceptionFactory
in interfaceBeanManager
- Type Parameters:
T
- type of the instance this factory will work on- Parameters:
ctx
-CreationalContext
for theInterceptionFactory
to createclazz
- class of the instance this factory will work on- Returns:
- a new
InterceptionFactory
to add services on on instances of T
-
getEvent
public Event<Object> getEvent()
Description copied from interface:BeanManager
Returns an instance of Event with specified typejava.lang.Object
and specified qualifier@Default
It allows typesafe synchronous or asynchronous event firing without injection ofEvent
built-in bean requirement.- Specified by:
getEvent
in interfaceBeanManager
- Returns:
- a new
Event
object whose event type isObject
and qualifier@Default
-
getInjectionTargetFactory
public <T> InjectionTargetFactory<T> getInjectionTargetFactory(AnnotatedType<T> annotatedType)
Description copied from interface:BeanManager
An implementation of
InjectionTargetFactory
that provides container createdInjectionTarget
instances.This factory can be wrapped to add behavior to container created injection targets.
- Specified by:
getInjectionTargetFactory
in interfaceBeanManager
- Type Parameters:
T
- the type- Parameters:
annotatedType
- the annotated type to create the injection target factory for- Returns:
- an
InjectionTargetFactory
-
getProducerFactory
public <X> ProducerFactory<X> getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean)
Description copied from interface:BeanManager
An implementation of
ProducerFactory
that provides container createdProducer
instances for the given field.This factory can be wrapped to add behavior to container created producers.
- Specified by:
getProducerFactory
in interfaceBeanManager
- Type Parameters:
X
- the declaring type- Parameters:
field
- the field to create the producer factory fordeclaringBean
- the bean declaring the producer. May be null if the producer is static or the declaring object is non-contextual- Returns:
- the producer factory for the field
-
getProducerFactory
public <X> ProducerFactory<X> getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean)
Description copied from interface:BeanManager
An implementation of
ProducerFactory
that provides container createdProducer
instances for the given method.This factory can be wrapped to add behavior to container created producers.
- Specified by:
getProducerFactory
in interfaceBeanManager
- Type Parameters:
X
- bean type- Parameters:
method
- the method to create the producer factory fordeclaringBean
- the bean declaring the producer. May be null if the producer is static or the declaring object is non-contextual- Returns:
- the producer factory for the method
-
createInstance
public Instance<Object> createInstance()
Description copied from interface:BeanManager
Obtains anInstance
object to access to beans instances. The returnedInstance
object can only access instances of beans that are available for injection in the module or library containing the class into which theBeanManager
was injected or the Java EE component from whose JNDI environment namespace theBeanManager
was obtained, according to the rules of typesafe resolution. Note that when called during invocation of anAfterBeanDiscovery
event observer, theInstance
returned by this method will only give access to instances of beans discovered by the container before theAfterBeanDiscovery
event is fired. Instances of dependent scoped beans obtained with thisInstance
must be explicitly destroyed by callingInstance.destroy(Object)
If no qualifier is passed toInstance.select(java.lang.annotation.Annotation...)
method, the@Default
qualifier is assumed.- Specified by:
createInstance
in interfaceBeanManager
- Returns:
- an
Instance
object to request beans instances
-
-