I've created
https://issues.jboss.org/browse/CDI-629
Dne 12.9.2016 v 14:14 arjan tijms napsal(a):
Hi,
Annotation builder would be +1. It's a tiny bit less convenient, but
more universal. So better for the spec.
Convenience addition could theoretically still be:
Set<Bean<?>> getBeans(Type beanType, Class<?> annotationType,
Object...
annotation attributes);
But... I acknowledge that this would again be for a more specific
situation (namely, a bean with exactly 1 qualifier and 0 or more binding
attributes).
While on the subject, it's currently not possible for an injected bean
to get hold of the annotation instance that's used in
CDI.current().select(), BeanManager.getBeans, etc, is it?
No and I cannot imagine a way to do this.
Kind regards,
Arjan Tijms
On Mon, Sep 12, 2016 at 1:44 PM, Martin Kouba <mkouba(a)redhat.com
<mailto:mkouba@redhat.com>> wrote:
Type safety is not guaranteed in the current version of
AnnotationInstanceProvider (deltaspike). We should at least check
the provided map of member values against the set of declared
methods. Otherwise, I like the idea of standardizing a similar
"annotation instance builder".
Martin
Dne 12.9.2016 v 12:34 Romain Manni-Bucau napsal(a):
Think it is maybe saner to have AnnotationProvider.of(type, params)
(like in deltaspike) since it doesnt leave the parameterized
annotations
(which are not rare) next the road.
Romain Manni-Bucau
@rmannibucau <
https://twitter.com/rmannibucau
<
https://twitter.com/rmannibucau>> | Blog
<
https://blog-rmannibucau.rhcloud.com
<
https://blog-rmannibucau.rhcloud.com>> | Old Wordpress Blog
<
http://rmannibucau.wordpress.com
<
http://rmannibucau.wordpress.com>> | Github
<
https://github.com/rmannibucau
<
https://github.com/rmannibucau>> | LinkedIn
<
https://www.linkedin.com/in/rmannibucau
<
https://www.linkedin.com/in/rmannibucau>> | Tomitriber
<
http://www.tomitribe.com> | JavaEE Factory
<
https://javaeefactory-rmannibucau.rhcloud.com
<
https://javaeefactory-rmannibucau.rhcloud.com>>
2016-09-12 12:28 GMT+02:00 arjan tijms <arjan.tijms(a)gmail.com
<mailto:arjan.tijms@gmail.com>
<mailto:arjan.tijms@gmail.com <mailto:arjan.tijms@gmail.com>>>:
Hi,
Wouldn't it be convenient as the CDI API that now requires an
Annotation instance in various APIs, would also accept the class
type of that Annotation?
E.g. in BeanManager there's this method:
Set<Bean<?>> getBeans(Type beanType, Annotation... qualifiers)
This not rarely requires one to create an AnnotationLiteral,
which
is not specifically difficult but a tad verbose. For
qualifiers that
have no (binding) attributes, a simple Class would be much
easier to
use.
Thoughts?
Kind regards,
Arjan Tijms
_______________________________________________
cdi-dev mailing list
cdi-dev(a)lists.jboss.org <mailto:cdi-dev@lists.jboss.org>
<mailto:cdi-dev@lists.jboss.org <mailto:cdi-dev@lists.jboss.org>>
https://lists.jboss.org/mailman/listinfo/cdi-dev
<
https://lists.jboss.org/mailman/listinfo/cdi-dev>
<
https://lists.jboss.org/mailman/listinfo/cdi-dev
<
https://lists.jboss.org/mailman/listinfo/cdi-dev>>
Note that for all code provided on this list, the provider
licenses
the code under the Apache License, Version 2
(
http://www.apache.org/licenses/LICENSE-2.0.html
<
http://www.apache.org/licenses/LICENSE-2.0.html>
<
http://www.apache.org/licenses/LICENSE-2.0.html
<
http://www.apache.org/licenses/LICENSE-2.0.html>>). For all other
ideas provided on this list, the provider waives all patent and
other intellectual property rights inherent in such information.
_______________________________________________
cdi-dev mailing list
cdi-dev(a)lists.jboss.org <mailto:cdi-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/cdi-dev
<
https://lists.jboss.org/mailman/listinfo/cdi-dev>
Note that for all code provided on this list, the provider
licenses the code under the Apache License, Version 2
(
http://www.apache.org/licenses/LICENSE-2.0.html
<
http://www.apache.org/licenses/LICENSE-2.0.html>). For all
other ideas provided on this list, the provider waives all
patent and other intellectual property rights inherent in such
information.
--
Martin Kouba
Software Engineer
Red Hat, Czech Republic