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

[jsr339-experts] Again... Re: Re: lets remove Client.Builder, and ClientFactoryBuilder please

From: Bill Burke <bburke_at_redhat.com>
Date: Tue, 24 Jan 2012 19:00:29 -0500

On 12/13/11 9:18 AM, Bill Burke wrote:
>
>
> On 12/13/11 5:59 AM, Marek Potociar wrote:
>> Just wanted to add that this functionality is not only focused on some
>> low-percentage use case client extensions. I
>> believe it is possible to expect that many users will want to access
>> specifics of Jersey, RestEasy or CXF etc. client
>> implementations and configurations in a type-safe way.
>>
>
> Sure, but let us (Resteasy, CXF) decide how we want to do this not the
> spec.
>

Again, I'd like to suggest removing ClientFactoryBuilder. I think the
following is much easier to understand and learn how to use and type:

ResteasyClient client = new ResteasyClient();


Than something like this:

ResteasyClient client =
ClientFactory.newClientBy(ResteasyClientBuilderFactory.class).build();


In reality, all newClientBy() really is, is multiple levels of
indirection (and abstractions) just to do a constructor call.
Constructors are not evil. Sure, you're exposing something proprietary
to the user, but you're already doing this with the newClientBy method.




-- 
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com