Re: [sca-j] JAVA-1: Moving the Domain URI from getService() to newInstance()

From
Mike Edwards <>
Date
2009-06-25T12:43:32+00:00
ID
Thread
Re: [sca-j] JAVA-1: Moving the Domain URI from getService() to newInstance()
Simon,

I had not gone in for the enforcement
of the one arg constructor in the vendor ClientFactory classes, although

the default FactoryFinder assumed its
presence:

         
  Constructor<? extends
SCAClientFactory> URIConstructor = 

         
          factoryImplClass.getConstructor(domainURI.getClass());

I can buy the argument for enforcement
in the way you suggest and add the required constructor methods

to SCAClientFactory.

What is the argument for the protected
getDomainURI() method on SCAClientFactory?  I can more easily see
the argument

for a public version of such a method,
although it did not seem essential, which is why I left it out (to keep
it as simple as possible)

Yours,  Mike.

Strategist - Emerging Technologies, SCA & SDO.

Co Chair OASIS SCA Assembly TC.

IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.

Phone & FAX: +44-1962-818014    Mobile: +44-7802-467431  

Email:  

Simon Nash <> wrote on 25/06/2009
11:31:24:

> Mike Edwards wrote:

> > 

> > Folks,

> > 

> > I've done a pass at implementing Simon's thoughts in spec form
here:

> > 

> > http://www.oasis-open.org/apps/org/workgroup/sca-j/download.php/

> 33076/sca-javacaa-1.1-spec-cd02-rev3%20Issue1%20rev%207.doc 

> > 

> > http://www.oasis-open.org/apps/org/workgroup/sca-j/download.php/

> 33077/sca-javacaa-1.1-spec-cd02-rev3%20Issue1%20rev%207.pdf 

> > 

> I took a quick look through this and I don't see anything to support

> the following requirement from my previous email about this:

> 

> To make this work in the VendorA/VendorB situation that we have

> been discussing, it would be necessary to also do one of the

> following:

>   a) add additional methods setDomainURI() and getDomainURI()
to

>      the SCAClientFactory abstract class

>   b) require every factory to have a one-argument constructor
that

>      takes the domain URI as an argument.  This
could be enforced by

>      putting a private no-argument constructor and
a protected

>      one-argument contructor on the SCAClientFactory
abstract class,

>      together with a protected concrete getDomainURI()
method that

>      returns the domain URI.

> Of these two options, my preference is for b).

> 

> Please refer to my previous email for more detail on why this

> is needed.

> 

Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with number
741598. 

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU