summaryrefslogtreecommitdiff
path: root/TAO/tao/DynamicInterface/Unknown_User_Exception.cpp
blob: 7ba4063eb33e9172d1615a32fc9b15d56005f0d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
// $Id$

#include "Unknown_User_Exception.h"
#include "tao/Any.h"

ACE_RCSID(DynamicInterface, Unknown_User_Exception, "$Id$")

CORBA_UnknownUserException::CORBA_UnknownUserException (void)
  : CORBA_UserException ("IDL:omg.org/CORBA/UnknownUserException:1.0"),
    exception_ (0)
{
}

CORBA_UnknownUserException::CORBA_UnknownUserException (CORBA_Any &ex)
  : CORBA_UserException ("IDL:omg.org/CORBA/UnknownUserException:1.0")
{
  ACE_NEW (this->exception_,
           CORBA_Any (ex));
}

CORBA_UnknownUserException::CORBA_UnknownUserException (
    const CORBA_UnknownUserException& e
  )
  : CORBA_UserException (e._id ())
{
  ACE_NEW (this->exception_,
           CORBA_Any (*e.exception_));
}

CORBA_UnknownUserException::~CORBA_UnknownUserException (void)
{
  delete this->exception_;
}

CORBA_Any &
CORBA_UnknownUserException::exception (void)
{
  return *this->exception_;
}

int
CORBA_UnknownUserException::_is_a (const char *interface_id) const
{
  return
    ((ACE_OS_String::strcmp (interface_id,
                             "IDL:omg.org/CORBA/UnknownUserException:1.0")
        == 0)
      || CORBA_UserException::_is_a (interface_id));
}

CORBA_UnknownUserException *
CORBA_UnknownUserException::_downcast (CORBA_Exception *ex)
{
  if (ex->_is_a ("IDL:omg.org/CORBA/UnknownUserException:1.0"))
    {
      return ACE_dynamic_cast (CORBA_UnknownUserException *,
                               ex);
    }

  return 0;
}

void
CORBA_UnknownUserException::_raise (void)
{
  TAO_RAISE (*this);
}

void
CORBA_UnknownUserException::_tao_encode (
    TAO_OutputCDR &
    ACE_ENV_ARG_DECL
  ) const
{
  ACE_THROW (CORBA::MARSHAL ());
}

void
CORBA_UnknownUserException::_tao_decode (TAO_InputCDR &
                                         ACE_ENV_ARG_DECL)
{
  ACE_THROW (CORBA::MARSHAL ());
}

CORBA::TypeCode_ptr
CORBA_UnknownUserException::_type (void) const
{
  return CORBA::_tc_UnknownUserException;
}