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));
}
});
- Since:
- 1.1
-
Method Summary
Modifier and TypeMethodDescriptiondefault AnnotatedTypeConfigurator<T>Returns anAnnotatedTypeConfiguratorto to configure theAnnotatedTypeused 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 anAnnotatedTypeConfiguratorto to configure theAnnotatedTypeused to create theInjectionTarget. Each call returns the same AnnotatedTypeConfigurator.- Returns:
- an
AnnotatedTypeConfiguratorto configure injection points - Throws:
IllegalStateException- if used aftercreateInjectionTarget(Bean)invocation- Since:
- 2.0
-