[jboss-cvs] JBossAS SVN: r80590 - projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/cache.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 6 09:24:29 EST 2008


Author: alesj
Date: 2008-11-06 09:24:29 -0500 (Thu, 06 Nov 2008)
New Revision: 80590

Modified:
   projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/cache/CachePolicyVFSCache.java
Log:
Remove started flag.
Handle create better.

Modified: projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/cache/CachePolicyVFSCache.java
===================================================================
--- projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/cache/CachePolicyVFSCache.java	2008-11-06 14:20:17 UTC (rev 80589)
+++ projects/vfs/trunk/src/main/java/org/jboss/virtual/plugins/cache/CachePolicyVFSCache.java	2008-11-06 14:24:29 UTC (rev 80590)
@@ -36,7 +36,6 @@
 public abstract class CachePolicyVFSCache extends PathMatchingVFSCache
 {
    private CachePolicy policy;
-   private boolean started;
 
    public Iterable<VFSContext> getCachedContexts()
    {
@@ -57,25 +56,37 @@
 
    public void start() throws Exception
    {
-      if (started == false)
+      policy = createCachePolicy();
+      if (policy == null)
+         throw new IllegalArgumentException("Policy is null.");
+
+      policy.create();
+      try
       {
-         policy = createCachePolicy();
-
-         policy.create();
          policy.start();
-
-         started = true;
       }
+      catch (Exception e)
+      {
+         try
+         {
+            policy.destroy();
+         }
+         catch (Exception ignored)
+         {
+         }
+         throw e;
+      }
    }
 
    public void stop()
    {
-      if (started)
+      if (policy != null)
       {
          policy.stop();
          policy.destroy();
+
+         policy = null;
       }
-      policy = null;
    }
 
    public void flush()
@@ -111,7 +122,7 @@
    /**
     * Read system property.
     *
-    * @param key the property key
+    * @param key          the property key
     * @param defaultValue the default value
     * @return system property or default value
     */




More information about the jboss-cvs-commits mailing list