[omniORB] strange behavior of '_this()' method

Duncan Grisby duncan at grisby.org
Thu Mar 26 15:49:08 GMT 2009


On Wednesday 25 March, Michael Kilburn wrote:

> Hmm... According to my understanding of terminology "CORBA object" is a
> virtual entity described by an interface in idl file. Servant instance is an
> incarnation of CORBA object (i.e. it implements given interface). When servant
> implements multiple interfaces -- this is what called "incarnates multiple
> CORBA objects". I.e. number of activations have nothing to do with it. But I
> could be wrong, of course...

That explains the confusion -- your terminology is not quite right.

A _CORBA object_ is a logical entity.

Each object has an _interface_ that describes the operations it
supports.

An object has a single interface; any number of objects can have the
same interface.

The only way to access an object is through an _object reference_.

An object reference refers to just one object; multiple object
references can refer to the same object.

Objects are made available by _servers_. Servers can provide an
arbitrary number of objects.

Servers map CORBA objects to programming language constructs with
_object adapters_. The Portable Object Adapter (POA) is the standard
object adapter definition.

A _servant_ is a programming language object.

A servant is implemented by a _servant class_. A servant class
implements a single CORBA interface. A servant class may not implement
more than one interface. [Note to pedants: I'm ignoring DSI here.]

When an object adapter maps a CORBA object to a servant, the servant is
said to _incarnate_ the CORBA object.

A single servant can incarnate any number of CORBA objects, but they
must all have the same interface.

To statically map a CORBA object to a servant, you _activate_ the
servant. Activating a servant causes it to incarnate the corresponding
object. Other POA policies allow objects to be incarnated on demand.


All of this is described quite well in the CORBA spec, especially the
chapter on the POA.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --



More information about the omniORB-list mailing list