[omniORB] Beginner's question on IOR and multiple interfaces

baileyk@schneider.com baileyk@schneider.com
Tue Sep 10 14:51:01 2002


Perhaps you should post some example IDL and C++ code.  I don't think it is
a good idea to derive a servant from two unrelated skeleton classes, if
that's what you are doing.  The IORs I've seen will contain the most
derived RepositoryId.  How are you generating two IORs for the same object
and getting two different IORs?  And why should the client care?  Is the
client comparing IORs in some way to determine identity of the server
object?  If so, you should not do that.  Include some sort of identity
method in the IDL interfaces instead.

Kendall



                                                                                                                       
                    Jens Nissen                                                                                        
                    <jens.nissen@gmx.net>              To:     omniorb-list@omniorb-support.com                        
                    Sent by:                           cc:                                                             
                    omniorb-list-admin@omniorb-s       Fax to:                                                         
                    upport.com                         Subject:     [omniORB] Beginner's question on IOR and multiple  
                                                        interfaces                                                     
                                                                                                                       
                    09/10/2002 08:12 AM                                                                                
                                                                                                                       
                                                                                                                       




I want to implement a server object, which exposes two or more interfaces
to
its internal representation.
If an IOR is a reference to an object, I would expect, that all interfaces
"share" the same IOR, as they expose the same object. The client uses
_narrow
to select the interface and thus the proper "view" on the (internal)
object.
Looking at the code generated by omniidl (from OmniORB3), it looks as if
each of the interfaces has its own IOR.
(a) Does each interface have to have its own IOR?
(b) If yes, how does the client know, which IORs belong together?
(c) If no, how do I have to rewrite the server to make the interfaces
expose
the same IOR?
(d) If yes (again), why is that so? (Historic? Easier to implement?
Philosphy of CORBA?)

Thanks in advance,

Jens

--
GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net

_______________________________________________
omniORB-list mailing list
omniORB-list@omniorb-support.com
http://www.omniorb-support.com/mailman/listinfo/omniorb-list