Public Member Functions | Static Public Member Functions | Protected Attributes

TAO::Any_SystemException Class Reference

Template Any class for IDL types with 2 modes of insertion. More...

#include <Any_SystemException.h>

Inheritance diagram for TAO::Any_SystemException:
Inheritance graph
[legend]
Collaboration diagram for TAO::Any_SystemException:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Any_SystemException (_tao_destructor destructor, CORBA::TypeCode_ptr, CORBA::SystemException *const)
 Any_SystemException (_tao_destructor destructor, CORBA::TypeCode_ptr, const CORBA::SystemException &)
 Any_SystemException (CORBA::TypeCode_ptr)
virtual ~Any_SystemException (void)
virtual CORBA::Boolean marshal_value (TAO_OutputCDR &)
CORBA::Boolean demarshal_value (TAO_InputCDR &)
virtual const void * value (void) const
virtual void free_value (void)

Static Public Member Functions

static void insert (CORBA::Any &, _tao_destructor, CORBA::TypeCode_ptr, CORBA::SystemException *const)
static void insert_copy (CORBA::Any &, _tao_destructor destructor, CORBA::TypeCode_ptr, const CORBA::SystemException &)
static CORBA::Boolean extract (const CORBA::Any &, _tao_destructor, CORBA::TypeCode_ptr, const CORBA::SystemException *&, excp_factory f)

Protected Attributes

CORBA::SystemExceptionvalue_

Detailed Description

Template Any class for IDL types with 2 modes of insertion.

Used for the IDL types that have copying and non-copying insertion, but which are not (de)marshaled as pointers - struct, union, sequence, and exception.

Definition at line 42 of file Any_SystemException.h.


Constructor & Destructor Documentation

TAO::Any_SystemException::Any_SystemException ( _tao_destructor  destructor,
CORBA::TypeCode_ptr  tc,
CORBA::SystemException * const  val 
)

Definition at line 23 of file Any_SystemException.cpp.

  : Any_Impl (destructor,
              tc),
    value_ (val)
{
}

TAO::Any_SystemException::Any_SystemException ( _tao_destructor  destructor,
CORBA::TypeCode_ptr  tc,
const CORBA::SystemException val 
)

Definition at line 32 of file Any_SystemException.cpp.

  : Any_Impl (destructor,
              tc)
{
 this->value_ =
   dynamic_cast <CORBA::SystemException *> (val._tao_duplicate ());
}

TAO::Any_SystemException::Any_SystemException ( CORBA::TypeCode_ptr  tc  ) 

Definition at line 42 of file Any_SystemException.cpp.

  : Any_Impl (0,
              tc)
{
}

TAO::Any_SystemException::~Any_SystemException ( void   )  [virtual]

Definition at line 48 of file Any_SystemException.cpp.

{
}


Member Function Documentation

CORBA::Boolean TAO::Any_SystemException::demarshal_value ( TAO_InputCDR cdr  ) 

Definition at line 189 of file Any_SystemException.cpp.

{
  try
    {
      this->value_->_tao_decode (cdr);
      return true;
    }
  catch (const ::CORBA::Exception&)
    {
    }
  return false;
}

static CORBA::Boolean TAO::Any_SystemException::extract ( const CORBA::Any ,
_tao_destructor  ,
CORBA::TypeCode_ptr  ,
const CORBA::SystemException *&  ,
excp_factory  f 
) [static]
void TAO::Any_SystemException::free_value ( void   )  [virtual]

Reimplemented from TAO::Any_Impl.

Definition at line 156 of file Any_SystemException.cpp.

{
  if (this->value_destructor_ != 0)
    {
      (*this->value_destructor_) (this->value_);
      this->value_destructor_ = 0;
    }

  ::CORBA::release (this->type_);
  this->value_ = 0;
}

void TAO::Any_SystemException::insert ( CORBA::Any any,
_tao_destructor  destructor,
CORBA::TypeCode_ptr  tc,
CORBA::SystemException * const  value 
) [static]

Definition at line 53 of file Any_SystemException.cpp.

{
  Any_SystemException *new_impl = 0;
  ACE_NEW (new_impl,
           Any_SystemException (destructor,
                                tc,
                                value));
  any.replace (new_impl);
}

void TAO::Any_SystemException::insert_copy ( CORBA::Any any,
_tao_destructor  destructor,
CORBA::TypeCode_ptr  tc,
const CORBA::SystemException value 
) [static]

Definition at line 67 of file Any_SystemException.cpp.

{
  Any_SystemException *new_impl = 0;
  ACE_NEW (new_impl,
           Any_SystemException (destructor,
                                tc,
                                value));
  any.replace (new_impl);
}

CORBA::Boolean TAO::Any_SystemException::marshal_value ( TAO_OutputCDR cdr  )  [virtual]

Implements TAO::Any_Impl.

Definition at line 175 of file Any_SystemException.cpp.

{
  try
    {
      this->value_->_tao_encode (cdr);
      return true;
    }
  catch (const ::CORBA::Exception&)
    {
    }
  return false;
}

const void * TAO::Any_SystemException::value ( void   )  const [virtual]

Definition at line 169 of file Any_SystemException.cpp.

{
  return this->value_;
}


Member Data Documentation

CORBA::SystemException* TAO::Any_SystemException::value_ [protected]

Definition at line 80 of file Any_SystemException.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines