#include <Marshal.h>


Public Member Functions | |
| TAO_Marshal_WString (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 wide string
Definition at line 378 of file Marshal.h.
| TAO_Marshal_WString::TAO_Marshal_WString | ( | void | ) |
Definition at line 73 of file Marshal.inl.
{
}
| TAO::traverse_status TAO_Marshal_WString::append | ( | CORBA::TypeCode_ptr | tc, | |
| TAO_InputCDR * | src, | |||
| TAO_OutputCDR * | dest | |||
| ) | [virtual] |
append operation
Implements TAO_Marshal_Object.
Definition at line 1101 of file append.cpp.
{
CORBA::Boolean continue_append = true;
// On decode, omit the check against specified wstring 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_wstring (*src);
if (continue_append == 1)
return TAO::TRAVERSE_CONTINUE;
if (TAO_debug_level > 0)
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("TAO_Marshal_WString::append detected error\n")));
throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
}
| TAO::traverse_status TAO_Marshal_WString::skip | ( | CORBA::TypeCode_ptr | tc, | |
| TAO_InputCDR * | context | |||
| ) | [virtual] |
skip operation
Implements TAO_Marshal_Object.
Definition at line 829 of file skip.cpp.
{
CORBA::Boolean continue_skipping = true;
// On decode, omit the check against specified wstring 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.
// "zero length" wstrings are legal in GIOP 1.2.
continue_skipping = stream->skip_wstring ();
if (continue_skipping)
return TAO::TRAVERSE_CONTINUE;
if (TAO_debug_level > 0)
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("TAO_Marshal_WString::skip detected error\n")));
throw ::CORBA::MARSHAL (0, CORBA::COMPLETED_MAYBE);
}
1.7.0