OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sca-j message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: NEW ISSUE: Java CAA/Java C&I - Allow call semantics to be specified ininterface.java/implementation.java



TARGET:

Java CAA Spec and Java C&I Spec

DESCRIPTION:

SCA-J currently requires the use of annotations to specify whether an interface is 'remotable' and whether an implementation of a remotable service allows pass-by-reference invocation.  In some circumstances it is desirable, or even necessary, to be able to state this information without the use of annotations:
1.  The interface may be part of some standard which does not use the SCA-J annotations.
2.  The interface and implementation may be based on a pre-annotation version of Java (for example, J2ME, OSGi (Java 1.4)).
3.  The interface may have been compiled without the annotations and a recompile may be prohibitive.

PROPOSAL:
 
The proposal is to adopt the attributes used in SCA-C/CPP to allow this information to be specified in interface.java and implementation.java.

In the CAA specification, the suggested edits are (see attached doc):
1.  Section 3.1 - add and define a new @remotable attribute.  Also add a new conformance statement for the relationship between the @Remotable annotation and the @remotable attribute.
2.  Appendix A - add the attribute definition to the XML schema for interface.java.

Changes considered, but excluded:
1.  Considered changing section 2.1.2 but this seemed to be specifically covering the metadata in the Java code, rather than the general concept of 'remotable'.

2.  Considered having an @remotableCallback attribute, but given it is an error to mix remote and local interfaces (section 6.7), I concluded the @remotable attribute should apply to both.

In the C&I specification, the suggested edits are (see attached doc):
1.  Section 2.2 - Add the @remotable attribute description and example.  Mention the @allowsPassByReference attribute.
2.  Section 9 - Add the @allowsPassByReference attribute and a description.  FYI: I found the earlier description of the @AllowsPassByReference annotation a little terse and confusing and instead based the description on the text from section 8.1 in the CAA spec.
3.  Appendix A - add new appendix with the XML schema for implementation.java (thanks to Mike Edwards for providing this).  Add the definition for a new @allowsPassByReference attribute.



Regards,

Graham.



Graham Charters PhD CEng MBCS CITP
STSM, AIM Technical Lead OSGi Expert Groups, Master Inventor, UKISA Technical Staff Member
IBM United Kingdom Limited, MP 146, Hursley Park, Winchester, SO21 2JN, UK
Tel:  (Ext) +44-1962-816527     (Int) 7-246527   (Fax) +44-1962-818999
Internet: charters@uk.ibm.com






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













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






sca-javacaa-1.1-spec-cd01-rev4a-IssueRemote.doc

sca-javaci-1.1-spec-wd02_IssueRemote.doc



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]