Interface InjectionServices
-
- All Superinterfaces:
Service
public interface InjectionServices extends Service
Provides callbacks to the container when Weld performs injection on an InjectionTarget, managed bean or session bean This service may be used to provide EE-style injection. The container must respect any modifications made to type via the container lifecycle events. Container lifecycle events may alter the annotations placed on the type, it's members, and the formal parameters of it's members.InjectionContext.getAnnotatedType()
gives access to the modified state of the type.InjectionServices
is a per-BeanDeploymentArchive service.- Author:
- Pete Muir, Jozef Hartinger
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> void
aroundInject(InjectionContext<T> injectionContext)
Callback for injection.<T> void
registerInjectionTarget(jakarta.enterprise.inject.spi.InjectionTarget<T> injectionTarget, jakarta.enterprise.inject.spi.AnnotatedType<T> annotatedType)
This method is invoked during Weld bootstrap and allows an integrator to process anInjectionTarget
that may be injected at runtime.
-
-
-
Method Detail
-
aroundInject
<T> void aroundInject(InjectionContext<T> injectionContext)
Callback for injection. CallInjectionContext.proceed()
to cause CDI-style injection to occur.- Type Parameters:
T
- the type of the injected instance- Parameters:
injectionContext
- the context in which injection occurs
-
registerInjectionTarget
<T> void registerInjectionTarget(jakarta.enterprise.inject.spi.InjectionTarget<T> injectionTarget, jakarta.enterprise.inject.spi.AnnotatedType<T> annotatedType)
This method is invoked during Weld bootstrap and allows an integrator to process an
InjectionTarget
that may be injected at runtime. The implementation may want to read the metadata on resource injection point and cache it so that it does not need to repeat metadata parsing on eacharoundInject(InjectionContext)
invocation.Furthermore, the integrator is responsible for validating resource injection points (as defined in CDI 1.1 3.7.1).
For each resource injection of a type:
- @Resource
- @PersistenceContext
- @PersistenceUnit
- @EJB injection
- @WebServiceRef
the implementation must validate the type of the injection point. If the injection point type differs from the type of the matching object in the Java EE component environment, the implementation throws
DefinitionException
.Note that this method may be called at runtime if the application uses an
InjectionTargetFactory
to create injection target instances at runtime.- Type Parameters:
T
- the type of the injected instance- Parameters:
injectionTarget
- the injection target to be processedannotatedType
- theAnnotatedType
metadata for the given injection target
-
-