NAME

CORBA::Object::is_equivalent - (operation) determine whether two different object references are equivalent


SYNOPSIS

IDL

  module CORBA
    {
    interface Object
      {
      boolean is_equivalent ( in Object other_object ) ;
      } ;
    } ;

C

  #include <orb.h>
  CORBA_boolean CORBA_Object_is_equivalent
      ( CORBA_Object o,
      CORBA_Object other_object,
      CORBA_Environment * ev ) ;

C++

  #include <orb.h>
  namespace CORBA
    {
    class Object
      {
        public:
          Boolean _is_equivalent ( Object_ptr other_object ) ;
      } ;
    } ;

Java

  package org.omg.CORBA ;
  public interface Object
    {
    boolean _is_equivalent ( Object that ) ;
    }

Perl

(TBS)

Lisp

(TBS)


DESCRIPTION

The CORBA::Object::is_equivalent operation is used to determine whether two object references (that of the target object, and that of the other_object) are equivalent. In other words, do they refer to the same object?

The determination of equivalence can be time-consuming and can use extensive resources. Therefore, an ORB is not required to exhaust all mechanisms to answer the question. In fact, an ORB may simply return FALSE without contacting remote ORBs or doing other things to determine equivalence. Therefore, when is_equivalent returns FALSE, the application must not assume that the objects are not equivalent.

On the other hand, a return value of TRUE is a definitive indication that both references point to the same object.


PARAMETERS

o

(C mapping only) the target object

ev

(C mapping only) a pointer to the CORBA_Environment


RETURN VALUE

TRUE if both references point to the same object; otherwise, or if uncertain or undetermined, FALSE


EXCEPTIONS

(standard system exceptions)


NOTES

  1. Policies set locally will not affect object equivalence as determined by this operation. Two object references may have different policies, yet be equivalent. (That is, they refer to the same object despite the policy differences.)

  2. (C++ mapping only) The IDL header is named orb.idl. The C++ mapping specification does not mention a specific header name. One might presume the header name should be orb.h. However, some ORB vendors are more imaginative, and use other, different header file names.


SEE ALSO

CORBA::Object(3corba)


COPYRIGHT

Copyright 2012 Michael Marking. This document is distributed as part of corbadoc, a documentation-only package with the goal of describing the main CORBA-related definitions from the OMG specifications. This is version corbadoc-0.1.3-prototype, released 2011.12.23. corbadoc is an incomplete work in progress; this is a snapshot release. New releases will be posted at http://www.tatanka.com/software/corbadoc/.

The corbadoc documents, including this one, are licensed under the GNU Free Documentation License, v.1.3.