#include <Marshal.h>


Public Member Functions | |
| TAO_Marshal_String (void) | |
| virtual TAO::traverse_status | skip (CORBA::TypeCode_ptr tc, TAO_InputCDR *context) |
| skip operation | |
| virtual TAO::traverse_status | append (CORBA::TypeCode_ptr tc, TAO_InputCDR *src, TAO_OutputCDR *dest) |
| append operation | |
marshal a string
Definition at line 268 of file Marshal.h.
| TAO_Marshal_String::TAO_Marshal_String | ( | void | ) |
Definition at line 48 of file Marshal.inl.
{
}
| TAO::traverse_status TAO_Marshal_String::append | ( | CORBA::TypeCode_ptr | tc, | |
| TAO_InputCDR * | src, | |||
| TAO_OutputCDR * | dest | |||
| ) | [virtual] |
append operation
Implements TAO_Marshal_Object.
Definition at line 602 of file append.cpp.
{
CORBA::Boolean continue_append = true;
// On decode, omit the check against specified string bounds, and
// cope with illegal "zero length" strings (all lengths on the wire
// must include a NUL).
//
// This is on the principle of being gracious in what we accept; we
// don't generate messages that fail to comply with protocol specs,
// but we will accept them when it's clear how to do so.
continue_append = dest->append_string (*src);
if (continue_append == 1)
return TAO::TRAVERSE_CONTINUE;
if (TAO_debug_level > 0)
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("TAO_Marshal_TypeCode::append detected error\n")));
throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
}
| TAO::traverse_status TAO_Marshal_String::skip | ( | CORBA::TypeCode_ptr | tc, | |
| TAO_InputCDR * | context | |||
| ) | [virtual] |
skip operation
Implements TAO_Marshal_Object.
Definition at line 553 of file skip.cpp.
{
CORBA::Boolean continue_skipping = true;
// On decode, omit the check against specified string bounds, and
// cope with illegal "zero length" strings (all lengths on the wire
// must include a NUL).
//
// This is on the principle of being gracious in what we accept; we
// don't generate messages that fail to comply with protocol specs,
// but we will accept them when it's clear how to do so.
continue_skipping = stream->skip_string ();
if (continue_skipping)
return TAO::TRAVERSE_CONTINUE;
else
{
if (TAO_debug_level > 0)
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("TAO_Marshal_String::skip detected error\n")));
throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
}
}
1.7.0