[jboss-svn-commits] JBL Code SVN: r26530 - in labs/jbossrules/trunk/drools-guvnor/src: main/java/org/drools/guvnor/server and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 14 03:26:24 EDT 2009


Author: michael.neale at jboss.com
Date: 2009-05-14 03:26:24 -0400 (Thu, 14 May 2009)
New Revision: 26530

Modified:
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/version.txt
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java
   labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/ServiceImplementationTest.java
Log:
GUVNOR-303 buildAsset was forcing full package compile

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/version.txt
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/version.txt	2009-05-14 04:39:53 UTC (rev 26529)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/public/version.txt	2009-05-14 07:26:24 UTC (rev 26530)
@@ -1 +1 @@
-5.0.1.SNAPSHOT 26391M
\ No newline at end of file
+5.0.1.SNAPSHOT 26492M
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java	2009-05-14 04:39:53 UTC (rev 26529)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/ServiceImplementation.java	2009-05-14 07:26:24 UTC (rev 26530)
@@ -1513,16 +1513,10 @@
                                                  RoleTypes.PACKAGE_DEVELOPER );
         }
         BuilderResult[] result = null;
-        
-        //FIXME nheron
-        ClassLoader originalCL = Thread.currentThread().getContextClassLoader();
 
         try {
 
             AssetItem item = repository.loadAssetByUUID( asset.uuid );
-            final RuleBase rb=loadCacheRuleBase(item.getPackage());
-			ClassLoader cl = ((InternalRuleBase) rb).getRootClassLoader();
-			Thread.currentThread().setContextClassLoader(cl);
 
             ContentHandler handler = ContentManager.getHandler( item.getFormat() );// new
             // AssetContentFormatHandler();
@@ -1552,9 +1546,7 @@
             result[0] = res;
             return result;
             
-        }         finally {
-        	Thread.currentThread().setContextClassLoader( originalCL );
-        }
+        } 
         return result;
     }
 

Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/ServiceImplementationTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/ServiceImplementationTest.java	2009-05-14 04:39:53 UTC (rev 26529)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/ServiceImplementationTest.java	2009-05-14 07:26:24 UTC (rev 26530)
@@ -1445,6 +1445,38 @@
 
 	}
 
+
+    	public void testBuildAssetWithError() throws Exception {
+		ServiceImplementation impl = getService();
+		RulesRepository repo = impl.repository;
+
+		// create our package
+		PackageItem pkg = repo.createPackage("testBuildAssetWithError", "");
+		AssetItem model = pkg.addAsset("MyModel", "");
+		model.updateFormat(AssetFormats.MODEL);
+		model.updateBinaryContentAttachment(this.getClass()
+				.getResourceAsStream("/billasurf.jar"));
+		model.checkin("");
+
+		ServiceImplementation.updateDroolsHeader("import com.billasurf.Person", pkg);
+
+		AssetItem asset = pkg.addAsset("testRule", "");
+		asset.updateFormat(AssetFormats.DRL);
+		asset.updateContent("rule 'MyGoodRule' \n when Personx() then System.err.println(42); \n end");
+		asset.checkin("");
+		repo.save();
+
+		RuleAsset rule = impl.loadRuleAsset(asset.getUUID());
+
+
+		BuilderResult[] result = impl.buildAsset(rule);
+		assertNotNull(result);
+        assertEquals(-1, result[0].message.indexOf("Check log for"));
+        assertTrue(result[0].message.indexOf("Unable to resolve") > -1);
+
+
+	}
+
 	public void testBuildAsset() throws Exception {
 		ServiceImplementation impl = getService();
 		RulesRepository repo = impl.repository;
@@ -1472,6 +1504,8 @@
 		BuilderResult[] result = impl.buildAsset(rule);
 		assertNull(result);
 
+        ServiceImplementation.ruleBaseCache.clear();
+
 		// try it with a bad rule
 		RuleContentText text = new RuleContentText();
 		text.content = "rule 'MyBadRule' \n when Personx() then System.err.println(42); \n end";




More information about the jboss-svn-commits mailing list