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, 10 insertions, 17 deletions
diff --git a/TAO/tao/Reactive_Connect_Strategy.cpp b/TAO/tao/Reactive_Connect_Strategy.cpp
index 0883b3ee91c..17a9d2d642a 100644
--- a/TAO/tao/Reactive_Connect_Strategy.cpp
+++ b/TAO/tao/Reactive_Connect_Strategy.cpp
@@ -3,6 +3,7 @@
#include "tao/ORB_Core.h"
#include "tao/debug.h"
#include "tao/Transport.h"
+#include "tao/LF_Multi_Event.h"
#include "ace/Synch_Options.h"
@@ -41,9 +42,14 @@ TAO_Reactive_Connect_Strategy::synch_options (ACE_Time_Value *timeout,
}
int
-TAO_Reactive_Connect_Strategy::wait (TAO_Connection_Handler *ch,
- ACE_Time_Value *max_wait_time)
+TAO_Reactive_Connect_Strategy::wait_i (TAO_LF_Event *ev,
+ TAO_Transport *,
+ ACE_Time_Value * max_wait_time)
{
+ int result = 0;
+ if (ev == 0)
+ return -1;
+
if (TAO_debug_level > 2)
{
ACE_DEBUG ((LM_DEBUG,
@@ -51,12 +57,10 @@ TAO_Reactive_Connect_Strategy::wait (TAO_Connection_Handler *ch,
ACE_TEXT ("connection completion - wait ()\n")));
}
- int result = 0;
-
ACE_DECLARE_NEW_CORBA_ENV;
ACE_TRY
{
- while (ch->keep_waiting ())
+ while (ev->keep_waiting ())
{
result =
this->orb_core_->run (max_wait_time, 1 ACE_ENV_ARG_PARAMETER);
@@ -84,7 +88,7 @@ TAO_Reactive_Connect_Strategy::wait (TAO_Connection_Handler *ch,
ACE_ENDTRY;
// Set the result.
- if (ch->error_detected () && result != -1)
+ if (result != -1 && ev->error_detected ())
{
result = -1;
}
@@ -92,15 +96,4 @@ TAO_Reactive_Connect_Strategy::wait (TAO_Connection_Handler *ch,
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