Agreed :-) George is working on it for CDI 1.1. George, can you share your proposal so far?
On 7 Mar 2012, at 17:05, Gerhard Petracek wrote: > hi pete, > > independent of my opinion about the feature (which is still +0): > if it should be part of cdi 1.1, we have the following options imo: > > 1) the approach (including the name/s) we agree on will be used also for > cdi 1.1 (the only difference is the package) > 2) the eg has a different opinion about it -> > 2a) the rest of the eg joins this discussion > 2b) we wait for the final version and just allow the same with cdi 1.0 > 3) if the eg doesn't agree on the idea, it should be re-visited for > deltaspike (if we really need it) > 4) we agree on it independent of the result in cdi 1.1 > > 1-3 is ok for me but -1 for #4 > > regards, > gerhard > > > > 2012/3/7 Pete Muir <pm...@redhat.com> > >> I'm not sure what you mean by a "super interceptor", but if you mean it as >> in "super man" (something better than an interceptor), then I would >> disagree, it's actually a specialised form of interceptor. >> >> The best use case I know of is the one John mentions - creating type safe >> references to queries: >> >> @QueryService >> interface UserQuery { >> >> @Query("select u from User u") >> public List<User> getAllUsers(); >> >> @Query("select u from User u order by u.name") >> public List<User> getAllUsersSortedByName(); >> >> } >> >> Now, it may be the case that there aren't any other use cases for service >> handlers, in which case we should perhaps just offer this particular >> service handler - references to type safe queries - as I think this is an >> extremely powerful idea. >> >> Note, that at the moment service handlers are scheduled for CDI 1.1. >> >> >> On 7 Mar 2012, at 02:35, Jason Porter wrote: >> >>> Somewhat. I wouldn't really think of them as overrides, they, to me, >> seem more like items to do in addition to whatever the original impl does. >>> >>> ServiceHandlers to me seem more like super interceptors. >>> >>> Sent from my iPhone >>> >>> On Mar 6, 2012, at 19:23, "John D. Ament" <john.d.am...@gmail.com> >> wrote: >>> >>>> @jason >>>> >>>> I think the concepts are very dissimilar. servicehandlers create the >>>> implementation. delegates are more like overrides and need to know >> about >>>> the method signature. >>>> >>>> On Tue, Mar 6, 2012 at 9:17 PM, Jason Porter <lightguard...@gmail.com >>> wrote: >>>> >>>>> I think the idea of ServiceHandlers are good, but, could we not do this >>>>> with delegates? >>>>> >>>>> Sent from my iPhone >>>>> >>>>> On Mar 6, 2012, at 19:05, "John D. Ament" <john.d.am...@gmail.com> >> wrote: >>>>> >>>>>> @mark >>>>>> >>>>>> I don't think it's a hard requirement for it to be on an interface. >>>>>> >>>>>> One of the best use-cases we built at my job is using it for calling >>>>>> PL/SQL. The JDBC bindings do work, but not pretty. we were able to >>>>> create >>>>>> a fairly clean wrapper API, generic enough for binding in/out >> parameters. >>>>>> >>>>>> JOhn >>>>>> >>>>>> On Tue, Mar 6, 2012 at 12:58 PM, Mark Struberg <strub...@yahoo.de> >>>>> wrote: >>>>>> >>>>>>> actually I don't really see a real benefit. I just don't yet grok the >>>>> use >>>>>>> case for real world projects. >>>>>>> >>>>>>> Why would one intercept an Interface and delegate the calls to a >> method >>>>>>> handler? >>>>>>> This could be neat for mocking, but there are better frameworks for >>>>> that. >>>>>>> >>>>>>> thus >>>>>>> >>>>>>> -0.2 >>>>>>> >>>>>>> LieGrue, >>>>>>> strub >>>>>>> >>>>>>> >>>>>>> >>>>>>> ----- Original Message ----- >>>>>>>> From: Gerhard Petracek <gerhard.petra...@gmail.com> >>>>>>>> To: deltaspike-dev@incubator.apache.org >>>>>>>> Cc: >>>>>>>> Sent: Tuesday, March 6, 2012 5:15 PM >>>>>>>> Subject: Re: [DISCUSS] [DELTASPIKE-113] Review and Discuss >>>>> ServiceHandler >>>>>>>> >>>>>>>> if you have a lot of shared code, you can extract it in 1-n >> method/s or >>>>>>> an >>>>>>>> abstract class which is still easier than a new concept. >>>>>>>> at least i haven't seen an use-case which really needed it. that was >>>>> the >>>>>>>> reason for a +0 (which still means that i'm ok with adding it). >>>>>>>> >>>>>>>> regards, >>>>>>>> gerhard >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> 2012/3/6 Pete Muir <pm...@redhat.com> >>>>>>>> >>>>>>>>> So, you mean just write a bean with all the boilerplate code in it? >>>>>>>>> >>>>>>>>> On 6 Mar 2012, at 15:58, Gerhard Petracek wrote: >>>>>>>>> >>>>>>>>>> hi pete, >>>>>>>>>> >>>>>>>>>> instead of the interface you can just implement a bean which does >> the >>>>>>>>> same. >>>>>>>>>> >>>>>>>>>> regards, >>>>>>>>>> gerhard >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> 2012/3/6 Pete Muir <pm...@redhat.com> >>>>>>>>>> >>>>>>>>>>> What CDI mechanism would you use instead? >>>>>>>>>>> >>>>>>>>>>> On 5 Mar 2012, at 08:47, Gerhard Petracek wrote: >>>>>>>>>>> >>>>>>>>>>>> +0 >>>>>>>>>>>> no -1 because there are use-cases for it. >>>>>>>>>>>> no +1 because i would use std. cdi mechanisms instead. >>>>>>>>>>>> >>>>>>>>>>>> regards, >>>>>>>>>>>> gerhard >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> 2012/3/4 Gerhard Petracek <gerhard.petra...@gmail.com> >>>>>>>>>>>> >>>>>>>>>>>>> hi john, >>>>>>>>>>>>> >>>>>>>>>>>>> the sub-task is perfectly fine. >>>>>>>>>>>>> >>>>>>>>>>>>> regards, >>>>>>>>>>>>> gerhard >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> 2012/3/4 John D. Ament <john.d.am...@gmail.com> >>>>>>>>>>>>> >>>>>>>>>>>>> Hi All >>>>>>>>>>>>>> >>>>>>>>>>>>>> I wanted to bring up the subject of ServiceHandler. I >>>>>>>> added 113 as a >>>>>>>>>>>>>> child >>>>>>>>>>>>>> of DELTASPIKE-2, looked appropriate but not 100% sure >>>>>>>> (so please let >>>>>>>>> me >>>>>>>>>>>>>> know if you think it's not appropriate as a >>>>>>>> child). ServiceHandler >>>>>>>>> is >>>>>>>>>>> a >>>>>>>>>>>>>> feature in Solder that allows you to define an >>>>>>>> interceptor that >>>>>>>>> manages >>>>>>>>>>>>>> generic calls against an injected interface. The API >>>>>>>> is as follows: >>>>>>>>>>>>>> >>>>>>>>>>>>>> - @ServiceHandlerType(Class<?> clazz) - placed >>>>>>>> on an annotation that >>>>>>>>>>> would >>>>>>>>>>>>>> be placed on the interface. Indicates what >>>>>>>> interceptor would be >>>>>>>>>>> invoked >>>>>>>>>>>>>> for calls against this interface. >>>>>>>>>>>>>> >>>>>>>>>>>>>> It's then up to the application >>>>>>>> developer/framework author to define >>>>>>>>>>>>>> annotations that go on methods, as well as the >>>>>>>> interceptor itself >>>>>>>>> that >>>>>>>>>>>>>> will >>>>>>>>>>>>>> be invoked. The feature for ServiceHandler would be >>>>>>>> to provide the >>>>>>>>>>> API of >>>>>>>>>>>>>> the type and then the infrastructure required to make >>>>>>>> the interceptor >>>>>>>>>>> be >>>>>>>>>>>>>> called. Existing documentation of the feature: >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>> >> http://docs.jboss.org/seam/3/3.1.0.Final/reference/en-US/html/solder-servicehandler.html >>>>>>>>>>>>>> >>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>> >>>>>>>>>>>>>> john >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>> >>>>> >> >>