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

TAO_GIOP_Message_Generator_Parser_Impl Class Reference

This class holds all the different GIOP message generators and parsers. More...

#include <GIOP_Message_Generator_Parser_Impl.h>

Collaboration diagram for TAO_GIOP_Message_Generator_Parser_Impl:

Collaboration graph
[legend]
List of all members.

Static Public Methods

CORBA::Boolean check_revision (CORBA::Octet incoming_major, CORBA::Octet incoming_minor)
 Performs a check of the revision numbers. More...


Public Attributes

TAO_GIOP_Message_Generator_Parser_10 tao_giop_10
 Version 1.0 of GIOP. More...

TAO_GIOP_Message_Generator_Parser_11 tao_giop_11
 Version 1.1 of GIOP. More...

TAO_GIOP_Message_Generator_Parser_12 tao_giop_12
 Version 1.2 of GIOP. More...


Detailed Description

This class holds all the different GIOP message generators and parsers.

This class can be done away with if we want to use the svc.conf file to load the right GIOP protocol. But that would require some work as we need to make sure that we have the behaviours of lower versions in the higher versions.

Definition at line 37 of file GIOP_Message_Generator_Parser_Impl.h.


Member Function Documentation

ACE_INLINE CORBA::Boolean TAO_GIOP_Message_Generator_Parser_Impl::check_revision CORBA::Octet    incoming_major,
CORBA::Octet    incoming_minor
[static]
 

Performs a check of the revision numbers.

Definition at line 5 of file GIOP_Message_Generator_Parser_Impl.inl.

References TAO_DEF_GIOP_MAJOR, and TAO_DEF_GIOP_MINOR.

Referenced by TAO_GIOP_Message_State::set_version_info_from_buffer.

00007 {
00008   CORBA::UShort version_as_whole_num = incoming_major << 8 | incoming_minor;
00009   CORBA::UShort max_allowable_version = TAO_DEF_GIOP_MAJOR << 8 | TAO_DEF_GIOP_MINOR;
00010  
00011   CORBA::Boolean ret = 0;
00012  
00013   // If it's greater than the max, we know it's not allowed.
00014   if (version_as_whole_num > max_allowable_version)
00015     return 0;
00016  
00017   // If it's less than the max, though, we still have to check for
00018   // each explicit version and only allow the ones we know work.
00019   switch (version_as_whole_num)
00020     {
00021     case 0x0100:
00022     case 0x0101:
00023     case 0x0102:
00024       ret = 1;
00025     }
00026  
00027   return ret;
00028 }


Member Data Documentation

TAO_GIOP_Message_Generator_Parser_10 TAO_GIOP_Message_Generator_Parser_Impl::tao_giop_10
 

Version 1.0 of GIOP.

Definition at line 46 of file GIOP_Message_Generator_Parser_Impl.h.

TAO_GIOP_Message_Generator_Parser_11 TAO_GIOP_Message_Generator_Parser_Impl::tao_giop_11
 

Version 1.1 of GIOP.

Definition at line 49 of file GIOP_Message_Generator_Parser_Impl.h.

TAO_GIOP_Message_Generator_Parser_12 TAO_GIOP_Message_Generator_Parser_Impl::tao_giop_12
 

Version 1.2 of GIOP.

Definition at line 52 of file GIOP_Message_Generator_Parser_Impl.h.


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