#include <GIOP_Message_Lite.h>
Inheritance diagram for TAO_GIOP_Message_Lite


Public Methods | |
| TAO_GIOP_Message_Lite (TAO_ORB_Core *orb_core, size_t input_cdr_size = ACE_CDR::DEFAULT_BUFSIZE) | |
| Constructor. | |
| virtual | ~TAO_GIOP_Message_Lite (void) |
| Dtor. | |
| virtual void | init (CORBA::Octet, CORBA::Octet) |
| Initialize the object -- this is a dummy for GIOPlite. | |
| virtual void | reset (void) |
| Reset the messaging the object. | |
| virtual int | generate_request_header (TAO_Operation_Details &op, TAO_Target_Specification &spec, TAO_OutputCDR &cdr) |
| Write the RequestHeader in to the <cdr> stream. The underlying implementation of the mesaging should do the right thing. | |
| virtual int | generate_locate_request_header ( TAO_Operation_Details &op, TAO_Target_Specification &spec, TAO_OutputCDR &cdr) |
| Write the RequestHeader in to the <cdr> stream. | |
| virtual int | generate_reply_header ( TAO_OutputCDR &cdr, TAO_Pluggable_Reply_Params_Base ¶ms ) |
| Write the reply header. | |
| virtual int | read_message (TAO_Transport *transport, int block = 0, ACE_Time_Value *max_wait_time = 0) |
| Dummy method to .. | |
| virtual int | format_message (TAO_OutputCDR &cdr) |
| Format the message. As we have not written the message length in the header, we make use of this oppurtunity to insert and format the message. | |
| virtual int | parse_incoming_messages (ACE_Message_Block &message_block) |
| Parse the incoming messages.. | |
| TAO_Pluggable_Message_Type | message_type (void) |
| Get the message type. The return value would be one of the following: TAO_PLUGGABLE_MESSAGE_REQUEST, TAO_PLUGGABLE_MESSAGE_REPLY, TAO_PLUGGABLE_MESSAGE_CLOSECONNECTION, TAO_PLUGGABLE_MESSAGE_MESSAGE_ERROR. | |
| virtual ssize_t | missing_data (ACE_Message_Block &message_block) |
| Calculate the amount of data that is missing in the <incoming> message block. | |
| virtual int | extract_next_message (ACE_Message_Block &incoming, TAO_Queued_Data *&qd) |
| virtual int | consolidate_node (TAO_Queued_Data *qd, ACE_Message_Block &incoming) |
| Check whether the node <qd> needs consolidation from <incoming>. | |
| virtual void | get_message_data (TAO_Queued_Data *qd) |
| Get the details of the message parsed through the <qd>. | |
| virtual int | consolidate_fragments (TAO_Queued_Data *dqd, const TAO_Queued_Data *sqd) |
| Bala: Docu??? More... | |
| virtual int | process_request_message (TAO_Transport *transport, TAO_Queued_Data *qd) |
| Process the request message that we have received on the connection. | |
| virtual int | process_reply_message ( TAO_Pluggable_Reply_Params &reply_info, TAO_Queued_Data *qd) |
| Parse the reply message that we received and return the reply information though <reply_info>. | |
| virtual int | generate_exception_reply ( TAO_OutputCDR &cdr, TAO_Pluggable_Reply_Params_Base ¶ms, CORBA::Exception &x ) |
| Generate a reply message with the exception <ex>. | |
Private Methods | |
| int | write_protocol_header (TAO_GIOP_Message_Type t, TAO_OutputCDR &msg) |
| Writes the GIOP header in to <msg> NOTE: If the GIOP header happens to change in the future, we can push this method in to the generator_parser classes. | |
| int | process_request (TAO_Transport *transport, TAO_InputCDR &input, TAO_OutputCDR &output) |
| Processes the <GIOP_REQUEST> messages. | |
| int | process_locate_request (TAO_Transport *transport, TAO_InputCDR &input, TAO_OutputCDR &output) |
| Processes the <GIOP_LOCATE_REQUEST> messages. | |
| int | make_send_locate_reply (TAO_Transport *transport, TAO_OutputCDR &output, TAO_GIOP_Locate_Request_Header &request, TAO_GIOP_Locate_Status_Msg &status) |
| Make a <GIOP_LOCATEREPLY> and hand that over to the transport so that it can be sent over the connection. NOTE:As on date 1.1 & 1.2 seem to have similar headers. Till an unmanageable difference comes let them be implemented here. | |
| int | send_error (TAO_Transport *transport) |
| Send error messages. | |
| void | send_close_connection (const TAO_GIOP_Message_Version &version, TAO_Transport *transport, void *ctx) |
| Close a connection, first sending GIOP::CloseConnection. | |
| int | send_reply_exception (TAO_Transport *transport, TAO_ORB_Core* orb_core, CORBA::ULong request_id, IOP::ServiceContextList *svc_info, CORBA::Exception *x) |
| We must send a LocateReply through <transport>, this request resulted in some kind of exception. | |
| void | dump_msg (const char *label, const u_char *ptr, size_t len) |
| Print out a debug messages.. | |
| TAO_Queued_Data* | make_queued_data (size_t sz) |
| virtual int | generate_locate_reply_header ( TAO_OutputCDR & , TAO_Pluggable_Reply_Params_Base & ) |
| Write the locate reply header. | |
| virtual int | is_ready_for_bidirectional (void) |
| Is the messaging object ready for processing BiDirectional request/response? | |
| int | write_request_header ( const TAO_Operation_Details &opdetails, TAO_Target_Specification &spec, TAO_OutputCDR &msg) |
| Write the request header in to <msg>. | |
| int | write_locate_request_header ( CORBA::ULong request_id, TAO_Target_Specification &spec, TAO_OutputCDR &msg) |
| Write the LocateRequest header. | |
| int | write_reply_header ( TAO_OutputCDR &output, TAO_Pluggable_Reply_Params_Base &reply, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()) throw (CORBA::SystemException) |
| Write the reply header in to <output>. | |
| int | write_locate_reply_mesg ( TAO_OutputCDR &output, CORBA::ULong request_id, TAO_GIOP_Locate_Status_Msg &status) |
| Writes the locate _reply message in to the <output>. | |
| int | parse_request_header (TAO_ServerRequest &) |
| Parse the Request Header from the incoming stream. This will do a version specific parsing of the incoming Request header. | |
| int | parse_locate_header ( TAO_GIOP_Locate_Request_Header &) |
| Parse the Loacte Request Header from the incoming stream. This will do a version specific parsing of the incoming Request header. | |
| int | parse_reply (TAO_InputCDR &input, TAO_Pluggable_Reply_Params ¶ms) |
| Parse the reply message. | |
| int | parse_locate_reply (TAO_InputCDR &input, TAO_Pluggable_Reply_Params ¶ms) |
| Parse the locate reply message from the server. | |
Private Attributes | |
| TAO_ORB_Core* | orb_core_ |
| Our copy of the ORB core... | |
| CORBA::Octet | message_type_ |
| The message type that we are going to process.. | |
| CORBA::ULong | message_size_ |
| The pay load size. | |
| CORBA::Octet | byte_order_ |
This protocol is a modified version of GIOP. This is more suited for homogenous platforms.
|
|
Constructor.
|
|
|
Dtor.
|
|
|
Bala: Docu??? @ Reimplemented from TAO_Pluggable_Messaging. |
|
|
Check whether the node <qd> needs consolidation from <incoming>.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Print out a debug messages..
|
|
|
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Format the message. As we have not written the message length in the header, we make use of this oppurtunity to insert and format the message.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Generate a reply message with the exception <ex>.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Write the locate reply header.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Write the RequestHeader in to the <cdr> stream.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Write the reply header.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Write the RequestHeader in to the <cdr> stream. The underlying implementation of the mesaging should do the right thing.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Get the details of the message parsed through the <qd>.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Initialize the object -- this is a dummy for GIOPlite.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Is the messaging object ready for processing BiDirectional request/response?
Reimplemented from TAO_Pluggable_Messaging. |
|
|
|
|
|
Make a <GIOP_LOCATEREPLY> and hand that over to the transport so that it can be sent over the connection. NOTE:As on date 1.1 & 1.2 seem to have similar headers. Till an unmanageable difference comes let them be implemented here.
|
|
|
Get the message type. The return value would be one of the following: TAO_PLUGGABLE_MESSAGE_REQUEST, TAO_PLUGGABLE_MESSAGE_REPLY, TAO_PLUGGABLE_MESSAGE_CLOSECONNECTION, TAO_PLUGGABLE_MESSAGE_MESSAGE_ERROR.
|
|
|
Calculate the amount of data that is missing in the <incoming> message block.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Parse the incoming messages..
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Parse the Loacte Request Header from the incoming stream. This will do a version specific parsing of the incoming Request header.
|
|
|
Parse the locate reply message from the server.
|
|
|
Parse the reply message.
|
|
|
Parse the Request Header from the incoming stream. This will do a version specific parsing of the incoming Request header.
|
|
|
Processes the <GIOP_LOCATE_REQUEST> messages.
|
|
|
Parse the reply message that we received and return the reply information though <reply_info>.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Processes the <GIOP_REQUEST> messages.
|
|
|
Process the request message that we have received on the connection.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Dummy method to ..
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Reset the messaging the object.
Reimplemented from TAO_Pluggable_Messaging. |
|
|
Close a connection, first sending GIOP::CloseConnection.
|
|
|
Send error messages.
|
|
|
We must send a LocateReply through <transport>, this request resulted in some kind of exception.
|
|
|
Writes the locate _reply message in to the <output>.
|
|
|
Write the LocateRequest header.
|
|
|
Writes the GIOP header in to <msg> NOTE: If the GIOP header happens to change in the future, we can push this method in to the generator_parser classes.
|
|
|
Write the reply header in to <output>.
|
|
|
Write the request header in to <msg>.
|
|
|
|
|
|
The pay load size.
|
|
|
The message type that we are going to process..
|
|
|
Our copy of the ORB core...
|
1.2.3 written by Dimitri van Heesch,
© 1997-2000