On Tue, Jun 23, 2009 at 7:14 AM, Mark Combellack<[email protected]> wrote:


>
> Hi,
>
> I am planning to put this on the agenda for the SCA-J call on Monday 29th of
> June. If anyone has any additional feedback, it would be great to hear it
> before then so we can consider it too when looking into this issue.
>
> Thanks,
>
> Mark
>

FYI, some updates to this yesterday at:
http://lists.oasis-open.org/archives/sca-j/200906/msg00157.html

The API now looks like:

SCAClientFactory factory =
SCAClientFactory.newInstance(URI.create("someDomainURI"));
SomeService service = factory.getService(SomeService.class, "SomeServiceURI");

So thats a big improvement.

Still no call back support :( but that wasn't a surprise.

It still uses a URI type for the domainURI on the newInstance call, is
there a reason the suggestion to use a String wasn't done? It would be
simpler to use a String and seems a bit inconsistent to have the
serviceURI be a String but the domainURI be a URI.

Also, the name "SCAClientFactory" doesn't feel right now that the
factory isn't creating SCAClients anymore, so wouldn't it be better to
have it named  something to do with service or service proxys to match
what it creates and its single getService method? Or to have got rid
of  SCAClientFactory instead of SCAClient so it became:

SCAClient scaClient = SCAClient.newInstance(URI.create("someDomainURI"));
SomeService service = scaClient.getService(SomeService.class, "SomeServiceURI");

and then when you look at the two lines together like this and read
that the spec says the service URI is relative to the domain URI
couldn't that be simplified to just use a single uri for them both -
domainURI/serviceURI? You could even simplify it to have a static
helper method that under the covers still uses the newInstance and
SCAClientFactoryFinder but users can do just:

SomeService service = SCAClient.getService(SomeService.class,
"someDomainURI/SomeServiceURI");

   ...ant

Reply via email to