Class CdiComponentProvider
- java.lang.Object
-
- org.glassfish.jersey.ext.cdi1x.internal.CdiComponentProvider
-
- All Implemented Interfaces:
jakarta.enterprise.inject.spi.Extension,ComponentProvider
public class CdiComponentProvider extends Object implements ComponentProvider, jakarta.enterprise.inject.spi.Extension
Jersey CDI integration implementation. ImplementsJersey component providerto serve CDI beans obtained from the actual CDI bean manager. To properly inject JAX-RS/Jersey managed beans into CDI, it also serves as aCDI Extension, that intercepts CDI injection targets.- Author:
- Jakub Podlesak
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCdiComponentProvider.CdiDefaultAnnotationAuxiliary annotation for mocked beans used to cover Jersey/HK2 injected injection points.
-
Field Summary
Fields Modifier and Type Field Description static StringCDI_CLASS_ANALYZERName to be used when binding CDI injectee skipping class analyzer to HK2 service injection manager.
-
Constructor Summary
Constructors Constructor Description CdiComponentProvider()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static voidaddHK2DepenendencyCheck(Predicate<Class<?>> predicate)Add a predicate to test HK2 dependency to create a CDI bridge bean to HK2 for it.booleanbind(Class<?> clazz, Set<Class<?>> providerContracts)booleanbind(Class<?> component, ContractProvider contractProvider)voiddone()InjectionManagergetEffectiveInjectionManager()Gets you effective injection manager.voidinitialize(InjectionManager injectionManager)voidprocessAnnotatedType(jakarta.enterprise.inject.spi.ProcessAnnotatedType processAnnotatedType)
-
-
-
Field Detail
-
CDI_CLASS_ANALYZER
public static final String CDI_CLASS_ANALYZER
Name to be used when binding CDI injectee skipping class analyzer to HK2 service injection manager.- See Also:
- Constant Field Values
-
-
Method Detail
-
initialize
public void initialize(InjectionManager injectionManager)
- Specified by:
initializein interfaceComponentProvider
-
bind
public boolean bind(Class<?> clazz, Set<Class<?>> providerContracts)
- Specified by:
bindin interfaceComponentProvider
-
bind
public boolean bind(Class<?> component, ContractProvider contractProvider)
- Specified by:
bindin interfaceComponentProvider
-
done
public void done()
- Specified by:
donein interfaceComponentProvider
-
processAnnotatedType
public void processAnnotatedType(jakarta.enterprise.inject.spi.ProcessAnnotatedType processAnnotatedType)
-
getEffectiveInjectionManager
public InjectionManager getEffectiveInjectionManager()
Gets you effective injection manager. Note: Do NOT lower the visibility of this method. CDI proxies need at least this visibility.- Returns:
- HK2 injection manager.
-
-