[omniORB] IMplementation Repository

Sveta Shasharina sveta@txcorp.com
Mon, 1 Oct 2001 09:49:22 -0600


Hi Duncan!

Thanks for your response.  I actually do read the recommended
book regularly.  The problem with the book is that introduces
many terms like object, servant, activation and incarnation, 
but does not give an immediate example.  

Could you also recommend any reading (with examples) on
Portable Interceptors?  There is an example in ORBacus4, but
no description of what it does.

Sincerely,
Sveta 

-----Original Message-----
From: dpg1@uk.research.att.com [mailto:dpg1@uk.research.att.com]On
Behalf Of Duncan Grisby
Sent: Monday, October 01, 2001 5:00 AM
To: sveta@txcorp.com
Cc: omniorb-list@uk.research.att.com
Subject: Re: [omniORB] IMplementation Repository 


On Friday 28 September, "Sveta Shasharina" wrote:

> I have the same problem.  Depending on the client decision,
> I will need different servants started.  I decided that
> I will create a servant shell, which will have methods like
> string makeServant1(), string makeServant2() etc and return
> the IOR strings allowing the client to get the correct reference.

If you want to return an object reference, you shouldn't return IOR
strings!  Just declare the IDL to return the object references
themselves. Either use base Object or, preferably, the specific
interfaces:

  interface FirstInterface { ... };
  interface SecondInterface { ... };
  
  interface ObjectChooser {
    FirstInterface getFirstType();
    SecondInterface getSecondType();
  };

and so on.

> Am I doing extra work and should look at the Servant Manager?
> Is it the omniORB thing or standard?

Servant Managers are standard things. They are orthogonal to the issue
of creating CORBA objects on demand -- they deal with activating
servants on demand.

Understanding the difference between servants and CORBA objects is one
of the most important issues before you can use CORBA successfully. I
recommend you get and read Henning and Vinoski's book.

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --