[omniORB] Short identifier for objects?

Keeley, Michael mkeeley@orchestream.com
Thu, 4 Oct 2001 14:21:32 +0100


Hi,

Background:

I am in the process of writing a "replay tool" that can emulate one side of
a CORBA conversation from one recorded previously. (This is to enhace our
component testing abilities).
It's not required to be an all-singing, all-dancing, robust,
works-with-any-orb tool, just as long as it can do the basics using omniORB
2.8, we'll be fine.

One of the tricks is to identify objects as they are passed back and forth
across the wire, and to match them up during replay. So that when object
Apple from process Eve is returned to process Adam, and then later on Adam
makes a call on the Apple (er... Eat for example), the two recorded objects
can be matched successfully.
The recording is done at Adam's end, so the return value from Adam: apple =
Eve->GetApple() is output using the IOR of the Apple. Later on the Adam:
apple->Eat() call causes the IOR of apple to be output. The replay tool
compares the IOR strings to get a match.

I know that you are not *supposed* to compare IOR string directly. However,
as they are both output from the same instance of a process, they will be
the same, right?

The Question:

IORs are unweildy to use in this manner, especially for high volumes of
calls.
Is there a smaller thing that I can get that will be unique for a given
object and process? (The servant for the object may not be in the same
process). 
I don't actually need the IOR, as I don't need to be able to get to the
object from this id.

Like: 
the object key? (can't get this through the api?)
an address of some object? 
something else?

Cheers,
MikeK.


--
This communication contains confidential information intended solely for the use of the individual/s and/or entity or entities to whom it was intended to be addressed.  If you are not the intended recipient, be aware that any disclosure, copying, distribution, or use of the contents of this transmission is prohibited.  If you have received this communication in error, please contact the sender immediately, delete this communication from your system, and do not disclose its contents to any third party, or use its contents.  Any opinions expressed are solely those of the author and do not necessarily represent those of Orchestream Ltd or its group of companies unless otherwise specifically stated.