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

# CORBA_Exception Class Reference

CORBA_Exception. More...

`#include <Exception.h>`

Inheritance diagram for CORBA_Exception

[legend]
List of all members.

## Public Methods
| CORBA_Exception (const CORBA_Exception &src)
| Copy constructor.
CORBA_Exception& | operator= (const CORBA_Exception &src)
| Assignment operator.
virtual | ~CORBA_Exception (void)
| Destructor.
virtual void | _raise (void) = 0
const char* | _id (void) const
| Return the repository ID of the Exception.
virtual CORBA::TypeCode_ptr | _type (void) const
| Will be overridden in the concrete derived classes.
virtual int | _is_a (const char* repository_id) const
| CORBA_Exception (const char* repository_id)
| Constructor from a respository id.
void | _tao_print_exception (const char *info, FILE *f = stdout) const
| Print the exception <ex> to output determined by <f>. This function is not CORBA compliant.
virtual ACE_CString | _info (void) const = 0
| Returns a string containing information about the exception. This function is not CORBA compliant.
virtual void | _tao_encode (TAO_OutputCDR &cdr, CORBA::Environment &) const = 0
virtual void | _tao_decode (TAO_InputCDR &cdr, CORBA::Environment &) = 0
CORBA::ULong | _incr_refcnt (void)
CORBA::ULong | _decr_refcnt (void)
## Static Public Methods
CORBA_Exception* | _downcast (CORBA_Exception *x)
void | _tao_any_destructor (void *)
| Used in the non-copying Any insertion operator.
## Protected Methods
| CORBA_Exception (void)
## Private Attributes
char* | id_
| Storage of our repository id.
CORBA::ULong | refcount_
| Reference count to avoid copying overhead.
TAO_SYNCH_MUTEX | refcount_lock_

## Detailed Description

CORBA_Exception.

CORBA2-specified exception hierarchy. All exceptions have a type (represented by a TypeCode) and a widely scoped type ID (in the TypeCode) that generated by any OMG-IDL compiler and available through the Interface Repositories. Think of it as a "globally scoped" name distinguishing each exception.

## Constructor & Destructor Documentation

CORBA_Exception::CORBA_Exception ( | const CORBA_Exception & src )

| Copy constructor.

CORBA_Exception::~CORBA_Exception ( | void )`[virtual]`

| Destructor.

CORBA_Exception::CORBA_Exception ( | const char * repository_id )

| Constructor from a respository id.

CORBA_Exception::CORBA_Exception ( | void )`[protected]`

## Member Function Documentation

CORBA::ULong CORBA_Exception::_decr_refcnt ( | void )

ACE_INLINE CORBA_Exception * CORBA_Exception::_downcast ( | CORBA_Exception * ex )`[static]`

| Reimplemented in CORBA_UserException, CORBA_SystemException, CORBA_ORB::InvalidName, CORBA_TypeCode::Bounds, and CORBA_TypeCode::BadKind.

const char * CORBA_Exception::_id ( | void ) const

| Return the repository ID of the Exception.

CORBA::ULong CORBA_Exception::_incr_refcnt ( | void )

ACE_CString CORBA_Exception::_info ( | void ) const`[pure virtual]`

| Returns a string containing information about the exception. This function is not CORBA compliant. Reimplemented in CORBA_UserException, and CORBA_SystemException.

int CORBA_Exception::_is_a ( | const char * interface_id ) const`[virtual]`

| Reimplemented in CORBA_UserException, CORBA_SystemException, CORBA_TypeCode::Bounds, and CORBA_TypeCode::BadKind.

virtual void CORBA_Exception::_raise ( | void )`[pure virtual]`

| Reimplemented in CORBA_ORB::InvalidName, CORBA_TypeCode::Bounds, and CORBA_TypeCode::BadKind.

void CORBA_Exception::_tao_any_destructor ( | void * x )`[static]`

| Used in the non-copying Any insertion operator.

virtual void CORBA_Exception::_tao_decode ( | TAO_InputCDR & cdr,
| CORBA::Environment & ACE_TRY_ENV )`[pure virtual]`

| Reimplemented in CORBA_SystemException, CORBA_ORB::InvalidName, CORBA_TypeCode::Bounds, and CORBA_TypeCode::BadKind.

virtual void CORBA_Exception::_tao_encode ( | TAO_OutputCDR & cdr,
| CORBA::Environment & ACE_TRY_ENV ) const`[pure virtual]`

| Reimplemented in CORBA_SystemException, CORBA_ORB::InvalidName, CORBA_TypeCode::Bounds, and CORBA_TypeCode::BadKind.

void CORBA_Exception::_tao_print_exception ( | const char * info,
| FILE * f = stdout ) const

| Print the exception <ex> to output determined by <f>. This function is not CORBA compliant.

CORBA::TypeCode_ptr CORBA_Exception::_type ( | void ) const`[virtual]`

| Will be overridden in the concrete derived classes.

CORBA_Exception & CORBA_Exception::operator= ( | const CORBA_Exception & src )

| Assignment operator.

## Member Data Documentation

char * CORBA_Exception::id_`[private]`

| Storage of our repository id.

CORBA::ULong CORBA_Exception::refcount_`[private]`

| Reference count to avoid copying overhead.

TAO_SYNCH_MUTEX CORBA_Exception::refcount_lock_`[private]`

| Mutex to protect the reference count; though in most cases this class is used only in one thread adding a mutex here is *not* expensive, because uses of this class should never be on the critical path.

The documentation for this class was generated from the following files:

- Exception.h
- Exception.cpp
- Exception.i