// File: CORBA_StandardExceptions.idl
// CORBA 3.0, Chapter 4
#ifdef _PRE_3_0_COMPILER_
#pragma prefix "omg.org/CORBA"
#endif
const unsigned long OMGVMCID = 0x4f4d0000;
#define ex_body {unsigned long minor; completion_status completed;}
enum completion_status {COMPLETED_YES,
COMPLETED_NO,
COMPLETED_MAYBE};
enum exception_type { NO_EXCEPTION,
USER_EXCEPTION,
SYSTEM_EXCEPTION};
exception UNKNOWN ex_body; // the unknown exception
exception BAD_PARAM ex_body; // an invalid parameter was
// passed
exception NO_MEMORY ex_body; // dynamic memory allocation
// failure
exception IMP_LIMIT ex_body; // violated implementation
// limit
exception COMM_FAILURE ex_body; // communication failure
exception INV_OBJREF ex_body; // invalid object reference
exception NO_PERMISSION ex_body; // no permission for
// attempted op.
exception INTERNAL ex_body; // ORB internal error
exception MARSHAL ex_body; // error marshaling
// param/result
exception INITIALIZE ex_body; // ORB initialization failure
exception NO_IMPLEMENT ex_body; // operation implementation
// unavailable
exception BAD_TYPECODE ex_body; // bad typecode
exception BAD_OPERATION ex_body; // invalid operation
exception NO_RESOURCES ex_body; // insufficient resources
// for req.
exception NO_RESPONSE ex_body; // response to req. not yet
// available
exception PERSIST_STORE ex_body; // persistent storage failure
exception BAD_INV_ORDER ex_body; // routine invocations
// out of order
exception TRANSIENT ex_body; // transient failure - reissue
// request
exception FREE_MEM ex_body; // cannot free memory
exception INV_IDENT ex_body; // invalid identifier syntax
exception INV_FLAG ex_body; // invalid flag was specified
exception INTF_REPOS ex_body; // error accessing interface
// repository
exception BAD_CONTEXT ex_body; // error processing context
// object
exception OBJ_ADAPTER ex_body; // failure detected by object
// adapter
exception DATA_CONVERSION ex_body; // data conversion error
exception OBJECT_NOT_EXIST ex_body; // non-existent object,
// delete reference
exception TRANSACTION_REQUIRED
ex_body; // transaction required
exception TRANSACTION_ROLLEDBACK
ex_body; // transaction rolled back
exception INVALID_TRANSACTION
ex_body; // invalid transaction
exception INV_POLICY ex_body; // invalid policy
exception CODESET_INCOMPATIBLE
ex_body; // incompatible code set
exception REBIND ex_body; // rebind needed
exception TIMEOUT ex_body; // operation timed out
exception TRANSACTION_UNAVAILABLE ex_body;
// no transaction
exception TRANSACTION_MODE ex_body; // invalid transaction mode
exception BAD_QOS ex_body; // bad quality of service