T
- type on which this InjectionTarget operatespublic 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
.
Modifier and Type | Method and Description |
---|---|
default AnnotatedTypeConfigurator<T> |
configure()
Returns an
AnnotatedTypeConfigurator to to configure the AnnotatedType used to create the InjectionTarget . |
InjectionTarget<T> |
createInjectionTarget(Bean<T> bean)
Create a new injection target for a bean.
|
InjectionTarget<T> createInjectionTarget(Bean<T> bean)
bean
- the bean to create the injection target for, or null if creating a non-contextual objectdefault AnnotatedTypeConfigurator<T> configure()
AnnotatedTypeConfigurator
to to configure the AnnotatedType
used to create the InjectionTarget
.
Each call returns the same AnnotatedTypeConfigurator.AnnotatedTypeConfigurator
to configure injection pointsjava.lang.IllegalStateException
- if used after createInjectionTarget(Bean)
invocation