Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# Exception.cpp File Reference

`#include "ace/streams.h"`
`#include "ace/Dynamic_Service.h"`
`#include "ace/Malloc_Allocator.h"`
`#include "tao/Exception.h"`
`#include "tao/Typecode.h"`
`#include "tao/Environment.h"`
`#include "tao/Any.h"`
`#include "tao/CDR.h"`
`#include "tao/ORB.h"`
`#include "tao/ORB_Core.h"`
`#include "tao/Dynamic_Adapter.h"`
`#include "tao/Exception.i"`

Include dependency graph for Exception.cpp:

## Defines
#define | STANDARD_EXCEPTION_LIST
#define | TAO_TC_BUF_LEN 256
#define | TAO_SYSTEM_EXCEPTION(name)
## Functions
const char * | get_rcsid_TAO_Exception (const char *)
ostream & | operator<< (ostream &os, const CORBA_Exception &e)
| TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN(CORBA) TAO_NAMESPACE_DEFINE(CORBA
STANDARD_EXCEPTION_LIST void | tao_insert_for_insertion_system_exception (CORBA::Any &any, const CORBA::SystemException &ex, const char *msg)
STANDARD_EXCEPTION_LIST void | tao_insert_system_exception (CORBA::Any &any, CORBA::SystemException *ex, CORBA::Any::_tao_destructor destructor, const char *msg)
STANDARD_EXCEPTION_LIST CORBA::Boolean | tao_insert_in_extractor_system_exception (const CORBA::Any &any, CORBA::SystemException *&tmp, CORBA::SystemException *(*allocator)(void), CORBA::TypeCode_ptr tc_name, CORBA::Any::_tao_destructor destructor, const char *compare_IR_Id, const char *msg)
## Variables
const char * | rcsid_TAO_Exception = get_rcsid_TAO_Exception ( rcsid_TAO_Exception )
CORBA::TypeCode_ptr | TC_completion_status

## Define Documentation

#define STANDARD_EXCEPTION_LIST

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA::Boolean operator>>= (const CORBA::Any &any, \
                                const CORBA_##name *&ex) \
    { \
      ex = 0; \
      CORBA_SystemException *tmp; \
      if (tao_insert_in_extractor_system_exception (any, \
           tmp, \
           _tao_allocator_##name, \
           CORBA::_tc_##name, \
           CORBA_##name ::_tao_any_destructor, \
           "IDL:omg.org/CORBA/" #name ":1.0", \
           "\tCORBA::Any extraction of CORBA_" #name "\n") == 0) \
             { \
                 ex = 0; \
             return 0; \
             } \
     ex = (CORBA_##name*)tmp; \
     return 1; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    static CORBA_SystemException* _tao_allocator_##name (void) \
    { \
      return new CORBA_##name; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    void operator<<= (CORBA::Any &any, CORBA_##name *ex) \
    { \
      tao_insert_system_exception (any, ex, \
              CORBA_##name ::_tao_any_destructor, \
              "\tCORBA::Any insertion (non-copy) of CORBA_" #name "\n" \
                                   ); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    void operator<<= (CORBA::Any &any, const CORBA_##name &ex) \
    { \
      tao_insert_for_insertion_system_exception (any, ex, \
                "\tCORBA::Any insertion (non-copy) of CORBA_" #name "\n" \
                                   ); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA_Exception * \
    CORBA_##name ::_tao_duplicate (void) const \
    { \
      CORBA_Exception *result; \
      ACE_NEW_RETURN (result, CORBA_##name (*this), 0); \
      return result; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    void \
    CORBA_##name ::_tao_any_destructor (void *x) \
    { \
      CORBA_##name *tmp = ACE_static_cast (CORBA_##name *, x); \
      delete tmp; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA::TypeCode_ptr \
    CORBA_##name ::_type (void) const \
    { \
      return CORBA::_tc_ ## name; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA_##name :: CORBA_##name (void) \
      :  CORBA_SystemException ("IDL:omg.org/CORBA/" #name ":1.0", \
                                #name, \
                                TAO_DEFAULT_MINOR_CODE, \
                                CORBA::COMPLETED_NO) \
    { \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    void \
    CORBA_##name ::_raise (void) \
    { \
      TAO_RAISE (*this); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA_##name * \
    CORBA_##name ::_downcast (CORBA_Exception* exception) \
    { \
      if (exception->_is_a ("IDL:omg.org/CORBA/" #name ":1.0")) \
        return ACE_dynamic_cast (CORBA_##name *, exception); \
      return 0; \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    int \
    CORBA_##name ::_is_a (const char* interface_id) const \
    { \
      return ((ACE_OS_String::strcmp ( \
                   interface_id, \
                   "IDL:omg.org/CORBA/" #name ":1.0") == 0) \
              || CORBA_SystemException::_is_a (interface_id)); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    CORBA::release (CORBA::_tc_ ## name); \
      CORBA::_tc_ ## name = 0;

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    { \
        const char* xid = "IDL:omg.org/CORBA/" #name ":1.0"; \
        if (ACE_OS_String::strcmp (id, xid) == 0) \
          return new CORBA:: name; \
      }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    TAO_Exceptions::make_standard_typecode (CORBA::_tc_ ## name, \
                                              #name, \
                                              (char*)tc_buf_##name, \
                                              sizeof(tc_buf_##name) \
                                               ACE_ENV_ARG_PARAMETER); \
      ACE_CHECK;

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

| Value:
    static CORBA::Long tc_buf_##name[TAO_TC_BUF_LEN/sizeof(CORBA::Long)]; \
        TAO_NAMESPACE_TYPE(CORBA::TypeCode_ptr) \
        TAO_NAMESPACE_BEGIN (CORBA) \
        TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_##name, 0) \
        TAO_NAMESPACE_END

#define TAO_TC_BUF_LEN 256

## Function Documentation

const char* get_rcsid_TAO_Exception | ( | const char * |  | ) | `[inline, static]`

ostream& operator<< | ( | ostream & | os,
|  | const CORBA_Exception & | e
| ) |

STANDARD_EXCEPTION_LIST void tao_insert_for_insertion_system_exception | ( | CORBA::Any & | any,
|  | const CORBA::SystemException & | ex,
|  | const char * | msg
| ) | `[static]`

STANDARD_EXCEPTION_LIST CORBA::Boolean tao_insert_in_extractor_system_exception | ( | const CORBA::Any & | any,
|  | CORBA::SystemException *& | tmp,
|  | CORBA::SystemException *(* | allocator)(void),
|  | CORBA::TypeCode_ptr | tc_name,
|  | CORBA::Any::_tao_destructor | destructor,
|  | const char * | compare_IR_Id,
|  | const char * | msg
| ) | `[static]`

STANDARD_EXCEPTION_LIST void tao_insert_system_exception | ( | CORBA::Any & | any,
|  | CORBA::SystemException * | ex,
|  | CORBA::Any::_tao_destructor | destructor,
|  | const char * | msg
| ) | `[static]`

TAO_NAMESPACE_TYPE | ( | CORBA::TypeCode_ptr |  | ) |

## Variable Documentation

const char* rcsid_TAO_Exception = get_rcsid_TAO_Exception ( rcsid_TAO_Exception )`[static]`

CORBA::TypeCode_ptr TC_completion_status