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

[jsr339-experts] Re: [jax-rs-spec users] Re: Removing command pattern simplifies things

From: Sergey Beryozkin <sberyozkin_at_talend.com>
Date: Mon, 29 Aug 2011 16:09:06 +0100

On 29/08/11 16:03, Bill Burke wrote:
>
>
> On 8/29/11 10:57 AM, Sergey Beryozkin wrote:
>> Santiago,
>>
>> Few questions for you:
>>
>> On 29/08/11 15:44, Santiago Pericas-Geertsen wrote:
>>>
>>> On Aug 26, 2011, at 3:05 PM, Bill Burke wrote:
>>>
>>>>
>>>>
>>>> On 8/26/11 2:48 PM, Marek Potociar wrote:
>>>>> Are you now suggesting we take the generic invocation out??
>>>>
>>>> Yes. I think many specifications try to incorporate a lot of edge
>>>> cases and end up seriously bloating themselves. This may be one of
>>>> those scenarios. At the time, it seemed like a good idea that
>>>> wouldn't affect the API very harshly. Things have changed.
>>>
>>> -1
>>>
>>> Although in general I support the idea of simplifying the API, I
>>> disagree generic invocations is an edge case. Support for generic
>>> invocations is needed to make invocations first class; the ability to
>>> configure and store invocations in data structures for later retrieval
>>> and execution gives developers a greater flexibility on how to
>>> modularize (large) applications and it also enables lazy execution of
>>> invocations.
>>>
>> 1. Do you really believe that most of JAX-RS 2.0 client API users will
>> code invoke() in the end of the chain ? Your -1 seems like a fairly
>> strong preference of invoke() at the end for all the cases.
>> 2. What is your position re the compromise proposal to do with letting
>> users code get()/etc at the end of the chain without paying the price of
>> typing request() yet still easily being able to create Invocations
>> 3. Do you agree that a single flow ending with get() is preferable to
>> a single flow ending with invoke() ?
>>
>
> invoke() at the end is not required with the current revision, so I
> don't see your point Sergey. Santiago is advocating a request() method.
>
Sure I understand that - my point is that we have request() in order to
accommodate invoke() which is a corner case IMHO. I'm not excited about
the corner case having such a strong stamp on the whole API, on plain
gets, on everything.
So I was hoping for a compromise solution which I've described (let do
plain gets without request()). If we did not need to allow for invoke()
there'd be no need to allow for request()

But I guess there's no enough interest in that compromise proposal
Moving on...

Sergey
>


-- 
Sergey Beryozkin
http://sberyozkin.blogspot.com
Talend - http://www.talend.com