[jboss-cvs] JBossCache/src/org/jboss/cache/buddyreplication ...

Manik Surtani manik at jboss.org
Tue Jun 19 21:18:10 EDT 2007


  User: msurtani
  Date: 07/06/19 21:18:10

  Modified:    src/org/jboss/cache/buddyreplication  BuddyManager.java
  Log:
  Unregister the view change listener when stopped.
  
  Revision  Changes    Path
  1.82      +11 -5     JBossCache/src/org/jboss/cache/buddyreplication/BuddyManager.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: BuddyManager.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossCache/src/org/jboss/cache/buddyreplication/BuddyManager.java,v
  retrieving revision 1.81
  retrieving revision 1.82
  diff -u -b -r1.81 -r1.82
  --- BuddyManager.java	11 Jun 2007 13:10:15 -0000	1.81
  +++ BuddyManager.java	20 Jun 2007 01:18:10 -0000	1.82
  @@ -11,6 +11,7 @@
   import org.jboss.cache.AbstractCacheListener;
   import org.jboss.cache.CacheException;
   import org.jboss.cache.CacheImpl;
  +import org.jboss.cache.CacheListener;
   import org.jboss.cache.Fqn;
   import org.jboss.cache.Region;
   import org.jboss.cache.config.BuddyReplicationConfig;
  @@ -127,6 +128,8 @@
      // threads to exit gracefully when the BuddyManager has been stopped.
      private static final MembershipChange STOP_NOTIFIER = new MembershipChange(null, null);
   
  +   private CacheListener viewChangeListener; // the view-change viewChangeListener
  +
      public BuddyManager(BuddyReplicationConfig config)
      {
         this.config = config;
  @@ -191,6 +194,8 @@
       */
      public void stop()
      {
  +      // unregister the viewChangeListener
  +      cache.removeCacheListener(viewChangeListener);
         try
         {
            queue.clear();
  @@ -221,7 +226,7 @@
         initialisationLatch.countDown();
   
         // register a CacheImpl Listener to reassign buddies as and when view changes occur
  -      cache.addCacheListener(new AbstractCacheListener()
  +      viewChangeListener = new AbstractCacheListener()
         {
            private Vector<Address> oldMembers;
   
  @@ -244,7 +249,8 @@
                  oldMembers.addAll(newMembers);
               }
            }
  -      });
  +      };
  +      cache.addCacheListener(viewChangeListener);
   
         // assign buddies based on what we know now
         reassignBuddies(cache.getMembers());
  @@ -271,7 +277,7 @@
         return config.getBuddyCommunicationTimeout();
      }
   
  -   // -------------- methods to be called by the tree cache listener --------------------
  +   // -------------- methods to be called by the tree cache viewChangeListener --------------------
   
      static class MembershipChange
      {
  
  
  



More information about the jboss-cvs-commits mailing list