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 "Exception.h"`
`#include "Environment.h"`
`#include "Any_SystemException.h"`
`#include "Any_Dual_Impl_T.h"`
`#include "Typecode.h"`
`#include "ORB_Constants.h"`
`#include "TC_Constants_Forward.h"`
`#include "ace/Malloc.h"`
`#include "ace/SString.h"`
`#include "ace/streams.h"`
`#include "tao/Exception.i"`
`#include "ace/OS_NS_stdio.h"`

Include dependency graph for Exception.cpp:

## Namespaces

namespace | CORBA

## @c errno Encoding

The `errno` encoding is located in the bottom 7 bits.
const CORBA::ULong | TAO_UNSPECIFIED_MINOR_CODE = 0x0U
const CORBA::ULong | TAO_ETIMEDOUT_MINOR_CODE = 0x1U
const CORBA::ULong | TAO_ENFILE_MINOR_CODE = 0x2U
const CORBA::ULong | TAO_EMFILE_MINOR_CODE = 0x3U
const CORBA::ULong | TAO_EPIPE_MINOR_CODE = 0x4U
const CORBA::ULong | TAO_ECONNREFUSED_MINOR_CODE = 0x5U
const CORBA::ULong | TAO_ENOENT_MINOR_CODE = 0x6U
const CORBA::ULong | TAO_EBADF_MINOR_CODE = 0x7U
const CORBA::ULong | TAO_ENOSYS_MINOR_CODE = 0x8U
const CORBA::ULong | TAO_EPERM_MINOR_CODE = 0x9U
const CORBA::ULong | TAO_EAFNOSUPPORT_MINOR_CODE = 0xAU
const CORBA::ULong | TAO_EAGAIN_MINOR_CODE = 0xBU
const CORBA::ULong | TAO_ENOMEM_MINOR_CODE = 0xCU
const CORBA::ULong | TAO_EACCES_MINOR_CODE = 0xDU
const CORBA::ULong | TAO_EFAULT_MINOR_CODE = 0xEU
const CORBA::ULong | TAO_EBUSY_MINOR_CODE = 0xFU
const CORBA::ULong | TAO_EEXIST_MINOR_CODE = 0x10U
const CORBA::ULong | TAO_EINVAL_MINOR_CODE = 0x11U
const CORBA::ULong | TAO_ECOMM_MINOR_CODE = 0x12U
const CORBA::ULong | TAO_ECONNRESET_MINOR_CODE = 0x13U
const CORBA::ULong | TAO_ENOTSUP_MINOR_CODE = 0x14U

## Defines

#define | STANDARD_EXCEPTION_LIST
#define | TAO_TC_BUF_LEN 256
#define | TAO_SYSTEM_EXCEPTION(name) CORBA::TypeCode_ptr CORBA::_tc_ ## name = 0;
#define | TAO_SYSTEM_EXCEPTION(name) &CORBA::_tc_ ## name,
#define | TAO_SYSTEM_EXCEPTION(name) (char *) "IDL:omg.org/CORBA/" #name ":1.0",
#define | TAO_SYSTEM_EXCEPTION(name) &CORBA::name::_tao_create,
#define | TAO_SYSTEM_EXCEPTION(name) (char *) # name,
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)
#define | TAO_SYSTEM_EXCEPTION(name)

## Functions

const char * | get_rcsid_TAO_Exception (const char *)
ostream & | operator<< (ostream &os, const CORBA::Exception &e)
void | operator<<= (CORBA::Any &any, const CORBA::Exception &exception)
void | operator<<= (CORBA::Any &any, CORBA::Exception *exception)

## Variables

const char * | rcsid_TAO_Exception = get_rcsid_TAO_Exception ( rcsid_TAO_Exception )
CORBA::TypeCode_ptr | TC_completion_status
CORBA::Long | tc_buf_CORBA [TAO_TC_BUF_LEN/sizeof(CORBA::Long)]
STANDARD_EXCEPTION_LIST CORBA::TypeCode_ptr * | type_code_array []
CORBA::ULong | array_sz
char * | repo_id_array []
TAO::excp_factory | excp_array []

## Define Documentation

#define STANDARD_EXCEPTION_LIST

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

