summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-07-30 21:45:57 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-07-30 21:45:57 +0000
commite505507d9014a763cbf25c2f484bcf280d84c946 (patch)
treea9f282158a49fa08dc982f41ed6676e95b66eeba
parent29047489699c1054c9aeb9d7d8642f6d236e62e0 (diff)
downloadATCD-e505507d9014a763cbf25c2f484bcf280d84c946.tar.gz
ChangeLogTag:Mon Jul 30 14:41:43 2001 Carlos O'Ryan <coryan@uci.edu>
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a18
-rw-r--r--TAO/tao/Leader_Follower.cpp6
-rw-r--r--TAO/tao/Makefile1
3 files changed, 22 insertions, 3 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a
index 23676af75f7..2e99747a982 100644
--- a/TAO/ChangeLogs/ChangeLog-02a
+++ b/TAO/ChangeLogs/ChangeLog-02a
@@ -1,3 +1,21 @@
+Mon Jul 30 14:41:43 2001 Carlos O'Ryan <coryan@uci.edu>
+
+ * tao/LF_Follower_Auto_Adder.h:
+ * tao/LF_Follower_Auto_Adder.inl:
+ * tao/LF_Follower_Auto_Adder.cpp:
+ Automatically manipulate the L/F follower set: its constructor
+ inserts a follower into the set and the destructor removes it.
+
+ * tao/Leader_Follower.cpp:
+ Use the new LF_Follower_Auto_Adder class.
+
+ * tao/Makefile:
+ * tao/Makefile.am:
+ * tao/Makefile.bor:
+ * tao/TAO.dsp:
+ * tao/TAO_Static.dsp:
+ Add the new files to Makefiles and projects.
+
Sun Jul 29 11:58:51 2001 Carlos O'Ryan <coryan@uci.edu>
* tao/Leader_Follower.cpp:
diff --git a/TAO/tao/Leader_Follower.cpp b/TAO/tao/Leader_Follower.cpp
index d5ee2a0a02b..07f203abf15 100644
--- a/TAO/tao/Leader_Follower.cpp
+++ b/TAO/tao/Leader_Follower.cpp
@@ -4,6 +4,7 @@
#include "tao/Resource_Factory.h"
#include "tao/Follower.h"
#include "tao/Follower_Auto_Ptr.h"
+#include "tao/LF_Follower_Auto_Adder.h"
#include "tao/LF_Event.h"
#include "tao/LF_Event_Binder.h"
@@ -48,7 +49,7 @@ int
TAO_Leader_Follower::elect_new_leader_i (void)
{
TAO_Follower* follower =
- this->follower_set_.pop_front ();
+ this->follower_set_.head ();
#if defined (TAO_DEBUG_LEADER_FOLLOWER)
ACE_DEBUG ((LM_DEBUG,
@@ -236,7 +237,7 @@ TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
// lost.
//
- (void) this->add_follower (follower);
+ TAO_LF_Follower_Auto_Adder auto_adder (*this, follower);
if (max_wait_time == 0)
{
@@ -269,7 +270,6 @@ TAO_Leader_Follower::wait_for_event (TAO_LF_Event *event,
" [has timer, follower failed]\n",
transport->id ()));
- this->remove_follower (follower);
if (!event->successful ())
{
// Remove follower can fail because either
diff --git a/TAO/tao/Makefile b/TAO/tao/Makefile
index 1d932012658..7d898dbb2d6 100644
--- a/TAO/tao/Makefile
+++ b/TAO/tao/Makefile
@@ -194,6 +194,7 @@ ORB_CORE_FILES = \
ORB_Table \
Follower \
Follower_Auto_Ptr \
+ LF_Follower_Auto_Adder \
Leader_Follower \
Leader_Follower_Flushing_Strategy \
LF_Event \