summaryrefslogtreecommitdiff
path: root/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp')
-rw-r--r--TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
index 6ab063aa2e8..5e0b8361a75 100644
--- a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
+++ b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp
@@ -219,8 +219,18 @@ TAO_SHMIOP_Connection_Handler::fetch_handle (void)
}
int
+TAO_SHMIOP_Connection_Handler::resume_handler (void)
+{
+ return TAO_RESUMES_CONNECTION_HANDLER;
+}
+
+int
TAO_SHMIOP_Connection_Handler::handle_output (ACE_HANDLE)
{
+ // Instantiate the resume handle here.. This will automatically
+ // resume the handle once data is written..
+ TAO_Resume_Handle resume_handle (this->orb_core (),
+ this->fetch_handle ());
return this->transport ()->handle_output ();
}
@@ -248,13 +258,13 @@ TAO_SHMIOP_Connection_Handler::add_transport_to_cache (void)
int
-TAO_SHMIOP_Connection_Handler::handle_input (ACE_HANDLE h)
+TAO_SHMIOP_Connection_Handler::handle_input (ACE_HANDLE)
{
// Increase the reference count on the upcall that have passed us.
this->pending_upcalls_++;
TAO_Resume_Handle resume_handle (this->orb_core (),
- h);
+ this->fetch_handle ());
int retval = this->transport ()->handle_input_i (resume_handle);