public class BeanManagerImpl extends java.lang.Object implements WeldManager, java.io.Serializable
Modifier and Type | Method and Description |
---|---|
void |
addAccessibleBeanManager(BeanManagerImpl accessibleBeanManager) |
void |
addBean(Bean<?> bean) |
void |
addBeans(java.util.Collection<? extends Bean<?>> beans)
Optimization which modifies CopyOnWrite structures only once instead of once for every bean.
|
void |
addContext(Context context) |
void |
addDecorator(Decorator<?> bean) |
void |
addInterceptor(Interceptor<?> bean) |
void |
addObserver(ObserverMethod<?> observer)
Does the actual observer registration
|
boolean |
areInterceptorBindingsEquivalent(java.lang.annotation.Annotation interceptorBinding1,
java.lang.annotation.Annotation interceptorBinding2)
Determine if two interceptor bindings are considered equivalent for the purposes of typesafe resolution, taking into
account any members annotated with
Nonbinding . |
boolean |
areQualifiersEquivalent(java.lang.annotation.Annotation qualifier1,
java.lang.annotation.Annotation qualifier2)
Determine if two qualifiers are considered equivalent for the purposes of typesafe resolution, taking into account any
members annotated with
Nonbinding . |
void |
cleanup() |
void |
cleanupAfterBoot()
Clear the bean set that is only used to make sure that no duplicate beans are added.
|
BeanManagerImpl |
createActivity()
Create a new child activity.
|
<T> AnnotatedType<T> |
createAnnotatedType(java.lang.Class<T> type)
Obtain an
AnnotatedType that may be used to read the annotations of the given class or interface. |
<T> Bean<T> |
createBean(BeanAttributes<T> attributes,
java.lang.Class<T> beanClass,
InjectionTargetFactory<T> injectionTargetFactory)
|
<T,X> Bean<T> |
createBean(BeanAttributes<T> attributes,
java.lang.Class<X> beanClass,
ProducerFactory<X> producerFactory)
|
BeanAttributes<?> |
createBeanAttributes(AnnotatedMember<?> member)
Obtains a
BeanAttributes for the given AnnotatedType . |
<T> BeanAttributes<T> |
createBeanAttributes(AnnotatedType<T> type)
Obtains a
BeanAttributes for the given AnnotatedType . |
<T> WeldCreationalContext<T> |
createCreationalContext(Contextual<T> contextual)
Obtain an instance of a
CreationalContext for the given
contextual type, or for a non-contextual object. |
<T> EnhancedAnnotatedType<T> |
createEnhancedAnnotatedType(java.lang.Class<T> type) |
FieldInjectionPointAttributes<?,?> |
createInjectionPoint(AnnotatedField<?> field)
Obtains a container provided implementation of
InjectionPoint for the given AnnotatedField . |
ParameterInjectionPointAttributes<?,?> |
createInjectionPoint(AnnotatedParameter<?> parameter)
Obtains a container provided implementation of
InjectionPoint for the given AnnotatedParameter . |
<T> InjectionTarget<T> |
createInjectionTarget(AnnotatedType<T> type)
Obtains an
InjectionTarget for the given AnnotatedType . |
<T> InjectionTarget<T> |
createInjectionTarget(EjbDescriptor<T> descriptor)
The injection target for the given EJB, or null if Weld was not given this descriptor in the deployment.
|
<T> WeldInjectionTargetBuilder<T> |
createInjectionTargetBuilder(AnnotatedType<T> type)
Returns a new instance of
WeldInjectionTargetBuilder which can be used to create a new WeldInjectionTarget for the specified type. |
boolean |
equals(java.lang.Object obj) |
java.util.Set<QualifierInstance> |
extractInterceptorBindingsForQualifierInstance(java.lang.Iterable<QualifierInstance> annotations) |
void |
fireEvent(java.lang.Object event,
java.lang.annotation.Annotation... qualifiers)
Fires an event object with given event object for given bindings
|
<X> InjectionTarget<X> |
fireProcessInjectionTarget(AnnotatedType<X> annotatedType)
Fire a ProcessInjectionTarget event for the given type.
|
<X> InjectionTarget<X> |
fireProcessInjectionTarget(AnnotatedType<X> annotatedType,
InjectionTarget<X> injectionTarget)
Fire a ProcessInjectionTarget event for the given type.
|
java.lang.Iterable<Bean<?>> |
getAccessibleBeans() |
java.lang.Iterable<Decorator<?>> |
getAccessibleDecorators() |
java.lang.Iterable<Interceptor<?>> |
getAccessibleInterceptors() |
ObserverNotifier |
getAccessibleLenientObserverNotifier()
Get the lenient observer notifier for accessible observer methods.
|
java.util.HashSet<BeanManagerImpl> |
getAccessibleManagers() |
java.lang.Iterable<java.lang.String> |
getAccessibleNamespaces() |
<T> SessionBean<T> |
getBean(EjbDescriptor<T> descriptor)
Get the Bean object for the given EJB, or null if Weld was not given this descriptor in the deployment.
|
<T> Bean<T> |
getBean(Resolvable resolvable) |
TypeSafeBeanResolver |
getBeanResolver()
Get the web bean resolver.
|
java.util.List<Bean<?>> |
getBeans()
The beans registered with the Web Bean manager which are resolvable.
|
java.util.Set<Bean<?>> |
getBeans(InjectionPoint injectionPoint) |
java.util.Set<Bean<?>> |
getBeans(java.lang.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 the BeanManager was injected or the Java EE component from whose JNDI environment namespace
the BeanManager was obtained, according to the rules of EL name resolution.
|
java.util.Set<Bean<?>> |
getBeans(java.lang.reflect.Type beanType,
java.lang.annotation.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 the BeanManager was injected or the Java EE component from whose JNDI
environment namespace the BeanManager was obtained, according to the rules of typesafe resolution.
|
java.util.Set<Bean<?>> |
getBeans(java.lang.reflect.Type beanType,
java.util.Set<java.lang.annotation.Annotation> qualifiers) |
java.util.concurrent.atomic.AtomicInteger |
getChildIds() |
ClientProxyProvider |
getClientProxyProvider() |
ContainerLifecycleEvents |
getContainerLifecycleEvents() |
Context |
getContext(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
Gets an active context of the given scope.
|
java.lang.String |
getContextId() |
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.util.List<Context>> |
getContexts() |
BeanManagerImpl |
getCurrent() |
TypeSafeDecoratorResolver |
getDecoratorResolver()
Get the decorator resolver.
|
java.util.List<Decorator<?>> |
getDecorators() |
<T> EjbDescriptor<T> |
getEjbDescriptor(java.lang.String beanName)
Get the EjbDescriptor for the given ejb name
|
ELResolver |
getELResolver()
Returns a
ELResolver that resolves beans by EL name. |
ModuleEnablement |
getEnabled()
Enabled Alternatives, Interceptors and Decorators
|
java.util.Map<EjbDescriptor<?>,SessionBean<?>> |
getEnterpriseBeans()
Gets the class-mapped beans.
|
<T extends Extension> |
getExtension(java.lang.Class<T> extensionClass)
Obtains the container's instance of an Extension class declared in
META-INF/services . |
ObserverNotifier |
getGlobalLenientObserverNotifier()
Get the lenient global observer notifier.
|
ObserverNotifier |
getGlobalStrictObserverNotifier()
Get the Strict global observer notifier.
|
java.lang.String |
getId()
The ID of the manager, identical to the ID provided by the BDA
|
java.lang.Object |
getInjectableReference(InjectionPoint injectionPoint,
Bean<?> resolvedBean,
CreationalContext<?> creationalContext)
Get a reference, registering the injection point used.
|
java.lang.Object |
getInjectableReference(InjectionPoint injectionPoint,
CreationalContext<?> creationalContext)
Obtains an injectable reference for a certain injection point.
|
<T> WeldInjectionTargetFactory<T> |
getInjectionTargetFactory(AnnotatedType<T> type)
Creates an
InjectionTargetFactory for a given type. |
java.util.Set<java.lang.annotation.Annotation> |
getInterceptorBindingDefinition(java.lang.Class<? extends java.lang.annotation.Annotation> bindingType)
Obtains the set of meta-annotations for a certain interceptor binding
type .
|
int |
getInterceptorBindingHashCode(java.lang.annotation.Annotation interceptorBinding)
Determine the hash code of an interceptor binding, using the JDK algorithm for determining an annotation hash code,
ignoring any members annotated with
Nonbinding . |
InterceptorMetadataReader |
getInterceptorMetadataReader() |
java.util.concurrent.ConcurrentMap<SlimAnnotatedType<?>,InterceptionModel> |
getInterceptorModelRegistry() |
TypeSafeInterceptorResolver |
getInterceptorResolver() |
java.util.List<Interceptor<?>> |
getInterceptors() |
<T> InjectionTargetFactoryImpl<T> |
getLocalInjectionTargetFactory(AnnotatedType<T> type)
Creates an
InjectionTargetFactory for a given type. |
NameBasedResolver |
getNameBasedResolver() |
protected java.util.List<java.lang.String> |
getNamespaces() |
java.util.List<ObserverMethod<?>> |
getObservers() |
Bean<?> |
getPassivationCapableBean(BeanIdentifier identifier) |
Bean<?> |
getPassivationCapableBean(java.lang.String id)
Returns the
PassivationCapable bean with the given identifier. |
<X> FieldProducerFactory<X> |
getProducerFactory(AnnotatedField<? super X> field,
Bean<X> declaringBean)
An implementation of
ProducerFactory that provides container created Producer instances for the given
field. |
<X> MethodProducerFactory<X> |
getProducerFactory(AnnotatedMethod<? super X> method,
Bean<X> declaringBean)
An implementation of
ProducerFactory that provides container created Producer instances for the given
method. |
int |
getQualifierHashCode(java.lang.annotation.Annotation qualifier)
Determine the hash code of a qualifier, using the JDK algorithm for determining an annotation hash code, ignoring any
members annotated with
Nonbinding . |
java.lang.Object |
getReference(Bean<?> bean,
java.lang.reflect.Type requestedType,
CreationalContext<?> creationalContext)
Obtains a contextual reference for a certain bean and a certain bean type of the bean.
|
java.lang.Object |
getReference(Bean<?> bean,
java.lang.reflect.Type requestedType,
CreationalContext<?> creationalContext,
boolean noProxy) |
java.lang.Object |
getReference(InjectionPoint injectionPoint,
Bean<?> resolvedBean,
CreationalContext<?> creationalContext)
Deprecated.
|
Namespace |
getRootNamespace() |
ServiceRegistry |
getServices()
Get the services registered for this manager
|
java.util.Set<java.lang.annotation.Annotation> |
getStereotypeDefinition(java.lang.Class<? extends java.lang.annotation.Annotation> stereotype)
Obtains meta-annotations for a certain stereotype.
|
Context |
getUnwrappedContext(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType) |
int |
hashCode() |
Instance<java.lang.Object> |
instance() |
<X> BeanAttributes<?> |
internalCreateBeanAttributes(AnnotatedMember<X> member) |
boolean |
isBeanEnabled(Bean<?> bean) |
boolean |
isContextActive(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
Indicates whether there is an active context for a given scope.
|
boolean |
isInterceptorBinding(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is an interceptor
binding type .
|
boolean |
isNormalScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is a normal scope type.
|
boolean |
isPassivatingScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is a passivating scope type.
|
boolean |
isQualifier(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is a qualifier type.
|
boolean |
isScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is a scope type.
|
boolean |
isStereotype(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
Test the given annotation type to determine if it is a stereotype.
|
static BeanManagerImpl |
newManager(BeanManagerImpl rootManager,
java.lang.String id,
ServiceRegistry services) |
static BeanManagerImpl |
newRootManager(java.lang.String contextId,
java.lang.String id,
ServiceRegistry serviceRegistry)
Create a new, root, manager
|
protected java.lang.Object |
readResolve() |
protected void |
registerBeanNamespace(Bean<?> bean) |
<X> Bean<? extends X> |
resolve(java.util.Set<Bean<? extends X>> beans)
Apply the ambiguous dependency resolution rules to a set of beans.
|
java.util.List<Decorator<?>> |
resolveDecorators(java.util.Set<java.lang.reflect.Type> types,
java.lang.annotation.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 the BeanManager was injected or the Java EE
component from whose JNDI environment namespace the BeanManager was obtained.
|
java.util.List<Decorator<?>> |
resolveDecorators(java.util.Set<java.lang.reflect.Type> types,
java.util.Set<java.lang.annotation.Annotation> qualifiers) |
java.util.List<Interceptor<?>> |
resolveInterceptors(InterceptionType type,
java.lang.annotation.Annotation... interceptorBindings)
Resolves a list of interceptors based on interception type and interceptor
bindings.
|
java.util.List<Interceptor<?>> |
resolveInterceptors(InterceptionType type,
java.util.Collection<java.lang.annotation.Annotation> interceptorBindings)
Resolves a list of interceptors based on interception type and interceptor
bindings.
|
<T> java.util.Set<ObserverMethod<? super T>> |
resolveObserverMethods(T event,
java.lang.annotation.Annotation... bindings)
Return the set of observers for an event.
|
<T> java.util.List<ObserverMethod<? super T>> |
resolveObserverMethodsInOrder(T event,
java.lang.annotation.Annotation... bindings) |
BeanManagerImpl |
setCurrent(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
Associate an activity with the current context for a normal scope
|
void |
setEnabled(ModuleEnablement enabled) |
java.lang.String |
toString()
Gets a string representation
|
BeanManagerImpl |
unwrap() |
void |
validate(InjectionPoint ij)
Validate a certain injection point.
|
ExpressionFactory |
wrapExpressionFactory(ExpressionFactory expressionFactory)
Returns a wrapper
ExpressionFactory that delegates MethodExpression and
ValueExpression creation to the given ExpressionFactory . |
public static BeanManagerImpl newRootManager(java.lang.String contextId, java.lang.String id, ServiceRegistry serviceRegistry)
serviceRegistry
- public static BeanManagerImpl newManager(BeanManagerImpl rootManager, java.lang.String id, ServiceRegistry services)
public java.lang.String getContextId()
public void addAccessibleBeanManager(BeanManagerImpl accessibleBeanManager)
public java.util.HashSet<BeanManagerImpl> getAccessibleManagers()
public void addBean(Bean<?> bean)
public void addBeans(java.util.Collection<? extends Bean<?>> beans)
beans
- public void addDecorator(Decorator<?> bean)
public <T> java.util.Set<ObserverMethod<? super T>> resolveObserverMethods(T event, java.lang.annotation.Annotation... bindings)
BeanManager
AfterBeanDiscovery
event observer,
this method will only return observers discovered by the container before the AfterBeanDiscovery
event is fired.resolveObserverMethods
in interface BeanManager
T
- the type of the eventevent
- the event objectbindings
- the event qualifierspublic <T> java.util.List<ObserverMethod<? super T>> resolveObserverMethodsInOrder(T event, java.lang.annotation.Annotation... bindings)
public void addInterceptor(Interceptor<?> bean)
public ModuleEnablement getEnabled()
public void setEnabled(ModuleEnablement enabled)
public boolean isBeanEnabled(Bean<?> bean)
public java.util.Set<Bean<?>> getBeans(java.lang.reflect.Type beanType, java.lang.annotation.Annotation... qualifiers)
BeanManager
AfterBeanDiscovery
event observer,
this method will only return beans discovered by the container before the AfterBeanDiscovery
event is fired.getBeans
in interface BeanManager
beanType
- the required bean typequalifiers
- the required qualifierspublic java.util.Set<Bean<?>> getBeans(java.lang.reflect.Type beanType, java.util.Set<java.lang.annotation.Annotation> qualifiers)
public java.util.Set<Bean<?>> getBeans(InjectionPoint injectionPoint)
protected void registerBeanNamespace(Bean<?> bean)
public java.util.Map<EjbDescriptor<?>,SessionBean<?>> getEnterpriseBeans()
public java.util.List<Bean<?>> getBeans()
public java.util.List<Decorator<?>> getDecorators()
public java.util.List<Interceptor<?>> getInterceptors()
public java.lang.Iterable<Bean<?>> getAccessibleBeans()
public java.lang.Iterable<Interceptor<?>> getAccessibleInterceptors()
public java.lang.Iterable<Decorator<?>> getAccessibleDecorators()
public void addContext(Context context)
public void addObserver(ObserverMethod<?> observer)
observer
- =public void fireEvent(java.lang.Object event, java.lang.annotation.Annotation... qualifiers)
fireEvent
in interface BeanManager
event
- The event object to pass alongqualifiers
- The binding types to matchBeanManager.fireEvent(java.lang.Object,
java.lang.annotation.Annotation[])
public Context getContext(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
getContext
in interface BeanManager
scopeType
- The scope to matchIllegalStateException
- if there are multiple active scopes for a given contextBeanManager.getContext(java.lang.Class)
public Context getUnwrappedContext(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
public boolean isContextActive(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
scopeType
- IllegalStateException
- if there are multiple active scopes for a given contextpublic java.lang.Object getReference(Bean<?> bean, java.lang.reflect.Type requestedType, CreationalContext<?> creationalContext, boolean noProxy)
public java.lang.Object getReference(Bean<?> bean, java.lang.reflect.Type requestedType, CreationalContext<?> creationalContext)
BeanManager
Obtains a contextual reference for a certain bean and a certain bean type of the bean.
getReference
in interface BeanManager
bean
- the Bean
object representing the beanrequestedType
- a bean type that must be implemented by any client proxy that is returnedcreationalContext
- a CreationalContext
that may be used to destroy any object with scope
Dependent
that is created@Deprecated public java.lang.Object getReference(InjectionPoint injectionPoint, Bean<?> resolvedBean, CreationalContext<?> creationalContext)
getInjectableReference(InjectionPoint, Bean, CreationalContext)
insteadgetInjectableReference(InjectionPoint, Bean, CreationalContext)
instead.injectionPoint
- resolvedBean
- creationalContext
- public java.lang.Object getInjectableReference(InjectionPoint injectionPoint, Bean<?> resolvedBean, CreationalContext<?> creationalContext)
injectionPoint
- the injection point to registerresolvedBean
- the bean to get a reference tocreationalContext
- the creationalContextpublic java.lang.Object getInjectableReference(InjectionPoint injectionPoint, CreationalContext<?> creationalContext)
BeanManager
Obtains an injectable reference for a certain injection point.
getInjectableReference
in interface BeanManager
injectionPoint
- the target injection pointcreationalContext
- a CreationalContext
that may be used to destroy any object with scope
Dependent
that is createdpublic <T> Bean<T> getBean(Resolvable resolvable)
public java.util.Set<Bean<?>> getBeans(java.lang.String name)
BeanManager
AfterBeanDiscovery
event observer,
this method will only return beans discovered by the container before the AfterBeanDiscovery
event is fired.getBeans
in interface BeanManager
name
- the EL namepublic java.util.List<Decorator<?>> resolveDecorators(java.util.Set<java.lang.reflect.Type> types, java.lang.annotation.Annotation... qualifiers)
BeanManager
AfterBeanDiscovery
event observer,
this method will only return decorators discovered by the container before the AfterBeanDiscovery
event is fired.resolveDecorators
in interface BeanManager
types
- the set of bean types of the decorated beanqualifiers
- the qualifiers declared by the decorated beanpublic java.util.List<Decorator<?>> resolveDecorators(java.util.Set<java.lang.reflect.Type> types, java.util.Set<java.lang.annotation.Annotation> qualifiers)
public java.util.List<Interceptor<?>> resolveInterceptors(InterceptionType type, java.lang.annotation.Annotation... interceptorBindings)
resolveInterceptors
in interface BeanManager
type
- The interception type to resolveinterceptorBindings
- The binding types to matchBeanManager.resolveInterceptors(javax.enterprise.inject.spi.InterceptionType,
java.lang.annotation.Annotation[])
public java.util.List<Interceptor<?>> resolveInterceptors(InterceptionType type, java.util.Collection<java.lang.annotation.Annotation> interceptorBindings)
type
- The interception type to resolveinterceptorBindings
- The binding types to matchpublic TypeSafeBeanResolver getBeanResolver()
public TypeSafeDecoratorResolver getDecoratorResolver()
public TypeSafeInterceptorResolver getInterceptorResolver()
public NameBasedResolver getNameBasedResolver()
public ObserverNotifier getAccessibleLenientObserverNotifier()
ObserverNotifier
public ObserverNotifier getGlobalLenientObserverNotifier()
ObserverNotifier
public ObserverNotifier getGlobalStrictObserverNotifier()
ObserverNotifier
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public BeanManagerImpl createActivity()
WeldManager
createActivity
in interface WeldManager
public BeanManagerImpl setCurrent(java.lang.Class<? extends java.lang.annotation.Annotation> scopeType)
WeldManager
setCurrent
in interface WeldManager
scopeType
- the scope to associate the activity withpublic BeanManagerImpl getCurrent()
getCurrent
in interface WeldManager
WeldManager
that corresponds to the current activitypublic ServiceRegistry getServices()
WeldManager
getServices
in interface WeldManager
protected java.lang.Object readResolve() throws java.io.ObjectStreamException
java.io.ObjectStreamException
public ClientProxyProvider getClientProxyProvider()
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,java.util.List<Context>> getContexts()
protected java.util.List<java.lang.String> getNamespaces()
public java.lang.Iterable<java.lang.String> getAccessibleNamespaces()
public java.lang.String getId()
WeldManager
getId
in interface WeldManager
public java.util.concurrent.atomic.AtomicInteger getChildIds()
public java.util.List<ObserverMethod<?>> getObservers()
public Namespace getRootNamespace()
public <T> InjectionTarget<T> createInjectionTarget(AnnotatedType<T> type)
BeanManager
Obtains an InjectionTarget
for the given AnnotatedType
. The container ignores the annotations and types
declared by the elements of the actual Java class and uses the metadata provided via the Annotated
interface
instead.
This method is deprecated from CDI 1.1 and BeanManager.getInjectionTargetFactory(AnnotatedType)
should be used instead.
createInjectionTarget
in interface BeanManager
T
- the typetype
- the AnnotatedType
InjectionTarget
public <T> InjectionTarget<T> createInjectionTarget(EjbDescriptor<T> descriptor)
WeldManager
#fireProcessInjectionTarget()
must be used to obtain an InjectionTarget
for non-contextual EJB injection.createInjectionTarget
in interface WeldManager
public void validate(InjectionPoint ij)
BeanManager
AfterBeanDiscovery
event observer,
this method will only validate injection points discovered by the container before the AfterBeanDiscovery
event is fired.validate
in interface BeanManager
ij
- the injection point to validatepublic java.util.Set<java.lang.annotation.Annotation> getInterceptorBindingDefinition(java.lang.Class<? extends java.lang.annotation.Annotation> bindingType)
BeanManager
getInterceptorBindingDefinition
in interface BeanManager
bindingType
- the interceptor binding typepublic Bean<?> getPassivationCapableBean(java.lang.String id)
BeanManager
PassivationCapable
bean with the given identifier.
Note that when called during invocation of an AfterBeanDiscovery
event observer,
this method will only return beans discovered by the container before the AfterBeanDiscovery
event is fired.getPassivationCapableBean
in interface BeanManager
id
- the identifierBean
that implements PassivationCapable
and has the given
identifier, or a null value if there is no such beanpublic Bean<?> getPassivationCapableBean(BeanIdentifier identifier)
getPassivationCapableBean
in interface WeldManager
public java.util.Set<java.lang.annotation.Annotation> getStereotypeDefinition(java.lang.Class<? extends java.lang.annotation.Annotation> stereotype)
BeanManager
getStereotypeDefinition
in interface BeanManager
stereotype
- the stereotypepublic boolean isQualifier(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isQualifier
in interface BeanManager
annotationType
- the annotation typepublic boolean isInterceptorBinding(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isInterceptorBinding
in interface BeanManager
annotationType
- the annotation to testpublic boolean isNormalScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isNormalScope
in interface BeanManager
annotationType
- the annotation typepublic boolean isPassivatingScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isPassivatingScope
in interface BeanManager
annotationType
- the annotation typepublic boolean isScope(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isScope
in interface BeanManager
annotationType
- the annotation typepublic boolean isStereotype(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanManager
isStereotype
in interface BeanManager
annotationType
- the annotation typepublic ELResolver getELResolver()
BeanManager
ELResolver
that resolves beans by EL name.getELResolver
in interface BeanManager
public ExpressionFactory wrapExpressionFactory(ExpressionFactory expressionFactory)
BeanManager
ExpressionFactory
that delegates MethodExpression
and
ValueExpression
creation to the given ExpressionFactory
. When a Unified EL expression
is evaluated using a MethodExpression
or ValueExpression
returned by the wrapper
ExpressionFactory
, the container handles destruction of objects with scope
Dependent
.wrapExpressionFactory
in interface BeanManager
expressionFactory
- the ExpressionFactory
to wrapExpressionFactory
public <T> WeldCreationalContext<T> createCreationalContext(Contextual<T> contextual)
BeanManager
CreationalContext
for the given
contextual type, or for a non-contextual object.createCreationalContext
in interface BeanManager
createCreationalContext
in interface WeldManager
contextual
- the Contextual
, or a null value in the case of a non-contextual
objectCreationalContext
public <T> AnnotatedType<T> createAnnotatedType(java.lang.Class<T> type)
BeanManager
AnnotatedType
that may be used to read the annotations of the given class or interface.createAnnotatedType
in interface BeanManager
T
- the class or interfacetype
- the Class
objectAnnotatedType
public <T> EnhancedAnnotatedType<T> createEnhancedAnnotatedType(java.lang.Class<T> type)
public <X> Bean<? extends X> resolve(java.util.Set<Bean<? extends X>> beans)
BeanManager
AfterBeanDiscovery
event observer,
this method will only return beans discovered by the container before the AfterBeanDiscovery
event is fired.resolve
in interface BeanManager
X
- a common type of the beansbeans
- a set of beans of the given typepublic <T> EjbDescriptor<T> getEjbDescriptor(java.lang.String beanName)
WeldManager
getEjbDescriptor
in interface WeldManager
public <T> SessionBean<T> getBean(EjbDescriptor<T> descriptor)
WeldManager
getBean
in interface WeldManager
public void cleanup()
public void cleanupAfterBoot()
public java.util.concurrent.ConcurrentMap<SlimAnnotatedType<?>,InterceptionModel> getInterceptorModelRegistry()
public InterceptorMetadataReader getInterceptorMetadataReader()
public <X> InjectionTarget<X> fireProcessInjectionTarget(AnnotatedType<X> annotatedType)
WeldManager
fireProcessInjectionTarget
in interface WeldManager
public <X> InjectionTarget<X> fireProcessInjectionTarget(AnnotatedType<X> annotatedType, InjectionTarget<X> injectionTarget)
WeldManager
fireProcessInjectionTarget
in interface WeldManager
public java.util.Set<QualifierInstance> extractInterceptorBindingsForQualifierInstance(java.lang.Iterable<QualifierInstance> annotations)
public Instance<java.lang.Object> instance()
instance
in interface WeldManager
public <T> BeanAttributes<T> createBeanAttributes(AnnotatedType<T> type)
BeanManager
BeanAttributes
for the given AnnotatedType
. The container ignores the annotations and types
declared by the elements of the actual Java class and uses the metadata provided via the Annotated
interface
instead.createBeanAttributes
in interface BeanManager
T
- the typetype
- the AnnotatedType
InjectionTarget
public BeanAttributes<?> createBeanAttributes(AnnotatedMember<?> member)
BeanManager
BeanAttributes
for the given AnnotatedType
. The container ignores the annotations and types
declared by the elements of the actual Java class and uses the metadata provided via the Annotated
interface
instead.createBeanAttributes
in interface BeanManager
member
- the AnnotatedType
InjectionTarget
public <X> BeanAttributes<?> internalCreateBeanAttributes(AnnotatedMember<X> member)
public <T> Bean<T> createBean(BeanAttributes<T> attributes, java.lang.Class<T> beanClass, InjectionTargetFactory<T> injectionTargetFactory)
BeanManager
Obtains a Bean
for the given BeanAttributes
, bean class and InjectionTarget
.
The InjectionTarget
creates and destroys instances of the bean, performs dependency injection and lifecycle
callbacks, and determines the return value of Bean.getInjectionPoints()
. The InjectionTarget
is obtained
from the InjectionTargetFactory
. BeanManager.getInjectionTargetFactory(AnnotatedType)
allows use of a container created
InjectionTarget
.
createBean
in interface BeanManager
T
- the typeattributes
- a BeanAttributes
which determines the bean types, qualifiers, scope, name and stereotypes of
the returned Bean
, and the return values of BeanAttributes.isAlternative()
and Bean.isNullable()
beanClass
- a class, which determines the return value of Bean.getBeanClass()
injectionTargetFactory
- an InjectionTargetFactory
, used to obtain an InjectionTarget
Bean
public <T,X> Bean<T> createBean(BeanAttributes<T> attributes, java.lang.Class<X> beanClass, ProducerFactory<X> producerFactory)
BeanManager
Obtains a Bean
for the given BeanAttributes
, bean class and Producer
.
The Producer
creates and destroys instances of the decorator, and determines the return value of
Bean.getInjectionPoints()
. The Producer
is obtained from the ProducerFactory
.
BeanManager.getProducerFactory(AnnotatedMethod, Bean)
or BeanManager.getProducerFactory(AnnotatedField, Bean)
allows use of a
container created Producer
.
createBean
in interface BeanManager
T
- the typeX
- the type of the declaring beanattributes
- a BeanAttributes
which determines the bean types, qualifiers, scope, name and stereotypes of
the returned Bean
, and the return values of BeanAttributes.isAlternative()
and Bean.isNullable()
beanClass
- a class, which determines the return value of Bean#getClass()
producerFactory
- a ProducerFactory
, used to obtain a Producer
Bean
public FieldInjectionPointAttributes<?,?> createInjectionPoint(AnnotatedField<?> field)
BeanManager
InjectionPoint
for the given AnnotatedField
.createInjectionPoint
in interface BeanManager
field
- the AnnotatedField
defining the injection pointInjectionPoint
public ParameterInjectionPointAttributes<?,?> createInjectionPoint(AnnotatedParameter<?> parameter)
BeanManager
InjectionPoint
for the given AnnotatedParameter
.createInjectionPoint
in interface BeanManager
parameter
- the AnnotatedParameter
defining the injection pointInjectionPoint
public <T extends Extension> T getExtension(java.lang.Class<T> extensionClass)
BeanManager
META-INF/services
.getExtension
in interface BeanManager
T
- the type of the extensionextensionClass
- the type of the extension classpublic ContainerLifecycleEvents getContainerLifecycleEvents()
public boolean areQualifiersEquivalent(java.lang.annotation.Annotation qualifier1, java.lang.annotation.Annotation qualifier2)
BeanManager
Nonbinding
.areQualifiersEquivalent
in interface BeanManager
qualifier1
- a qualifier to checkqualifier2
- a qualifier to checkpublic boolean areInterceptorBindingsEquivalent(java.lang.annotation.Annotation interceptorBinding1, java.lang.annotation.Annotation interceptorBinding2)
BeanManager
Nonbinding
.areInterceptorBindingsEquivalent
in interface BeanManager
interceptorBinding1
- an interceptor binding to checkinterceptorBinding2
- an interceptor binding to checkpublic int getQualifierHashCode(java.lang.annotation.Annotation qualifier)
BeanManager
Nonbinding
.getQualifierHashCode
in interface BeanManager
qualifier
- the qualifier to considerpublic int getInterceptorBindingHashCode(java.lang.annotation.Annotation interceptorBinding)
BeanManager
Nonbinding
.getInterceptorBindingHashCode
in interface BeanManager
interceptorBinding
- the interceptor binding to considerpublic <T> InjectionTargetFactoryImpl<T> getLocalInjectionTargetFactory(AnnotatedType<T> type)
InjectionTargetFactory
for a given type. The factory will be using this BeanManager
.public <T> WeldInjectionTargetFactory<T> getInjectionTargetFactory(AnnotatedType<T> type)
InjectionTargetFactory
for a given type. The BeanManager
for the InjectionTarget
will
be inferred using CDI11Deployment.getBeanDeploymentArchive(Class)
.getInjectionTargetFactory
in interface BeanManager
getInjectionTargetFactory
in interface WeldManager
type
- the annotated type to create the injection target factory forInjectionTargetFactory
public <X> FieldProducerFactory<X> getProducerFactory(AnnotatedField<? super X> field, Bean<X> declaringBean)
BeanManager
An implementation of ProducerFactory
that provides container created Producer
instances for the given
field.
This factory can be wrapped to add behavior to container created producers.
getProducerFactory
in interface BeanManager
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-contextualpublic <X> MethodProducerFactory<X> getProducerFactory(AnnotatedMethod<? super X> method, Bean<X> declaringBean)
BeanManager
An implementation of ProducerFactory
that provides container created Producer
instances for the given
method.
This factory can be wrapped to add behavior to container created producers.
getProducerFactory
in interface BeanManager
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-contextualpublic <T> WeldInjectionTargetBuilder<T> createInjectionTargetBuilder(AnnotatedType<T> type)
WeldManager
WeldInjectionTargetBuilder
which can be used to create a new WeldInjectionTarget
for the specified type.createInjectionTargetBuilder
in interface WeldManager
type
- the specified typeWeldInjectionTargetBuilder
instance for the specified typepublic BeanManagerImpl unwrap()
unwrap
in interface WeldManager
Copyright © 2014. All Rights Reserved.