NAME

CORBA::Object::non_existent - (operation) determine whether an object has been destroyed


SYNOPSIS

IDL

  module CORBA
    {
    interface Object
      {
      boolean non_existent ( ) ;
      } ;
    } ;

C

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

C++

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

Java

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

Perl

(TBS)

Lisp

(TBS)


DESCRIPTION

The CORBA::Object::non_existent operation determines whether an object has been destroyed. It is so named because, if you have the reference, the object probably existed at one time, and if it no longer exists then it presumably has been destroyed.

If the object is implemented on a remote ORB, then the local ORB may have to contact the remote ORB to ascertain that the object still exists. If it is unable to determine whether the remote object exists, then it will return FALSE rather than raise an exception. If the target object does not exist, then it will return TRUE rather than raise the CORBA::OBJECT_NOT_EXIST exception.


PARAMETERS

o

(C mapping only) the target object

ev

(C mapping only) a pointer to the CORBA_Environment


RETURN VALUE

TRUE if the object does not exist; FALSE if the object exists, or if its existence is uncertain


EXCEPTIONS

(standard system exceptions)


NOTES

  1. (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.

  2. (C++ mapping only) The C++ mapping of names may vary, depending on the implementation's support for nested classes and namespaces. The rules are:

        if C++ namespace is supported,
            then map IDL module to C++ namespace
        else if C++ nested classes are supported,
            then map IDL module to a C++ class
        else
            use the C mapping for names

    The C++ synopsis, above, assumes namespace support. For other situations, adjust accordingly.


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.