Package jakarta.enterprise.inject.spi
Interface InjectionTargetFactory<T>
- Type Parameters:
T
- type on which this InjectionTarget operates
public interface InjectionTargetFactory<T>
An InjectionTargetFactory
can create an InjectionTarget
for a given bean.
The InjectionTargetFactory
obtained from BeanManager.getInjectionTargetFactory(AnnotatedType)
is capable of
providing container created injection targets. This factory can be wrapped to add behavior to container created injection
targets.
For example:
BeanAttributes<MyBean> myBeanAttributes = beanManager.createBeanAttributes(myBeanAnnotatedType); beanManager.createBean(myBeanAttributes, MyBean.class, new InjectionTargetFactory() { public <T> InjectionTarget<T> createInjectionTarget(Bean<T> bean) { return new WrappingInjectionTarget<T>( beanManager.getInjectionTargetFactory(myBeanAnnotatedType) .createInjectionTarget(bean)); } });
CDI Lite implementations are not required to provide support for InjectionTargetFactory
.
- Since:
- 1.1
- Author:
- Pete Muir, Antoine Sabot-Durand
-
Method Summary
Modifier and TypeMethodDescriptiondefault AnnotatedTypeConfigurator
<T> Returns anAnnotatedTypeConfigurator
to to configure theAnnotatedType
used to create theInjectionTarget
.createInjectionTarget
(Bean<T> bean) Create a new injection target for a bean.
-
Method Details
-
createInjectionTarget
Create a new injection target for a bean.- Parameters:
bean
- the bean to create the injection target for, or null if creating a non-contextual object- Returns:
- the injection target
-
configure
Returns anAnnotatedTypeConfigurator
to to configure theAnnotatedType
used to create theInjectionTarget
. Each call returns the same AnnotatedTypeConfigurator.- Returns:
- an
AnnotatedTypeConfigurator
to configure injection points - Throws:
IllegalStateException
- if used aftercreateInjectionTarget(Bean)
invocation- Since:
- 2.0
-