Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Marshal_String Class Reference

TAO_Marshal_String. More...

#include <Marshal.h>

Inheritance diagram for TAO_Marshal_String:

Inheritance graph
[legend]
Collaboration diagram for TAO_Marshal_String:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Marshal_String (void)
virtual CORBA::TypeCode::traverse_status skip (CORBA::TypeCode_ptr tc, TAO_InputCDR *context ACE_ENV_ARG_DECL)
 skip operation. More...

virtual CORBA::TypeCode::traverse_status append (CORBA::TypeCode_ptr tc, TAO_InputCDR *src, TAO_OutputCDR *dest ACE_ENV_ARG_DECL)
 append operation. More...


Detailed Description

TAO_Marshal_String.

marshal a string

Definition at line 280 of file Marshal.h.


Constructor & Destructor Documentation

ACE_INLINE TAO_Marshal_String::TAO_Marshal_String void   
 

Definition at line 44 of file Marshal.i.

00045 {
00046 }


Member Function Documentation

CORBA::TypeCode::traverse_status TAO_Marshal_String::append CORBA::TypeCode_ptr    tc,
TAO_InputCDR   src,
TAO_OutputCDR *dest    ACE_ENV_ARG_DECL
[virtual]
 

append operation.

Implements TAO_Marshal_Object.

Definition at line 615 of file append.cpp.

References ACE_DEBUG, ACE_ENV_ARG_DECL, ACE_TEXT, ACE_THROW_RETURN, LM_DEBUG, and TAO_DEFAULT_MINOR_CODE.

Referenced by TAO_Marshal_Object::perform_append.

00619 {
00620   CORBA::Boolean continue_append = 1;
00621 
00622   // On decode, omit the check against specified string bounds, and
00623   // cope with illegal "zero length" strings (all lengths on the wire
00624   // must include a NUL).
00625   //
00626   // This is on the principle of being gracious in what we accept; we
00627   // don't generate messages that fail to comply with protocol specs,
00628   // but we will accept them when it's clear how to do so.
00629 
00630   continue_append = dest->append_string (*src);
00631   if (continue_append == 1)
00632     return CORBA::TypeCode::TRAVERSE_CONTINUE;
00633 
00634   if (TAO_debug_level > 0)
00635     ACE_DEBUG ((LM_DEBUG,
00636                 ACE_TEXT ("TAO_Marshal_TypeCode::append detected error")));
00637 
00638   ACE_THROW_RETURN (CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE,
00639                                     CORBA::COMPLETED_MAYBE),
00640                     CORBA::TypeCode::TRAVERSE_STOP);
00641 }

virtual CORBA::TypeCode::traverse_status TAO_Marshal_String::skip CORBA::TypeCode_ptr    tc,
TAO_InputCDR *context    ACE_ENV_ARG_DECL
[virtual]
 

skip operation.

Implements TAO_Marshal_Object.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:28:21 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002