[jboss-svn-commits] JBL Code SVN: r23156 - in labs/jbossrules/branches/drools-api-refactor-20080929: drools-core/src/main/java/org/drools/concurrent and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Sep 28 22:50:21 EDT 2008


Author: mark.proctor at jboss.com
Date: 2008-09-28 22:50:21 -0400 (Sun, 28 Sep 2008)
New Revision: 23156

Modified:
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java
   labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/concurrent/FutureAdapter.java
Log:
JBRULES-1734 Drools API
-Future now throws a wrapped Exception on get.

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2008-09-29 02:38:55 UTC (rev 23155)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-compiler/src/test/java/org/drools/integrationtests/StatefulSessionTest.java	2008-09-29 02:50:21 UTC (rev 23156)
@@ -20,6 +20,7 @@
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
+import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Future;
 
 public class StatefulSessionTest extends TestCase {
@@ -126,11 +127,14 @@
                 fail( "Future should have finished by now" );
             }
         }   
-        
-
-        assertTrue( futureAssert.get() instanceof FactHandle );        
-//        assertTrue( futureFireAllRules.exceptionThrown() );
-//        assertTrue( futureFireAllRules.getException() instanceof Exception );
+         
+        assertTrue( futureAssert.get() instanceof FactHandle );          
+        try {
+            futureFireAllRules.get();
+            fail( "Exception Should have been thrown" );
+        } catch ( ExecutionException e ) {
+            // pass
+        }
     }
     
     public void testHasExceptionArrayAssert()throws Exception {
@@ -152,8 +156,13 @@
         }        
                        
         assertTrue( futureAssert.get() instanceof List );
-        assertTrue( ((List)futureAssert.get()).get( 0 ) instanceof FactHandle );        
-        //assertTrue( futureFireAllRules.getException() instanceof Exception );
+        assertTrue( ((List)futureAssert.get()).get( 0 ) instanceof FactHandle );    
+        try {
+            futureFireAllRules.get();
+            fail( "Exception Should have been thrown" );
+        } catch ( ExecutionException e ) {
+            //pass
+        }
     }   
     
     public void testHasExceptionCollectionAssert()throws Exception {
@@ -178,7 +187,12 @@
                        
         assertTrue( futureAssert.get() instanceof List );
         assertTrue( ((List)futureAssert.get()).get( 0 ) instanceof FactHandle );        
-        //assertTrue( futureFireAllRules.getException() instanceof Exception );
+        try {
+            futureFireAllRules.get();
+            fail( "Exception Should have been thrown" );
+        } catch ( ExecutionException e ) {
+            //pass
+        }
     }    
     
     public void testSequentialException() {

Modified: labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/concurrent/FutureAdapter.java
===================================================================
--- labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/concurrent/FutureAdapter.java	2008-09-29 02:38:55 UTC (rev 23155)
+++ labs/jbossrules/branches/drools-api-refactor-20080929/drools-core/src/main/java/org/drools/concurrent/FutureAdapter.java	2008-09-29 02:50:21 UTC (rev 23156)
@@ -21,6 +21,9 @@
 
     public Object get() throws InterruptedException,
                        ExecutionException {
+        if ( this.future.exceptionThrown() ) {
+            throw new ExecutionException( this.future.getException() );
+        }
         return this.future.getObject();
     }
 




More information about the jboss-svn-commits mailing list