← Prev in month ← Prev in thread
Next in thread → Next in month →

RE: [sca-j] [JAVA-1] Accessing SCA Services from non-SCA component code - Updated Proposal

From
Mark Combellack <>
Date
2009-07-06T13:23:15+00:00
ID
Thread
RE: [sca-j] [JAVA-1] Accessing SCA Services from non-SCA component code - Updated Proposal
Hi Mike,

 

I have read through your latest proposals and
it looks good. 

 

I have the following comments. Line
numbers are based on the PDF version of the document.

 

 

Non-editorial

 

Move of
getService() method to the SCAClientFactory

 

I am not sure that I am a fan of this
change since the SCAClientFactory no longer follows the single responsibility
principle [1] since it does two things, namely builds the SCAClientFactory
instance and looks up services. I realise that this change reduces the number
of classes since it removes the SCAClient interface.

 

This may have been discussed on the last
call that I missed.

 

getService
should not throw NoSuchDomainException

 

Line 1263 & 2573 – 2576: Does
the getService method need to throw a NoSuchDomainException? Surely this will
be checked by the newInstance() call since we always pass the domain URI to the
newInstance() method?

 

By removing this checked exception, the code
that the user writes will be simpler. 

 

Should
the protected SCAClientFactory(URI domainURI) constructor throw NoSuchDomainException?

 

I’m not completely clear who will be
calling the SCAClientFactory() protected constructor but…

 

Line 1173 & 1266 – 1268 & 2475
– 2481  - Should we allow the subclass to throw a NoSuchDomain
exception so that it can inform the base class that the URI is invalid?

 

Vendors
must provide implementation of SCAClientFactory class

 

Line 2422: “Vendors can provide” – surely vendors
have to provide an implementation of this abstract class to be able to pass the
conformance tests?

 

 

Editorial

 

References
to SCAClient interface

 

There are references to the SCAClient
interface in the following lines:

 

 
226

 
227

 
229

 
231

 
266

 
1162

 
1198

 
There
     are lots – I started compiling a full list but it was rather long so
     I would suggest searching for them all.

 

Spelling
mistakes, typos, etc

 

 
Lines
     1205, 1217, 1229 & 1244 – vlaid -> valid

 
Line
     2923 – Change “provide an subclass” to “provide a
     subclass”

 

Thanks,

 

Mark

 

[1] http://en.wikipedia.org/wiki/Single_responsibility_principle

 

Mark
 Combellack| Software Developer| Avaya | Eastern Business Park | St. Mellons | Cardiff |
CF3 5EA | Voice: +44 (0) 29 2081 7624 | 

From:
Mike Edwards [mailto:] 

Sent: 30 June 2009 15:48

To: OASIS Java

Subject: [sca-j] [JAVA-1]
Accessing SCA Services from non-SCA component code - Updated Proposal

 

Folks, 

Following
on from the discussions on Monday's call here is an updated proposal for
JAVA-1. 

It
incorporates the following: 

o
NoSuchDomainException on all the newInstance(...) methods of SCAClientFactory 

 
  and  on the find method of SCAClientFactoryFinder 

o
Eliminated the SCAClient interface and moved the getService() method to
SCAClientFactory 

 
  - associated changes in SCAClientFactory methods 

o
Remove private fields from schematic presentation of SCAClientFactory class in
Section 8 

o
Fix example in Section 4.2.1 

The
updated document is here: 

http://www.oasis-open.org/apps/org/workgroup/sca-j/download.php/33169/sca-javacaa-1.1-spec-cd02-rev3%20Issue1%20rev%209.pdf

http://www.oasis-open.org/apps/org/workgroup/sca-j/download.php/33168/sca-javacaa-1.1-spec-cd02-rev3%20Issue1%20rev%209.doc

I
will upload the code artifacts to OASIS SVN soon. 

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:  

 

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
← Prev in month ← Prev in thread
Next in thread → Next in month →