[jboss-cvs] JBossAS SVN: r70805 - in projects/ejb3/trunk/cache/src: test/java/org/jboss/ejb3/cache/impl and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Mar 13 05:34:38 EDT 2008


Author: wolfc
Date: 2008-03-13 05:34:38 -0400 (Thu, 13 Mar 2008)
New Revision: 70805

Modified:
   projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/EntryStateCache.java
   projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/SimpleCache.java
   projects/ejb3/trunk/cache/src/test/java/org/jboss/ejb3/cache/impl/SimpleCacheUnitTestCase.java
Log:
EJBTHREE-1218: throw NoSuchEJBException on remove non-existent

Modified: projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/EntryStateCache.java
===================================================================
--- projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/EntryStateCache.java	2008-03-13 09:18:28 UTC (rev 70804)
+++ projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/EntryStateCache.java	2008-03-13 09:34:38 UTC (rev 70805)
@@ -125,8 +125,9 @@
          if(entry.state != State.READY)
             throw new IllegalStateException("entry " + entry + " is not ready");
       }
-      if(entry != null)
-         factory.destroy(entry.obj);
+      if(entry == null)
+         throw new NoSuchEJBException(String.valueOf(key));
+      factory.destroy(entry.obj);
    }
 
    public void start()

Modified: projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/SimpleCache.java
===================================================================
--- projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/SimpleCache.java	2008-03-13 09:18:28 UTC (rev 70804)
+++ projects/ejb3/trunk/cache/src/main/java/org/jboss/ejb3/cache/impl/SimpleCache.java	2008-03-13 09:34:38 UTC (rev 70805)
@@ -88,8 +88,11 @@
       {
          obj = cache.remove(key);
       }
-      if(obj != null)
-         factory.destroy(obj);
+      // EJBTHREE-1218: throw NoSuchEJBException if the bean can not be found
+      if(obj == null)
+         throw new NoSuchEJBException(String.valueOf(key));
+      
+      factory.destroy(obj);
    }
    
    public void start()

Modified: projects/ejb3/trunk/cache/src/test/java/org/jboss/ejb3/cache/impl/SimpleCacheUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/cache/src/test/java/org/jboss/ejb3/cache/impl/SimpleCacheUnitTestCase.java	2008-03-13 09:18:28 UTC (rev 70804)
+++ projects/ejb3/trunk/cache/src/test/java/org/jboss/ejb3/cache/impl/SimpleCacheUnitTestCase.java	2008-03-13 09:34:38 UTC (rev 70805)
@@ -75,5 +75,16 @@
       {
          // good
       }
+      
+      // EJBTHREE-1218: throw NoSuchEJBException on remove
+      try
+      {
+         cache.remove(key);
+         fail("Expected NoSuchEJBException");
+      }
+      catch(NoSuchEJBException e)
+      {
+         // good
+      }
    }
 }




More information about the jboss-cvs-commits mailing list