[
https://issues.jboss.org/browse/CDI-610?page=com.atlassian.jira.plugin.sy...
]
Martin Kouba commented on CDI-610:
----------------------------------
bq. For the Bean<T> case this would surely work as well...
Which other cases do you have in mind? I wouldn't add this to the {{BeanManager}}. I
think it's bound to the lifecycle of a {{@Dependent}} bean.
bq. It should be as much aligned with injecting the InjectionPoint in a producer method.
Not only producer methods but any {{@Dependent}} bean is allowed to obtain the injection
point.
bq. I don't know from the top of my head...
Yes, it's a definition error.
Add API to obtain current injection point from Bean#create
----------------------------------------------------------
Key: CDI-610
URL:
https://issues.jboss.org/browse/CDI-610
Project: CDI Specification Issues
Issue Type: Feature Request
Components: Portable Extensions
Reporter: arjan tijms
There's currently not a clear way on how to obtain the *current* injection point (if
any) from {{Bean<T>#create}}.
A previously somewhat accepted way (though not specified) was:
{code}
Bean<? extends Object> bean =
beanManager.resolve(beanManager.getBeans(InjectionPoint.class));
InjectionPoint injectionPoint = (InjectionPoint) beanManager.getReference(bean,
InjectionPoint.class, creationalContext);
{code}
This however broke in some version of Weld.
Since getting the injection point is an often used feature in producers, I'd like to
propose to introduce an easy API for this, so {{Bean<T>}} implementations can use
this just as easily. E.g. something like: {{BeanManager#getCurrentInjectionPoint()}}.
Also see:
http://cdi-development-mailing-list.1064426.n5.nabble.com/Getting-injecti...
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)