TAO 4.0.2
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TAO_GIOP_Message_State Class Reference

Generic definitions for Message States. More...

#include <GIOP_Message_State.h>

Collaboration diagram for TAO_GIOP_Message_State:
Collaboration graph
[legend]

Public Member Functions

 TAO_GIOP_Message_State ()=default
 Constructor.
 
 ~TAO_GIOP_Message_State ()=default
 
int parse_message_header (ACE_Message_Block &incoming)
 
CORBA::ULong message_size () const
 Return the message size.
 
CORBA::ULong payload_size () const
 Return the message size.
 
CORBA::Octet byte_order () const
 Return the byte order information.
 
GIOP::MsgType message_type () const
 Return the message type.
 
CORBA::Boolean more_fragments () const
 Return the more fragments.
 
void more_fragments (CORBA::Boolean fragment)
 
TAO_GIOP_Message_Version const & giop_version () const
 Get the GIOP version.
 
CORBA::Boolean compressed () const
 Return the compressed information.
 

Private Member Functions

int parse_message_header_i (ACE_Message_Block &incoming)
 Parse the message header.
 
int parse_magic_bytes (char *buf)
 
int get_version_info (char *buf)
 
int get_byte_order_info (char *buf)
 
void get_payload_size (char *buf)
 Gets the size of the payload and set the size in the <state>
 
CORBA::ULong read_ulong (const char *buf) const
 

Private Attributes

TAO_GIOP_Message_Version giop_version_ {TAO_DEF_GIOP_MAJOR, TAO_DEF_GIOP_MINOR}
 GIOP version information..
 
CORBA::Octet byte_order_ {0}
 0 = big, 1 = little
 
GIOP::MsgType message_type_ {GIOP::Request}
 MsgType above.
 
CORBA::ULong payload_size_ {0}
 In byte_order!
 
CORBA::Boolean more_fragments_ {false}
 
CORBA::Boolean compressed_ {false}
 Compressed.
 

Detailed Description

Generic definitions for Message States.

This helps to establish the state of the incoming messages.

Constructor & Destructor Documentation

◆ TAO_GIOP_Message_State()

TAO_GIOP_Message_State::TAO_GIOP_Message_State ( )
default

Constructor.

◆ ~TAO_GIOP_Message_State()

TAO_GIOP_Message_State::~TAO_GIOP_Message_State ( )
default

Member Function Documentation

◆ byte_order()

CORBA::Octet TAO_GIOP_Message_State::byte_order ( ) const

Return the byte order information.

◆ compressed()

CORBA::Boolean TAO_GIOP_Message_State::compressed ( ) const

Return the compressed information.

◆ get_byte_order_info()

int TAO_GIOP_Message_State::get_byte_order_info ( char * buf)
private

Extracts the byte order information from the incoming stream. Performs a check for whether the byte order information right and sets the information in the <state>

◆ get_payload_size()

void TAO_GIOP_Message_State::get_payload_size ( char * buf)
private

Gets the size of the payload and set the size in the <state>

◆ get_version_info()

int TAO_GIOP_Message_State::get_version_info ( char * buf)
private

Extracts the version information from the incoming stream. Performs a check for whether the version information is right and sets the information in the <state>

◆ giop_version()

TAO_GIOP_Message_Version const & TAO_GIOP_Message_State::giop_version ( ) const

Get the GIOP version.

◆ message_size()

CORBA::ULong TAO_GIOP_Message_State::message_size ( ) const

Return the message size.

◆ message_type()

GIOP::MsgType TAO_GIOP_Message_State::message_type ( ) const

Return the message type.

◆ more_fragments() [1/2]

CORBA::Boolean TAO_GIOP_Message_State::more_fragments ( ) const

Return the more fragments.

◆ more_fragments() [2/2]

void TAO_GIOP_Message_State::more_fragments ( CORBA::Boolean fragment)

◆ parse_magic_bytes()

int TAO_GIOP_Message_State::parse_magic_bytes ( char * buf)
private

Checks for the magic word 'GIOP' in the start of the incoming stream

◆ parse_message_header()

int TAO_GIOP_Message_State::parse_message_header ( ACE_Message_Block & incoming)

Parse the message header.

Returns
-1 There was some error parsing the GIOP header
0 The GIOP header was parsed correctly
1 There was not enough data in the message block to parse the header

◆ parse_message_header_i()

int TAO_GIOP_Message_State::parse_message_header_i ( ACE_Message_Block & incoming)
private

Parse the message header.

◆ payload_size()

CORBA::ULong TAO_GIOP_Message_State::payload_size ( ) const

Return the message size.

◆ read_ulong()

CORBA::ULong TAO_GIOP_Message_State::read_ulong ( const char * buf) const
private

Read the unsigned long from the buffer. The buf should just point to the next 4 bytes data that represent the ULong

Member Data Documentation

◆ byte_order_

CORBA::Octet TAO_GIOP_Message_State::byte_order_ {0}
private

0 = big, 1 = little

◆ compressed_

CORBA::Boolean TAO_GIOP_Message_State::compressed_ {false}
private

Compressed.

◆ giop_version_

TAO_GIOP_Message_Version TAO_GIOP_Message_State::giop_version_ {TAO_DEF_GIOP_MAJOR, TAO_DEF_GIOP_MINOR}
private

GIOP version information..

◆ message_type_

GIOP::MsgType TAO_GIOP_Message_State::message_type_ {GIOP::Request}
private

MsgType above.

◆ more_fragments_

CORBA::Boolean TAO_GIOP_Message_State::more_fragments_ {false}
private

(Requests and Replys) A value of zero indicates that this message does not have any fragments. A value of non-zero indicates that it does have fragments.

◆ payload_size_

CORBA::ULong TAO_GIOP_Message_State::payload_size_ {0}
private

In byte_order!


The documentation for this class was generated from the following files: