[omniORB] omniINSPOA and bidir connections (omniORB4)

baileyk@schneider.com baileyk@schneider.com
Fri Sep 6 19:58:01 2002


This would confirm my guess that a child POA of the INS POA does not share
the INS capabilities of its parent.  So the only way to get server objects
available via a corbaloc URI is
1) activate them in the INS POA
2) use omniMapper
3) use a servant in the INS POA that raises omniORB::LOCATION_FORWARD and
contains the IOR of a server object, possibly activated in a different POA
within the same process.  And one might as well copy the code for this from
omniMapper.

If the INS POA does not have the desired policies, that rules out option 1,
right?

Question:  Is there a case where use of a servant manager or default
servant in an INS POA would be desirable?  I'm imagining a case where one
wishes to invoke methods on database backed objects, and would like to use
a corbaloc URI constructed from the primary key.  Avoiding the round-trip
times needed for a LOCATION_FORWARD or factory method call might be a good
thing.  I suppose there's no way to avoid an is_a call.  Perhaps it makes
sense for omniORB to use the omniINSPOA's first child POA if there is one
for requests which lack a POA name.  That way applications could use the
default INS POA or create one of their own if they need different policies.


Kendall



                                                                                                                       
                    Duncan Grisby                                                                                      
                    <duncan@grisby.org>                To:     "omniORB" <omniorb-list@omniorb-support.com>            
                    Sent by:                           cc:                                                             
                    omniorb-list-admin@omniorb-s       Fax to:                                                         
                    upport.com                         Subject:     Re: [omniORB] omniINSPOA and bidir connections     
                                                        (omniORB4)                                                     
                                                                                                                       
                    09/06/2002 01:05 PM                                                                                
                                                                                                                       
                                                                                                                       




On Friday 6 September, baileyk@schneider.com wrote:

> I've just looked over the omniMapper source.  It doesn't use a servant
> manager.  It has a dedicated servant for each id -> ref mapping.
Probably
> for good reason, so you may want to duplicate this.

The good reason is that it's impossible to have a servant manager in
the INS POA. To dispatch through a servant manager, the ORB has to
find the POA for the object, and from that find the servant manager.
It finds the POA by getting the POA name out of the object key. The
whole point of the INS POA is that it doesn't put the name of the POA
in its object keys.

Cheers,

Duncan.

--
 -- Duncan Grisby         --
  -- duncan@grisby.org     --
   -- http://www.grisby.org --
_______________________________________________
omniORB-list mailing list
omniORB-list@omniorb-support.com
http://www.omniorb-support.com/mailman/listinfo/omniorb-list