diff options
author | Chris Cleeland <chris.cleeland@gmail.com> | 2003-12-15 22:31:47 +0000 |
---|---|---|
committer | Chris Cleeland <chris.cleeland@gmail.com> | 2003-12-15 22:31:47 +0000 |
commit | 04caddd66f8e71acf7c8afaba7188190a582e05a (patch) | |
tree | eb680210c85c23b440a673fbf0cf2152c685b37f | |
parent | 3cf83d96a4d8c59d763df5b3536989ad807fb12e (diff) | |
download | ATCD-unlabeled-1.35.2.tar.gz |
Tag: pmb_integrationunlabeled-1.35.2
Started work on performance enhancements for PMB.
-rw-r--r-- | TAO/tao/GIOP_Message_Lite.h | 45 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Transport.cpp | 2 |
2 files changed, 22 insertions, 25 deletions
diff --git a/TAO/tao/GIOP_Message_Lite.h b/TAO/tao/GIOP_Message_Lite.h index b10ef17982c..bfc7f5f01ad 100644 --- a/TAO/tao/GIOP_Message_Lite.h +++ b/TAO/tao/GIOP_Message_Lite.h @@ -88,8 +88,11 @@ public: /// the message. virtual int format_message (TAO_OutputCDR &cdr); - /// Parse the incoming messages.. - virtual int parse_incoming_messages (ACE_Message_Block &message_block); + /// Process the request message that we have received on the + /// connection + virtual int process_request_message (TAO_Transport *transport, + TAO_Queued_Data *qd); + /// Get the message type. The return value would be one of the /// following: @@ -99,33 +102,25 @@ public: /// TAO_PLUGGABLE_MESSAGE_MESSAGE_ERROR. TAO_Pluggable_Message_Type message_type (void); + /*! + \brief Inspects the bytes in \param mb to see if they "look like" the beginning of a message. - /// Calculate the amount of data that is missing in the <incoming> - /// message block. - virtual ssize_t missing_data (ACE_Message_Block &message_block); - - /* Extract the details of the next message from the <incoming> - * through <qd>. Returns 1 if there are more messages and returns a - * 0 if there are no more messages in <incoming>. + Inspects the bytes in \param mb, beginning at \code mb.rd_ptr, to + see if they look like the beginning of a message. Does */ - virtual int extract_next_message (ACE_Message_Block &incoming, - TAO_Queued_Data *&qd); - - /// Check whether the node <qd> needs consolidation from <incoming> - virtual int consolidate_node (TAO_Queued_Data *qd, - ACE_Message_Block &incoming); + virtual int check_for_valid_header (const ACE_Message_Block &mb) const; - /// Get the details of the message parsed through the <qd>. - virtual void get_message_data (TAO_Queued_Data *qd); + /*! + \brief Set fields in \param qd based on values derived from \param mb. - /// @@Bala: Docu??? - virtual int consolidate_fragments (TAO_Queued_Data *dqd, - const TAO_Queued_Data *sqd); - - /// Process the request message that we have received on the - /// connection - virtual int process_request_message (TAO_Transport *transport, - TAO_Queued_Data *qd); + This function sets fields in \param qd based on values derived + from \param mb. It assumes that if the length of \param mb is + enough to hold a header, then the data in there can be trusted to + make sense. + */ + virtual void set_queued_data_from_message_header ( + TAO_Queued_Data *, + const ACE_Message_Block &mb) const; /// Parse the reply message that we received and return the reply /// information though <reply_info> diff --git a/TAO/tao/Strategies/SHMIOP_Transport.cpp b/TAO/tao/Strategies/SHMIOP_Transport.cpp index aaebc6860cf..c7f845eee81 100644 --- a/TAO/tao/Strategies/SHMIOP_Transport.cpp +++ b/TAO/tao/Strategies/SHMIOP_Transport.cpp @@ -136,6 +136,7 @@ TAO_SHMIOP_Transport::recv (char *buf, } +#if 0 int TAO_SHMIOP_Transport::consolidate_message (ACE_Message_Block &incoming, ssize_t missing_data, @@ -191,6 +192,7 @@ TAO_SHMIOP_Transport::consolidate_message (ACE_Message_Block &incoming, // process that return this->process_parsed_messages (&pqd, rh); } +#endif int TAO_SHMIOP_Transport::send_request (TAO_Stub *stub, |