summaryrefslogtreecommitdiff
path: root/TAO/tao/Pluggable_Messaging.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Pluggable_Messaging.h')
-rw-r--r--TAO/tao/Pluggable_Messaging.h44
1 files changed, 25 insertions, 19 deletions
diff --git a/TAO/tao/Pluggable_Messaging.h b/TAO/tao/Pluggable_Messaging.h
index 3e84635d767..8ac38de01e0 100644
--- a/TAO/tao/Pluggable_Messaging.h
+++ b/TAO/tao/Pluggable_Messaging.h
@@ -121,30 +121,36 @@ public:
virtual void init (CORBA::Octet major,
CORBA::Octet minor) = 0;
+ /// Parse the incoming messages..
+ virtual int parse_incoming_messages (ACE_Message_Block &message_block) = 0;
+
+ /// Calculate the amount of data that is missing in the <incoming>
+ /// message block.
+ virtual ssize_t missing_data (ACE_Message_Block &incoming) = 0;
+
+ /// Get the details of the message parsed through the <qd>.
+ virtual void get_message_data (TAO_Queued_Data *qd) = 0;
+
+ /* 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>.
+ */
+ virtual int extract_next_message (ACE_Message_Block &incoming,
+ TAO_Queued_Data *&qd) = 0;
+
+ /// Check whether the node <qd> needs consolidation from <incoming>
+ virtual int consolidate_node (TAO_Queued_Data *qd,
+ ACE_Message_Block &incoming) = 0;
+
+ /// @@Bala:Docu??
+ virtual int consolidate_fragments (TAO_Queued_Data *dqd,
+ const TAO_Queued_Data *sqd) = 0;
+
/// Parse the request message, make an upcall and send the reply back
/// to the "request initiator"
virtual int process_request_message (TAO_Transport *transport,
TAO_Queued_Data *qd) = 0;
- /*!
- \brief Inspects the bytes in \param mb to see if they "look like" the beginning of a message.
-
- 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 check_for_valid_header (const ACE_Message_Block &mb) const = 0;
-
- /*!
- \brief Set fields in \param qd based on values derived from \param mb.
-
- 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 = 0;
/// Parse the reply message that we received and return the reply
/// information though <reply_info>