summaryrefslogtreecommitdiff
path: root/TAO/tao/Reactive_Connect_Strategy.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Reactive_Connect_Strategy.cpp')
-rw-r--r--TAO/tao/Reactive_Connect_Strategy.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/TAO/tao/Reactive_Connect_Strategy.cpp b/TAO/tao/Reactive_Connect_Strategy.cpp
index 17a9d2d642a..0883b3ee91c 100644
--- a/TAO/tao/Reactive_Connect_Strategy.cpp
+++ b/TAO/tao/Reactive_Connect_Strategy.cpp
@@ -3,7 +3,6 @@
#include "tao/ORB_Core.h"
#include "tao/debug.h"
#include "tao/Transport.h"
-#include "tao/LF_Multi_Event.h"
#include "ace/Synch_Options.h"
@@ -42,14 +41,9 @@ TAO_Reactive_Connect_Strategy::synch_options (ACE_Time_Value *timeout,
}
int
-TAO_Reactive_Connect_Strategy::wait_i (TAO_LF_Event *ev,
- TAO_Transport *,
- ACE_Time_Value * max_wait_time)
+TAO_Reactive_Connect_Strategy::wait (TAO_Connection_Handler *ch,
+ ACE_Time_Value *max_wait_time)
{
- int result = 0;
- if (ev == 0)
- return -1;
-
if (TAO_debug_level > 2)
{
ACE_DEBUG ((LM_DEBUG,
@@ -57,10 +51,12 @@ TAO_Reactive_Connect_Strategy::wait_i (TAO_LF_Event *ev,
ACE_TEXT ("connection completion - wait ()\n")));
}
+ int result = 0;
+
ACE_DECLARE_NEW_CORBA_ENV;
ACE_TRY
{
- while (ev->keep_waiting ())
+ while (ch->keep_waiting ())
{
result =
this->orb_core_->run (max_wait_time, 1 ACE_ENV_ARG_PARAMETER);
@@ -88,7 +84,7 @@ TAO_Reactive_Connect_Strategy::wait_i (TAO_LF_Event *ev,
ACE_ENDTRY;
// Set the result.
- if (result != -1 && ev->error_detected ())
+ if (ch->error_detected () && result != -1)
{
result = -1;
}
@@ -96,4 +92,15 @@ TAO_Reactive_Connect_Strategy::wait_i (TAO_LF_Event *ev,
return result;
}
+int
+TAO_Reactive_Connect_Strategy::wait (TAO_Transport *t,
+ ACE_Time_Value *val)
+{
+ if (t == 0)
+ return -1;
+
+ return this->wait (t->connection_handler (),
+ val);
+}
+
TAO_END_VERSIONED_NAMESPACE_DECL