Value:

    CORBA::Boolean operator>>= (const CORBA::Any &any, \
                                const CORBA::name *&ex) \
    { \
      return \
        TAO::Any_SystemException::extract ( \
            any, \
            CORBA::name ::_tao_any_destructor, \
            CORBA::_tc_ ## name, \
            (const CORBA::SystemException *&) ex, \
            &CORBA::name ::_tao_create); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

Value:

    void \
    CORBA::operator<<= (CORBA::Any &any, CORBA::name *ex) \
    { \
      TAO::Any_SystemException::insert ( \
          any, \
          CORBA::name ::_tao_any_destructor, \
          CORBA::_tc_ ## name, \
          ex \
        ); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

Value:

    void \
    CORBA::operator<<= (CORBA::Any &any, const CORBA::name &ex) \
    { \
      TAO::Any_SystemException::insert_copy ( \
          any, \
          CORBA::name ::_tao_any_destructor, \
          CORBA::_tc_ ## name, \
          ex \
        ); \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

Value:

    CORBA::SystemException * \
    CORBA::name ::_tao_create (void) \
    { \
      CORBA::name *result; \
      ACE_NEW_RETURN (result, CORBA::name (), 0); \
      return result; \
    }

#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 ::name (void) \
      :  CORBA::SystemException ("IDL:omg.org/CORBA/" #name ":1.0", \
                                 #name, \
                                 TAO_DEFAULT_MINOR_CODE, \
                                 CORBA::COMPLETED_NO) \
    { \
    } \
    \
    CORBA::name ::name (CORBA::ULong code, CORBA::CompletionStatus completed) \
      : CORBA::SystemException ("IDL:omg.org/CORBA/" #name ":1.0", \
                                #name, \
                                code, \
                                completed) \
    { \
    }

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) |

Value:

    void \
    CORBA::name ::_raise (void) const \
    { \
      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 |  | ) | (char *) # name,

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) | &CORBA::name::_tao_create,

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) | (char *) "IDL:omg.org/CORBA/" #name ":1.0",

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) | &CORBA::_tc_ ## name,

#define TAO_SYSTEM_EXCEPTION | ( | name |  | ) | CORBA::TypeCode_ptr CORBA::_tc_ ## name = 0;

#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
| ) |

void operator<<= | ( | CORBA::Any & | any,
|  | CORBA::Exception * | exception
| ) |

void operator<<= | ( | CORBA::Any & | any,
|  | const CORBA::Exception & | exception
| ) |

## Variable Documentation

CORBA::ULong array_sz`[static]`

Initial value:

        (sizeof (type_code_array) / sizeof (CORBA::TypeCode_ptr)) - 1

TAO::excp_factory excp_array[]

Initial value:

     {
    #define TAO_SYSTEM_EXCEPTION(name)

          STANDARD_EXCEPTION_LIST

          0
        }

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

char* repo_id_array[]`[static]`

Initial value:

     {
    #define TAO_SYSTEM_EXCEPTION(name)

          STANDARD_EXCEPTION_LIST

          0
      }

const CORBA::ULong TAO_EACCES_MINOR_CODE = 0xDU

const CORBA::ULong TAO_EAFNOSUPPORT_MINOR_CODE = 0xAU

const CORBA::ULong TAO_EAGAIN_MINOR_CODE = 0xBU

const CORBA::ULong TAO_EBADF_MINOR_CODE = 0x7U

const CORBA::ULong TAO_EBUSY_MINOR_CODE = 0xFU

const CORBA::ULong TAO_ECOMM_MINOR_CODE = 0x12U

const CORBA::ULong TAO_ECONNREFUSED_MINOR_CODE = 0x5U

const CORBA::ULong TAO_ECONNRESET_MINOR_CODE = 0x13U

const CORBA::ULong TAO_EEXIST_MINOR_CODE = 0x10U

const CORBA::ULong TAO_EFAULT_MINOR_CODE = 0xEU

const CORBA::ULong TAO_EINVAL_MINOR_CODE = 0x11U

const CORBA::ULong TAO_EMFILE_MINOR_CODE = 0x3U

const CORBA::ULong TAO_ENFILE_MINOR_CODE = 0x2U

const CORBA::ULong TAO_ENOENT_MINOR_CODE = 0x6U

const CORBA::ULong TAO_ENOMEM_MINOR_CODE = 0xCU

const CORBA::ULong TAO_ENOSYS_MINOR_CODE = 0x8U

const CORBA::ULong TAO_ENOTSUP_MINOR_CODE = 0x14U

const CORBA::ULong TAO_EPERM_MINOR_CODE = 0x9U

const CORBA::ULong TAO_EPIPE_MINOR_CODE = 0x4U

const CORBA::ULong TAO_ETIMEDOUT_MINOR_CODE = 0x1U

const CORBA::ULong TAO_UNSPECIFIED_MINOR_CODE = 0x0U

CORBA::Long tc_buf_CORBA[TAO_TC_BUF_LEN / sizeof (CORBA::Long)]`[static]`

CORBA::TypeCode_ptr TC_completion_status

STANDARD_EXCEPTION_LIST CORBA::TypeCode_ptr* type_code_array[]`[static]`

Initial value:

     {
    #define TAO_SYSTEM_EXCEPTION(name)

          STANDARD_EXCEPTION_LIST

          &CORBA::_tc_null}