- 
                            Key: CORBA3-56
- 
                            Legacy Issue Number: 4945
- 
                            Status: closed
- 
                            Source: International Business Machines ( Ann Collins)
- 
                            Summary:The overhead of processing TaggedComponents within an IOR becomes 
 significant when done many times, as in the case of J2EE implementations
 where multiple request interceptors are used. IOR access and creation
 performance could be improved by making better use of Java facilities to
 provide access to an IOR's components without the overhead of CDR encoding,
 and by recognising that many of the constituent parts of an IOR are
 identical for all objects within an object adapter.I would like to propose that we introduce a Java API for IOR, along the 
 following lines:-An abstract model of an IOR could be defined as follows: 
 an IOR has a type ID string, and contains TaggedProfile instances
 an IIOPProfile is a TaggedProfile
 an IIOPProfile is composed of an IIOPProfileTemplate and an object ID
 an IIOPProfileTemplate has an ObjectKeyTemplate, and contains
 TaggedComponents
 a TaggedComponent has an ID, and can be written to an OuputStream.
 a TaggedComponentFactory reads a TaggedComponent from an InputStream.It should be possible to manipulate IOR TaggedProfiles and 
 IIOPProfileTemplate TaggedComponents using all of the facilities in the
 Java collections framework.Templates can be used to create IIOPProfile and ObjectKey because the basic 
 object adapter model for object creation is to establish all properties of
 an IOR (except for type and object ID) when the object adapter is created.
 This has been present for the POA essentially from the beginning, since
 policies can only be passed to create_POA, and cannot be changed on an
 existing POA. The Portable Interceptors work has also made this clear,
 since the IOR interceptor runs only when an object adapter is created,
 which is the only time that user code can add tagged components to an IOR.TaggedComponent is a framework that may be extended to support application 
 defined TaggedComponents. It would be necessary to be able to register
 TaggedComponentFactory instances with an ORB, in which case any IOR
 unmarshalled by that ORB instance would use the registered
 TaggedComponentFactory to unmarshal the TaggedComponent.In order to use the IOR API, a method would be needed, probably on ORB, 
 to obtain an abstract IOR from an object reference.
- 
                            Reported: CORBA 2.6 — Wed, 6 Mar 2002 05:00 GMT
- 
                            Disposition: Resolved — CORBA 3.0.2
- 
                            Disposition Summary:No Data Available 
- 
                            Updated: Fri, 6 Mar 2015 20:58 GMT