public class InjectionResolver extends Object
It is a singleton class per BeanManager. It is responsible for resolving the bean instances at the injection points for its bean manager.
WebBeansFinder
Constructor and Description |
---|
InjectionResolver(WebBeansContext webBeansContext)
Creates a new injection resolve for given bean manager.
|
Modifier and Type | Method and Description |
---|---|
void |
checkInjectionPoint(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
Check that a valid enabled bean exists in the deployment for the given
injection point definition.
|
void |
checkInjectionPointType(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
Check the type of the injection point.
|
void |
clearCaches()
Clear caches.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
findByAlternatives(Set<javax.enterprise.inject.spi.Bean<?>> result)
Gets alternatives from set.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
findByAlternatives(Set<javax.enterprise.inject.spi.Bean<?>> result,
String bdaBeansXMLFilePath)
Gets alternatives from set.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
findBySpecialization(Set<javax.enterprise.inject.spi.Bean<?>> result)
Returns specialized beans if exists, otherwise return input result
|
javax.enterprise.inject.spi.Bean<?> |
getInjectionPointBean(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
Returns bean for injection point.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
implResolveByName(String name)
Returns set of beans for given bean name.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
implResolveByType(boolean isDelegate,
Type injectionPointType,
Annotation... qualifiers)
Resolution by type.
|
Set<javax.enterprise.inject.spi.Bean<?>> |
implResolveByType(boolean isDelegate,
Type injectionPointType,
Class<?> injectionPointClass,
Annotation... qualifiers)
Resolution by type.
|
<X> javax.enterprise.inject.spi.Bean<? extends X> |
resolve(Set<javax.enterprise.inject.spi.Bean<? extends X>> beans,
javax.enterprise.inject.spi.InjectionPoint injectionPoint) |
<X> Set<javax.enterprise.inject.spi.Bean<? extends X>> |
resolveAll(Set<javax.enterprise.inject.spi.Bean<? extends X>> beans) |
public InjectionResolver(WebBeansContext webBeansContext)
webBeansContext
- WebBeansContextpublic void clearCaches()
public void checkInjectionPointType(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
Injection point type can not be TypeVariable
.
injectionPoint
- injection pointWebBeansConfigurationException
- if not obey the rulepublic void checkInjectionPoint(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
injectionPoint
- injection pointWebBeansConfigurationException
- If bean is not available in the current deployment for given injectionpublic javax.enterprise.inject.spi.Bean<?> getInjectionPointBean(javax.enterprise.inject.spi.InjectionPoint injectionPoint)
injectionPoint
- injection point declarationpublic Set<javax.enterprise.inject.spi.Bean<?>> implResolveByName(String name)
name
- bean namepublic Set<javax.enterprise.inject.spi.Bean<?>> implResolveByType(boolean isDelegate, Type injectionPointType, Annotation... qualifiers)
isDelegate
- whether the InjectionPoint is for a Delegate
injectionPointType
- injection point api typequalifiers
- qualifiers of the injection pointpublic Set<javax.enterprise.inject.spi.Bean<?>> implResolveByType(boolean isDelegate, Type injectionPointType, Class<?> injectionPointClass, Annotation... qualifiers)
isDelegate
- whether the InjectionPoint is for a Delegate
injectionPointType
- injection point api typequalifiers
- qualifiers of the injection pointpublic Set<javax.enterprise.inject.spi.Bean<?>> findBySpecialization(Set<javax.enterprise.inject.spi.Bean<?>> result)
result
- result beanspublic Set<javax.enterprise.inject.spi.Bean<?>> findByAlternatives(Set<javax.enterprise.inject.spi.Bean<?>> result)
result
- resolved setpublic Set<javax.enterprise.inject.spi.Bean<?>> findByAlternatives(Set<javax.enterprise.inject.spi.Bean<?>> result, String bdaBeansXMLFilePath)
result
- resolved setpublic <X> javax.enterprise.inject.spi.Bean<? extends X> resolve(Set<javax.enterprise.inject.spi.Bean<? extends X>> beans, javax.enterprise.inject.spi.InjectionPoint injectionPoint)
X
- beans
- injectionPoint
- only used for logging. Can be null.javax.enterprise.inject.AmbiguousResolutionException
- if more than 1 bean is activeCopyright © 2008–2016 The Apache Software Foundation. All rights reserved.