Issue 2477: RMI Repository ID proposed change (java2idl-rtf) Source: (, ) Nature: Uncategorized Issue Severity: Summary: Summary: For the scoped name component, it is far simpler to use the actual class name of the java class with all the invalid IDL characters unicode escaped. Resolution: Closed, accepted Revised Text: Resolution: make it so. This has been modified to correct errors in the RMI format specification and is being put up for vote to approve the mdified and error corrected version. Revised Text: In section 10.6, change text added by resolution to issue 2329 from: This specification defines four formats: one derived from OMG IDL names, one that uses OMG IDL names and Java serialization version UIDs, one that uses DCE UUIDs, and another intended for short-term use, such as in a development environment. to the following text: This specification defines four formats: one derived from OMG IDL names, one that uses Java class names and Java serialization version UIDs, one that uses DCE UUIDs, and another intended for short-term use, such as in a development environment. In section 10.6.2, change the grammar from RMI: <scoped name> : <hash code> [ : <serialization version UID> ] to: RMI: <class name> : <hash code> [ : <serialization version UID> ] Replace the following paragraph by: The class name is a Java class name as returned by the getName method of java.lang.Class. Any characters not in ISO Latin 1 are replaced by "\U" followed by the 4 hexadecimal characters (in upper case) representing the Unicode value. Change the examples to: RMI:foo.bar:1234567812345678 RMI:foo.bar;:1234567812345678:ABCD123456781234 And an example of a Java array of valuetype ::foo::bar would be RMI:[Lfoo.bar;:1234567812345678:ABCD123456781234 For a Java class x\u03bCy which contains a Unicode character not in ISO Latin 1, an example RepositoryId is RMI:foo.x\U03BCy:8765432187654321 Actions taken: February 22, 1999: received issue June 4, 1999: closed issue September 16, 1999: closed issue Discussion: End of Annotations:===== Date: Mon, 22 Feb 1999 12:00:57 +0000 From: Simon Nash Organization: IBM To: issues CC: java2idl Subject: RMI Repository ID proposed change (issue raised on behalf of Vijay Natarajan, Inprise) Proposal: For the scoped name component, it is far simpler to use the actual class name of the java class with all the invalid IDL characters unicode escaped. Reworking Simon's examples below: would now be --- . would be . --- . would be . --- and now where it really gets interesting is for the mapping of arrays. In the reverse mapping, an array foo.bar[][][], is mapped to ::org::omg::sequences::foo::seq3_bar resulting in a repId of "RMI:org/omg/sequences/foo/seq3_bar:0123456789ABCDEF" which in the new proposal would be "RMI:[[[Lfoo.bar;:0123456789ABCDEF" and int hello[][][][] maps to ::org::omg::sequence::seq4_long would have mapped to "RMI:org/omg/sequences/seq4_long:0123456789ABCDEF" and will now map to "RMI:[[[I:0123456789ABCDEF" which is far simpler for constructing the repId and reconstructing the class name than the previous approach. Other Advantages: Less string manipulation and parsing code. Shorter repository Ids This would also allow us to reliably construct helper names for idl entities, as the class name is now encoded in the repository ID, and not the original repId of the IDL Entity (Of course, this assumes that the briefly discussed proposal to box all idl entities in Java values). Simon -- Simon C Nash, Technology Architect, IBM Java Technology Centre Tel. +44-1962-815156 Fax +44-1962-818999 Hursley, England Internet: nash@hursley.ibm.com Lotus Notes: Simon Nash@ibmgb Date: Mon, 01 Mar 1999 12:51:51 -0500 From: Paul H Kyzivat Organization: NobleNet To: Jishnu Mukerji CC: Jeff Mischkinsky , "Robert A. Kukura" , Tom Rutt , Jonathan Biggar , Stephen McNamara , Randy Fox , Bill Janssen , Michi Henning , Juan Jose Hierro Sureda , Ken Cavanaugh , Edward Cobb , orb_revision@omg.org Subject: Re: Core RTF 2.4 Vote 5 References: <36D72069.C65AED82@fpk.hp.com> NobleNet votes YES on: Issue 777: TypedefDef issue Jon Biggar Issue 779: Containers Jon Biggar Issue 1156: resolve_initial_references under-specified Jishnu Mukerji Issue 2487: Inconsistent Definition of Flags type Jishnu Mukerji ABSTAIN on: Issue 2477: RMI Repository ID proposed change I don't have any particular problem with this change, except that it is extremely language binding specific. Language binding stuff seems inappropriate in this section. I would prefer that Ch 10 limit itself to describing the syntax of the repository id itself. The discussion of how the value is computed could be moved to Ch 23, where all the inputs to the computation are described.