[omniORB-dev] Server support for ImR interfaces

Thomas Lockhart lockhart@fourpalms.org
Thu, 23 Jan 2003 08:36:10 -0800


Duncan has indicated that he would like to see no implicit support for 
the ImR within the omniORB orb. So a server interacting with an ImR 
would have explicit calls. What would a complete solution look like from 
an application server point of view? I'd like to see a suggested code 
snippet or at least a sequence of operations required by a server. And 
this should include managing object and POA startup/creation and 
shutdown/destruction, since those need to coordinate with an ImR and 
could be initiated by either the ImR or by the application server itself.

I just reviewed the TAO docs for their ImR and notice that the 
implementation changed recently to support a more distributed model than 
before. They have the ImplRepo_Service application as always, but now 
the ImR_Activator does most of the heavy lifting, with the 
ImplRepo_Service being simply a single point of contact for a client, 
then delegating the work to an ImR_Activator running on the host for the 
target server. We should certainly examine the IDL associated with these 
applications (actually, the files are ".pidl" since they require a bit 
of massaging). For example, I was thinking about the need for the ImR to 
test for the health of a server and notice that the TAO IDL include a 
ping() method for just this purpose. And we should examine IDL from 
other ORB implementations to get guidance where they overlap with our goals.

                    - Tom