[jboss-cvs] JBossAS SVN: r79469 - projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Oct 14 12:33:57 EDT 2008


Author: bstansberry at jboss.com
Date: 2008-10-14 12:33:57 -0400 (Tue, 14 Oct 2008)
New Revision: 79469

Modified:
   projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManager.java
   projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManagerMBean.java
Log:
[JBAS-6083] Fix inconsistent dependency handling.

Modified: projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManager.java
===================================================================
--- projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManager.java	2008-10-14 15:11:37 UTC (rev 79468)
+++ projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManager.java	2008-10-14 16:33:57 UTC (rev 79469)
@@ -44,6 +44,7 @@
 import org.jboss.cache.CacheException;
 import org.jboss.cache.Fqn;
 import org.jboss.cache.Node;
+import org.jboss.ha.framework.server.HAPartitionCacheHandlerImpl;
 import org.jboss.ha.jndi.spi.DistributedTreeManager;
 import org.jboss.logging.Logger;
 import org.jnp.interfaces.Naming;
@@ -75,6 +76,8 @@
    private Fqn<String> m_root;
    private Naming haStub;
    private boolean treeRootSet;
+   protected HAPartitionCacheHandlerImpl cacheHandler;
+   protected boolean cacheFromHandler = false;
 
    // Constructor --------------------------------------------------------
   
@@ -83,25 +86,36 @@
       super();
    }
    
-   // JBossCacheDistributedTreeManagerMBean ----------------------------------
+   // Properties --------------------------------------------------------
    
-   public Cache getClusteredCache()
+   
+   public HAPartitionCacheHandlerImpl getCacheHandler()
    {
-      return m_cache;
+      return cacheHandler;
    }
+
+   public void setCacheHandler(HAPartitionCacheHandlerImpl cacheHandler)
+   {
+      this.cacheHandler = cacheHandler;
+   }   
    
-   public void setClusteredCache(Cache cache)
+   public Cache<String, Binding> getClusteredCache()
    {
+      return m_cache;
+   }
+
+   public void setClusteredCache(Cache<String, Binding> cache)
+   {
       if (treeRootSet)
       {
          throw new IllegalStateException("Cannot change clusteredCache after call to init()");
       }
       this.m_cache = cache;
    }
-   
-   public String getRootFqn()
+
+   public boolean isCacheFromHandler()
    {
-      return m_root == null ? DEFAULT_ROOT : m_root.toString();
+      return cacheFromHandler;
    }
    
    public void setRootFqn(String rootFqn)
@@ -114,8 +128,16 @@
       m_root = (rootFqn == null) ? null : Fqn.fromString(rootFqn);         
    }
    
+   // JBossCacheDistributedTreeManagerMBean ----------------------------------
+   
+   public String getRootFqn()
+   {
+      return m_root == null ? DEFAULT_ROOT : m_root.toString();
+   }
+   
    // Public -----------------------------------------------------------------
 
+   @SuppressWarnings("unchecked")
    public void init()
    {
       if (this.haStub == null)
@@ -123,6 +145,25 @@
          throw new IllegalStateException("Must call setHAStub before starting");
       }
       
+      if (cacheHandler != null)
+      {
+         try
+         {
+            cacheHandler.acquireCache();
+         }
+         catch (RuntimeException e)
+         {
+            throw e;
+         }
+         catch (Exception e)
+         {
+            throw new RuntimeException(e);
+         }
+         
+         setClusteredCache(cacheHandler.getCache());
+         cacheFromHandler = true;
+      }
+      
       if (this.m_cache == null)
       {
          throw new IllegalStateException("Must call setClusteredCache before starting");
@@ -133,7 +174,18 @@
    }
 
    public void shutdown()
-   {
+   {      
+      if (cacheFromHandler)
+      {
+         try
+         {
+            cacheHandler.releaseCache();
+         }
+         catch (Exception e)
+         {
+            log.error("Caught exception releasing cache", e);
+         }
+      }
    }
 
    public Naming getHAStub()

Modified: projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManagerMBean.java
===================================================================
--- projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManagerMBean.java	2008-10-14 15:11:37 UTC (rev 79468)
+++ projects/cluster/ha-server-cache-jbc/trunk/src/main/java/org/jboss/ha/jndi/impl/jbc/JBossCacheDistributedTreeManagerMBean.java	2008-10-14 16:33:57 UTC (rev 79469)
@@ -22,7 +22,6 @@
 
 package org.jboss.ha.jndi.impl.jbc;
 
-import org.jboss.cache.Cache;
 
 /**
  * StandardMBean interface for JBossCacheDistributedTreeManager.
@@ -31,11 +30,5 @@
  */
 public interface JBossCacheDistributedTreeManagerMBean
 {
-   Cache getClusteredCache();
-   
-   void setClusteredCache(Cache cache);
-   
    String getRootFqn();
-   
-   void setRootFqn(String rootFqn);
 }




More information about the jboss-cvs-commits mailing list