CORBA::UnknownUserException Class Reference

UnknownUserException. More...

#include <Unknown_User_Exception.h>

Inheritance diagram for CORBA::UnknownUserException:

Inheritance graph
[legend]
Collaboration diagram for CORBA::UnknownUserException:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 UnknownUserException (void)
 Constructor.

 UnknownUserException (CORBA::Any &exception)
 Constructor.

 UnknownUserException (const UnknownUserException &e)
 Copy constructor.

virtual ~UnknownUserException (void)
 Destructor.

virtual void _raise (void) const
 To throw an UnknownUserException of this type.

virtual CORBA::Exception_tao_duplicate (void) const
virtual void _tao_encode (TAO_OutputCDR &cdr) const
virtual void _tao_decode (TAO_InputCDR &cdr)
virtual CORBA::TypeCode_ptr _tao_type (void) const
 This class has a specific typecode.


Static Public Member Functions

UnknownUserException_downcast (CORBA::Exception *ex)
 Narrow to an UnknowUserException.

UnknownUserException const * _downcast (CORBA::Exception const *ex)

Public Attributes

CORBA::Any &exception void
 Return the any containing the user exception.


Private Attributes

CORBA::Any * exception_
 Holder for the actual exception.


Detailed Description

UnknownUserException.

When user exceptions are received by a DII invocation the ORB is unable to create the exception with the right dynamic type; to workaround this problem it throws a CORBA::UnknownUserException that contains the exception inside an Any.

Definition at line 58 of file Unknown_User_Exception.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::UnknownUserException::UnknownUserException void   ) 
 

Constructor.

Definition at line 23 of file Unknown_User_Exception.cpp.

00024   : CORBA::UserException ("IDL:omg.org/CORBA/UnknownUserException:1.0",
00025                           "UnknownUserException"),
00026     exception_ (0)
00027 {
00028 }

CORBA::UnknownUserException::UnknownUserException CORBA::Any &  exception  ) 
 

Constructor.

Definition at line 30 of file Unknown_User_Exception.cpp.

References ACE_NEW.

00031   : CORBA::UserException ("IDL:omg.org/CORBA/UnknownUserException:1.0",
00032                          "UnknownUserException")
00033 {
00034   ACE_NEW (this->exception_,
00035            CORBA::Any (ex));
00036 }

CORBA::UnknownUserException::UnknownUserException const UnknownUserException e  ) 
 

Copy constructor.

Definition at line 38 of file Unknown_User_Exception.cpp.

References ACE_NEW, and exception_.

00041   : CORBA::UserException (e._rep_id (),
00042                          e._name ())
00043 {
00044   ACE_NEW (this->exception_,
00045            CORBA::Any (*e.exception_));
00046 }

CORBA::UnknownUserException::~UnknownUserException void   )  [virtual]
 

Destructor.

Definition at line 48 of file Unknown_User_Exception.cpp.

00049 {
00050   delete this->exception_;
00051 }


Member Function Documentation

CORBA::UnknownUserException const * CORBA::UnknownUserException::_downcast CORBA::Exception const *  ex  )  [static]
 

Reimplemented from CORBA::UserException.

Definition at line 66 of file Unknown_User_Exception.cpp.

00067 {
00068   return dynamic_cast<CORBA::UnknownUserException const *> (ex);
00069 }

CORBA::UnknownUserException * CORBA::UnknownUserException::_downcast CORBA::Exception ex  )  [static]
 

Narrow to an UnknowUserException.

Reimplemented from CORBA::UserException.

Definition at line 60 of file Unknown_User_Exception.cpp.

00061 {
00062   return dynamic_cast<CORBA::UnknownUserException *> (ex);
00063 }

void CORBA::UnknownUserException::_raise void   )  const [virtual]
 

To throw an UnknownUserException of this type.

Implements CORBA::UserException.

Definition at line 72 of file Unknown_User_Exception.cpp.

References TAO_RAISE.

00073 {
00074   TAO_RAISE (*this);
00075 }

void CORBA::UnknownUserException::_tao_decode TAO_InputCDR cdr  )  [virtual]
 

Implements CORBA::Exception.

Definition at line 99 of file Unknown_User_Exception.cpp.

References ACE_THROW.

00101 {
00102   ACE_THROW (CORBA::MARSHAL ());
00103 }

CORBA::Exception * CORBA::UnknownUserException::_tao_duplicate void   )  const [virtual]
 

Implements CORBA::Exception.

Definition at line 78 of file Unknown_User_Exception.cpp.

References ACE_NEW_RETURN.

00079 {
00080   CORBA::Exception *result;
00081   ACE_NEW_RETURN (
00082       result,
00083       CORBA::UnknownUserException (*this),
00084       0
00085     );
00086   return result;
00087 }

void CORBA::UnknownUserException::_tao_encode TAO_OutputCDR cdr  )  const [virtual]
 

Implements CORBA::Exception.

Definition at line 90 of file Unknown_User_Exception.cpp.

References ACE_THROW.

00094 {
00095   ACE_THROW (CORBA::MARSHAL ());
00096 }

CORBA::TypeCode_ptr CORBA::UnknownUserException::_tao_type void   )  const [virtual]
 

This class has a specific typecode.

Reimplemented from CORBA::UserException.

Definition at line 106 of file Unknown_User_Exception.cpp.

00107 {
00108   return CORBA::_tc_UnknownUserException;
00109 }


Member Data Documentation

CORBA::Any* CORBA::UnknownUserException::exception_ [private]
 

Holder for the actual exception.

Definition at line 99 of file Unknown_User_Exception.h.

Referenced by UnknownUserException().

CORBA::Any& exception CORBA::UnknownUserException::void
 

Return the any containing the user exception.

Definition at line 76 of file Unknown_User_Exception.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 13:05:10 2006 for TAO_DynamicInterface by doxygen 1.3.6