summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbala <balanatarajan@users.noreply.github.com>2001-06-12 23:56:48 +0000
committerbala <balanatarajan@users.noreply.github.com>2001-06-12 23:56:48 +0000
commit5d2aaec3def5702a84032164b90f267d55fb9944 (patch)
tree6e1b34646d3a73109efe039dad87a2c11f367acf
parent8be093edf4da581ff9e4adcbc0e2483cee3ff96e (diff)
downloadATCD-5d2aaec3def5702a84032164b90f267d55fb9944.tar.gz
ChangeLogTag:Tue Jun 12 18:42:55 2001 Balachandran Natarajan <bala@cs.wustl.edu>
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a28
-rw-r--r--TAO/tao/Connection_Handler.cpp3
-rw-r--r--TAO/tao/Connection_Handler.h5
-rw-r--r--TAO/tao/Exclusive_TMS.cpp4
-rw-r--r--TAO/tao/GIOP_Message_Base.cpp2
-rw-r--r--TAO/tao/GIOP_Message_State.cpp10
-rw-r--r--TAO/tao/GIOP_Message_State.h3
-rw-r--r--TAO/tao/GIOP_Message_State.inl6
-rw-r--r--TAO/tao/IIOP_Connection_Handler.cpp14
-rw-r--r--TAO/tao/IIOP_Connection_Handler.h2
-rw-r--r--TAO/tao/IIOP_Transport.cpp2
-rw-r--r--TAO/tao/Incoming_Message_Queue.cpp7
-rw-r--r--TAO/tao/Incoming_Message_Queue.inl3
13 files changed, 54 insertions, 35 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a
index 805f610fcc7..91b3c37e61c 100644
--- a/TAO/ChangeLogs/ChangeLog-02a
+++ b/TAO/ChangeLogs/ChangeLog-02a
@@ -1,4 +1,30 @@
-Sat Jun 12 17:42:55 2001 Balachandran Natarajan <bala@cs.wustl.edu>
+Tue Jun 12 18:42:55 2001 Balachandran Natarajan <bala@cs.wustl.edu>
+
+ * tao/GIOP_Message_State.h:
+ * tao/GIOP_Message_State.inl: The message_size () now returns the
+ payload size + the GIOP header length. Added a new method
+ payload_size () that returns the payload size alone.
+
+ * tao/GIOP_Message_Base.cpp: Fixed a warning with g++ builds.
+
+ * tao/Connection_Handler.h:
+ * tao/Connection_Handler.cpp: The svc_i () method now calls
+ handle_input_i () on the transport instead of the method in the
+ same class. The handle_input_i () in the TAO_Connection_Handler
+ class has been removed as it is no longer used.
+
+ * tao/IIOP_Connection_Handler.h:
+ * tao/IIOP_Connection_Handler.cpp: Removed the implementation of
+ handle_input_i ().
+
+ * tao/Incoming_Message_Queue.cpp: When trying to make a new data
+ block we dont add the size of GIOP header. The message_size ()
+ now returns with that value.
+
+ * tao/Incoming_Message_Queue.inl: Fixed a link error in g++
+ builds.
+
+Tue Jun 12 17:42:55 2001 Balachandran Natarajan <bala@cs.wustl.edu>
First set of checkins for big two ways.
diff --git a/TAO/tao/Connection_Handler.cpp b/TAO/tao/Connection_Handler.cpp
index 985dbbf44c8..099e79d5eef 100644
--- a/TAO/tao/Connection_Handler.cpp
+++ b/TAO/tao/Connection_Handler.cpp
@@ -93,7 +93,8 @@ TAO_Connection_Handler::svc_i (void)
while (!this->orb_core_->has_shutdown ()
&& result >= 0)
{
- result = this->handle_input_i (ACE_INVALID_HANDLE, max_wait_time);
+ result =
+ this->transport ()->handle_input_i (ACE_INVALID_HANDLE, max_wait_time);
if (result == -1 && errno == ETIME)
{
diff --git a/TAO/tao/Connection_Handler.h b/TAO/tao/Connection_Handler.h
index 65db12cb9b5..a03dbba1413 100644
--- a/TAO/tao/Connection_Handler.h
+++ b/TAO/tao/Connection_Handler.h
@@ -101,11 +101,6 @@ protected:
/// Object.
int svc_i (void);
- /// Need to be implemented by the underlying protocol objects
- virtual int handle_input_i (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Time_Value *max_wait_time = 0) = 0;
-
-
#if !defined (TAO_CONNECTION_HANDLER_BUF_SIZE)
# define TAO_CONNECTION_HANDLER_BUF_SIZE 1024
#endif /*TAO_CONNECTION_HANDLER_BUF_SIZE */
diff --git a/TAO/tao/Exclusive_TMS.cpp b/TAO/tao/Exclusive_TMS.cpp
index 3645be52122..47eff9ca3be 100644
--- a/TAO/tao/Exclusive_TMS.cpp
+++ b/TAO/tao/Exclusive_TMS.cpp
@@ -43,10 +43,6 @@ TAO_Exclusive_TMS::bind_dispatcher (CORBA::ULong request_id,
this->request_id_ = request_id;
this->rd_ = rd;
- // If there was a previous reply, cleanup its state first.
- // if (this->message_state_.message_size != 0)
- // this->message_state_.reset (0);
-
return TAO_Transport_Mux_Strategy::bind_dispatcher (request_id,
rd);
}
diff --git a/TAO/tao/GIOP_Message_Base.cpp b/TAO/tao/GIOP_Message_Base.cpp
index 08bb236543d..ebad36ce39d 100644
--- a/TAO/tao/GIOP_Message_Base.cpp
+++ b/TAO/tao/GIOP_Message_Base.cpp
@@ -21,8 +21,8 @@ TAO_GIOP_Message_Base::TAO_GIOP_Message_Base (TAO_ORB_Core *orb_core,
size_t /*input_cdr_size*/)
: message_state_ (orb_core,
this),
- output_ (0),
message_queue_ (orb_core),
+ output_ (0),
generator_parser_ (0)
{
#if defined(ACE_HAS_PURIFY)
diff --git a/TAO/tao/GIOP_Message_State.cpp b/TAO/tao/GIOP_Message_State.cpp
index 1ed31854cf5..9a2401216a4 100644
--- a/TAO/tao/GIOP_Message_State.cpp
+++ b/TAO/tao/GIOP_Message_State.cpp
@@ -18,6 +18,15 @@ ACE_RCSID(tao, GIOP_Message_State, "$Id$")
TAO_GIOP_Message_State::TAO_GIOP_Message_State (
TAO_ORB_Core * /*orb_core*/,
TAO_GIOP_Message_Base * /*base*/)
+ : giop_version_ (TAO_DEF_GIOP_MAJOR,
+ TAO_DEF_GIOP_MINOR),
+ byte_order_ (0),
+ message_type_ (0),
+ message_size_ (0),
+ request_id_ (0),
+ more_fragments_ (0),
+ missing_data_ (0),
+ message_status_ (TAO_GIOP_WAITING_FOR_HEADER)
{
}
@@ -104,7 +113,6 @@ TAO_GIOP_Message_State::parse_magic_bytes (char *buf)
&& buf [2] == 0x4f // 'O'
&& buf [3] == 0x50)) // 'P'
{
- // For the present...
if (TAO_debug_level > 0)
ACE_DEBUG ((LM_DEBUG,
ACE_TEXT ("TAO (%P|%t) bad header, "
diff --git a/TAO/tao/GIOP_Message_State.h b/TAO/tao/GIOP_Message_State.h
index 8d9d76619f5..1d61822a2b0 100644
--- a/TAO/tao/GIOP_Message_State.h
+++ b/TAO/tao/GIOP_Message_State.h
@@ -66,6 +66,9 @@ public:
/// Return the message size
CORBA::ULong message_size (void) const;
+ /// Return the message size
+ CORBA::ULong payload_size (void) const;
+
/// Return the byte order information
CORBA::Octet byte_order (void) const;
diff --git a/TAO/tao/GIOP_Message_State.inl b/TAO/tao/GIOP_Message_State.inl
index 232bb398c39..9238ba596d4 100644
--- a/TAO/tao/GIOP_Message_State.inl
+++ b/TAO/tao/GIOP_Message_State.inl
@@ -5,6 +5,12 @@
ACE_INLINE CORBA::ULong
TAO_GIOP_Message_State::message_size (void) const
{
+ return this->message_size_ + TAO_GIOP_MESSAGE_HEADER_LEN;
+}
+
+ACE_INLINE CORBA::ULong
+TAO_GIOP_Message_State::payload_size (void) const
+{
return this->message_size_;
}
diff --git a/TAO/tao/IIOP_Connection_Handler.cpp b/TAO/tao/IIOP_Connection_Handler.cpp
index 31eb9fbc848..28891e5e092 100644
--- a/TAO/tao/IIOP_Connection_Handler.cpp
+++ b/TAO/tao/IIOP_Connection_Handler.cpp
@@ -332,20 +332,6 @@ TAO_IIOP_Connection_Handler::handle_input (ACE_HANDLE h)
}
-int
-TAO_IIOP_Connection_Handler::handle_input_i (ACE_HANDLE,
- ACE_Time_Value *max_wait_time)
-{
-
-
-
-
- return 0;
-}
-
-
-
-
diff --git a/TAO/tao/IIOP_Connection_Handler.h b/TAO/tao/IIOP_Connection_Handler.h
index 48aed5eca2d..40a53456a4f 100644
--- a/TAO/tao/IIOP_Connection_Handler.h
+++ b/TAO/tao/IIOP_Connection_Handler.h
@@ -135,8 +135,6 @@ protected:
/// ensure that server threads eventually exit.
virtual int handle_input (ACE_HANDLE = ACE_INVALID_HANDLE);
- virtual int handle_input_i (ACE_HANDLE = ACE_INVALID_HANDLE,
- ACE_Time_Value *max_wait_time = 0);
private:
diff --git a/TAO/tao/IIOP_Transport.cpp b/TAO/tao/IIOP_Transport.cpp
index 498b2259ed3..997226316cc 100644
--- a/TAO/tao/IIOP_Transport.cpp
+++ b/TAO/tao/IIOP_Transport.cpp
@@ -26,7 +26,7 @@ ACE_RCSID (tao, IIOP_Transport, "$Id$")
TAO_IIOP_Transport::TAO_IIOP_Transport (TAO_IIOP_Connection_Handler *handler,
TAO_ORB_Core *orb_core,
- CORBA::Boolean flag)
+ CORBA::Boolean /*flag*/)
: TAO_Transport (TAO_TAG_IIOP_PROFILE,
orb_core)
, connection_handler_ (handler)
diff --git a/TAO/tao/Incoming_Message_Queue.cpp b/TAO/tao/Incoming_Message_Queue.cpp
index 398686c8ca5..1a6a54a4554 100644
--- a/TAO/tao/Incoming_Message_Queue.cpp
+++ b/TAO/tao/Incoming_Message_Queue.cpp
@@ -62,7 +62,7 @@ TAO_Incoming_Message_Queue::add_message (const ACE_Message_Block &block,
}
// Now do the copy of the missing data.
- mb.copy (block.base (),
+ mb.copy (block.rd_ptr (),
n);
// Now that we have copied n bytes, let us decrease the
@@ -75,8 +75,7 @@ TAO_Incoming_Message_Queue::add_message (const ACE_Message_Block &block,
// Create a data block of size of the incoming message
// @@Bala: Hard coding??
ACE_Data_Block *db =
- this->orb_core_->data_block_for_message_block
- (state.message_size () + 12);
+ this->orb_core_->data_block_for_message_block (state.message_size ());
// Make a message block with the above data_block
ACE_Message_Block mb (db);
@@ -104,7 +103,7 @@ TAO_Incoming_Message_Queue::add_message (const ACE_Message_Block &block,
else
qd->missing_data_ = state.message_size () - block.length ();
- int retval = this->add_node (qd);
+ this->add_node (qd);
// increment the size of the list
++this->size_;
diff --git a/TAO/tao/Incoming_Message_Queue.inl b/TAO/tao/Incoming_Message_Queue.inl
index 8c6747e1838..d62ca95f57a 100644
--- a/TAO/tao/Incoming_Message_Queue.inl
+++ b/TAO/tao/Incoming_Message_Queue.inl
@@ -32,7 +32,7 @@ TAO_Incoming_Message_Queue::complete_message (void)
-TAO_Incoming_Message_Queue::TAO_Queued_Data *
+ACE_INLINE TAO_Incoming_Message_Queue::TAO_Queued_Data *
TAO_Incoming_Message_Queue::get_node (void)
{
// @@TODO: Use the global pool for allocationg...
@@ -44,6 +44,7 @@ TAO_Incoming_Message_Queue::get_node (void)
return qd;
}
+ACE_INLINE
TAO_Incoming_Message_Queue::TAO_Queued_Data::TAO_Queued_Data (void)
: data_block_ (0),
missing_data_ (0),