jsr339-experts@jax-rs-spec.java.net

[jsr339-experts] Re: [jax-rs-spec users] Re: A proposal to make the JAX-RS API "lambda ready".

From: Marek Potociar <marek.potociar_at_oracle.com>
Date: Wed, 31 Oct 2012 10:47:31 +0100

On Oct 30, 2012, at 3:01 PM, Sergey Beryozkin <sberyozkin_at_talend.com> wrote:

> On 30/10/12 13:25, Marek Potociar wrote:
>>
>> On Oct 30, 2012, at 11:23 AM, Sergey Beryozkin<sberyozkin_at_talend.com> wrote:
>>
>>> On 29/10/12 19:06, Markus KARG wrote:
>>>> I think it is a very good idea to support lambda expressions, as it
>>>> makes the readability of anonymous callbacks much simple to read (and
>>>> write). On the other hand, AFAIK lambdas will enforce JRE 8, while our
>>>> API must be able to run on JRE 7.
>>>
>>> Actually, it runs on JRE6.
>>
>> Yes (because you insisted) :) Btw. do you still insist? Note that Java EE 7 requires Java SE 7. (Sorry for side-tracking the discussion here - just thought it's good time to check again...)
>>
> I guess the issue id really about getting newer Java API available in Java SE 7+ explicitly used in JSR 339 API.
>
> Making it possible to run JAX-RS 2.0 applications on Java SE 6.0 does not prevent it in itself having them run in Java SE 7.
>
> Unfortunately, it is not possible right now for CXF trunk to stop supporting SE 6 builds. I do not want to have CXF 'block' the progress of the API, but IMHO, having newer Java SE API visible at the JAX-RS 2.0 level is not critical at the moment

Ok thanks. I'm fine with JAX-RS 2.0 not using Java SE 7 features.

Marek

>
> Cheers, Sergey
>
>
>> Marek
>>
>>>
>>>> How can this gap be bridged?
>>>
>>> It is about making it ready, it does not have to bridged now
>>>
>>> Sergey
>>>
>>>>
>>>> *From:*Marek Potociar [mailto:marek.potociar_at_oracle.com]
>>>> *Sent:* Montag, 29. Oktober 2012 12:07
>>>> *To:* jsr339-experts_at_jax-rs-spec.java.net
>>>> *Subject:* [jsr339-experts] A proposal to make the JAX-RS API "lambda
>>>> ready".
>>>>
>>>> Hello experts,
>>>>
>>>> A month ago at JavaOne, making APIs ready for closure support that is
>>>> coming in Java SE 8, was one of the hot topics. The main idea behind
>>>> making an API ready for "lambdas" (or closures), is to expose
>>>> single-method interfaces whenever one expects a future use of lambdas.
>>>> In JAX-RS 2.0, such places include definition of async response
>>>> callbacks as well as client-side invocation callback.
>>>>
>>>> With that I took a stab on it and tried to come up with a proposal that
>>>> would make our new APIs more lambda-ready. Please review the proposal here:
>>>>
>>>> https://github.com/mpotociar/jax-rs/compare/lambda
>>>>
>>>> In summary, I have updated the client.InvocationCallback to have only a
>>>> single method and since I anticipate that many users would still prefer
>>>> the old 2-method style, I'm adding an AbstractInvocationCallback
>>>> convenience class. On the side of async response container callbacks,
>>>> I've similarly updated the CompletionCallback and ResumeCallback APIs to
>>>> adopt a single-method pattern. In my last commit I've also decided
>>>> (based on numerous Sergey's requests) to propose removal of
>>>> ResumeCallback (for now).
>>>>
>>>> I'm looking forward to your review comments.
>>>>
>>>> Marek
>>>>
>>>
>>>
>>> --
>>> Sergey Beryozkin
>>>
>>> Talend Community Coders
>>> http://coders.talend.com/
>>>
>>> Blog: http://sberyozkin.blogspot.com
>>