[jboss-svn-commits] JBL Code SVN: r32500 - in labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier: components and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Apr 10 16:47:30 EDT 2010


Author: eaa
Date: 2010-04-10 16:47:30 -0400 (Sat, 10 Apr 2010)
New Revision: 32500

Modified:
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/components/NumberRestriction.java
Log:
JBRULES-2479: Verifier should be more specific when it fails compiling verifying resources.
	- VerifierImpl checks for building errors on kbuillder after all verifying resources are added to it. For every error VerifierImpl adds an entry to its own list of errors. Then it throws a RuntimeException to expose the problem. 

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java	2010-04-10 20:26:13 UTC (rev 32499)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java	2010-04-10 20:47:30 UTC (rev 32500)
@@ -4,6 +4,7 @@
 import java.io.IOException;
 import java.text.ParseException;
 import java.util.ArrayList;
+import java.util.Iterator;
 import java.util.List;
 import java.util.jar.JarInputStream;
 
@@ -11,6 +12,7 @@
 import org.drools.KnowledgeBaseFactory;
 import org.drools.builder.KnowledgeBuilder;
 import org.drools.builder.KnowledgeBuilderConfiguration;
+import org.drools.builder.KnowledgeBuilderError;
 import org.drools.builder.KnowledgeBuilderFactory;
 import org.drools.builder.ResourceType;
 import org.drools.compiler.DrlParser;
@@ -165,6 +167,14 @@
             }
         }
 
+        if (kbuilder.hasErrors()){
+            Iterator<KnowledgeBuilderError> errors = kbuilder.getErrors().iterator();
+            while(errors.hasNext()){
+                this.errors.add(new VerifierError("Error compiling verifier rules: "+errors.next().getMessage()));
+            }
+            throw new IllegalStateException("Error compiling verifier rules");
+        }
+
         verifierKnowledgeBase.addKnowledgePackages( kbuilder.getKnowledgePackages() );
     }
 

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/components/NumberRestriction.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/components/NumberRestriction.java	2010-04-10 20:26:13 UTC (rev 32499)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/components/NumberRestriction.java	2010-04-10 20:47:30 UTC (rev 32500)
@@ -14,7 +14,7 @@
     }
 
     public void setValue(Number number) {
-        this.value = number;;
+        this.value = number;
     }
 
     public boolean isInt() {



More information about the jboss-svn-commits mailing list