<div dir="ltr">Then I'm +1 on this change as well.<div><br></div><div>And no, I don't believe concrete class is defined. Granted this is Java 8's JLS: <a href="https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html">https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html</a></div><div><br></div><div>John<br><br><div class="gmail_quote"><div dir="ltr">On Wed, May 4, 2016 at 8:11 AM Martin Kouba <<a href="mailto:mkouba@redhat.com">mkouba@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Dne 4.5.2016 v 14:08 John D. Ament napsal(a):<br>
> Just to confirm (because negatives always make things harder to digest)<br>
><br>
> An abstract class annotated Decorator is a managed bean - correct?<br>
<br>
Yes.<br>
<br>
><br>
> Because of this line: It is a non-abstract class, or is annotated<br>
> `@Decorator`.<br>
<br>
It was previously:<br>
"It is a concrete class, or is annotated @Decorator."<br>
<br>
But I believe the JLS does not define a "concrete" class... correct me<br>
if I'm wrong.<br>
<br>
><br>
> John<br>
><br>
> On Wed, May 4, 2016 at 3:12 AM Tomas Remes <<a href="mailto:tremes@redhat.com" target="_blank">tremes@redhat.com</a><br>
> <mailto:<a href="mailto:tremes@redhat.com" target="_blank">tremes@redhat.com</a>>> wrote:<br>
><br>
><br>
> Hi,<br>
><br>
> Yes this proposal is sufficient and reads better. I can change my PR<br>
> if there aren't any further objections?<br>
><br>
> Thank's<br>
> Tom<br>
><br>
> ----- Original Message -----<br>
> From: "Martin Kouba" <<a href="mailto:mkouba@redhat.com" target="_blank">mkouba@redhat.com</a> <mailto:<a href="mailto:mkouba@redhat.com" target="_blank">mkouba@redhat.com</a>>><br>
> To: "John D. Ament" <<a href="mailto:john.d.ament@gmail.com" target="_blank">john.d.ament@gmail.com</a><br>
> <mailto:<a href="mailto:john.d.ament@gmail.com" target="_blank">john.d.ament@gmail.com</a>>>, <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a><br>
> <mailto:<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
> Sent: Wednesday, May 4, 2016 8:12:44 AM<br>
> Subject: Re: [cdi-dev] CDI-508 - Which java classes can be managed beans<br>
><br>
> Hi all,<br>
><br>
> given that local and anonymous classes are special kinds of inner<br>
> classes, we could also simply change the sentence to:<br>
><br>
> "It is not an inner class."<br>
><br>
> Anyway, I think the change of the first sentence is much more important,<br>
> i.e. removing the "top-level"...<br>
><br>
> Maybe we should also remove "top-level" from the next sentence:<br>
> "It is a top-level non-abstract class, or is annotated `@Decorator`."<br>
><br>
> So that we would end up with:<br>
><br>
> A Java class is a managed bean if it meets all of the following<br>
> conditions:<br>
> * It is not an inner class.<br>
> * It is a non-abstract class, or is annotated `@Decorator`.<br>
> * It does not implement `javax.enterprise.inject.spi.Extension`.<br>
> * It is not annotated `@Vetoed` or in a package annotated `@Vetoed`.<br>
> * It has an appropriate constructor - either:<br>
><br>
> What do you think?<br>
><br>
> Martin<br>
><br>
><br>
> Dne 4.5.2016 v 02:32 John D. Ament napsal(a):<br>
> > All,<br>
> ><br>
> > I think I had an action item to get this clarified, not 100%<br>
> sure, but<br>
> > let me give this a shot.<br>
> ><br>
> > Tomas raised a PR for CDI-508 to clarify which classes are meant<br>
> to be<br>
> > managed beans. You can find that PR here:<br>
> > <a href="https://github.com/cdi-spec/cdi/pull/282/" rel="noreferrer" target="_blank">https://github.com/cdi-spec/cdi/pull/282/</a><br>
> ><br>
> > The line that doesn't sound right to me in the change is to go from:<br>
> ><br>
> > It is not a non-static inner class.<br>
> ><br>
> > to<br>
> ><br>
> > It is not a non-static nested class.<br>
> ><br>
> > I'll use the java programming language tutorial as a point of<br>
> reference,<br>
> > you can read the page I'll refer to here:<br>
> > <a href="https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html" rel="noreferrer" target="_blank">https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html</a><br>
> ><br>
> > Basically, non-static nested classes are AKA inner classes. The term<br>
> > "non-static inner class" shouldn't exist, and that means the original<br>
> > text doesn't make sense, and should probably be inferred as "It<br>
> is not<br>
> > an inner class"<br>
> ><br>
> > From reading this part of the spec, it becomes unreadable due to the<br>
> > double negative (probably why the aka exists). My proposal was to<br>
> > change the line to instead read (in a positive way) "It is a static<br>
> > nested class" but I can also understand if we want to do this in an<br>
> > exclusion pattern rather than an inclusion pattern.<br>
> ><br>
> > Thoughts?<br>
> ><br>
> > John<br>
> ><br>
> ><br>
> > _______________________________________________<br>
> > cdi-dev mailing list<br>
> > <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a> <mailto:<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
> > <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
> ><br>
> > Note that for all code provided on this list, the provider<br>
> licenses the code under the Apache License, Version 2<br>
> (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" rel="noreferrer" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other<br>
> ideas provided on this list, the provider waives all patent and<br>
> other intellectual property rights inherent in such information.<br>
> ><br>
><br>
> --<br>
> Martin Kouba<br>
> Software Engineer<br>
> Red Hat, Czech Republic<br>
> _______________________________________________<br>
> cdi-dev mailing list<br>
> <a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a> <mailto:<a href="mailto:cdi-dev@lists.jboss.org" target="_blank">cdi-dev@lists.jboss.org</a>><br>
> <a href="https://lists.jboss.org/mailman/listinfo/cdi-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/cdi-dev</a><br>
><br>
> Note that for all code provided on this list, the provider licenses<br>
> the code under the Apache License, Version 2<br>
> (<a href="http://www.apache.org/licenses/LICENSE-2.0.html" rel="noreferrer" target="_blank">http://www.apache.org/licenses/LICENSE-2.0.html</a>). For all other<br>
> ideas provided on this list, the provider waives all patent and<br>
> other intellectual property rights inherent in such information.<br>
><br>
><br>
><br>
<br>
--<br>
Martin Kouba<br>
Software Engineer<br>
Red Hat, Czech Republic<br>
</blockquote></div></div></div>