CORBA::Object - The base class for all object references
use lib "$ENV{OPALORB_ROOT}"; use CORBA; use CORBA::Exception;
my $status = 0; try { my $orb = CORBA::ORB_init(\@ARGV);
my $obj = $orb->string_to_object($ior);
my $req; my $ret = new CORBA::NamedValue(); $obj->_create_request(undef, 'test', [], \$ret, \$req);
... } catch CORBA::Exception with { my $ex = shift; ... } catch Error::Simple with { my $ex = shift; ... };
The CORBA::Object is the base class for all interfaces and provides a few interesting methods.
_id
- Returns the repository id (IDL:omg.org/CORBA/Object:1.0) of
CORBA::Object.
_is_a
- Takes a repository id as the only parameter and compares it to
the repository id of itself.
_is_equivalent
- A simple minded equivalence test for object
references. It only compares the repository id's and the number of
profiles in each object reference.
_non_existent
- Returns true if called on a narrowed object reference
and the remote invocation fails.
_repository_id
- Returns the repository id of the object reference
which may be different from the repository id returned by _id
.
_get_orb
- Returns the ORB associated with this object reference.
_create_request
- Provide the context reference (or undef), the
operation name string, the CORBA::NamedValue array reference,
the CORBA::NamedValue result reference, and the scalar reference in which
the new CORBA::Request object will be placed.