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

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Jul 1 11:31:37 EDT 2010


Author: Rikkola
Date: 2010-07-01 11:31:36 -0400 (Thu, 01 Jul 2010)
New Revision: 33719

Added:
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/ScopesAgendaFilter.java
Modified:
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/VerificationServiceImplementation.java
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/VerifierRunner.java
   labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/util/VerifierRunnerTest.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/DefaultVerifierConfiguration.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/Verifier.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfiguration.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfigurationImpl.java
   labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java
   labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/VerifyingScopeTest.java
   labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/incoherence/IncoherentRestrictionsTest.java
Log:
faster verification. -Moved verification scopes out of the verifier conf to fireAnalyser()

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/VerificationServiceImplementation.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/VerificationServiceImplementation.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/VerificationServiceImplementation.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -1,9 +1,11 @@
 package org.drools.guvnor.server;
 
+import java.util.Collection;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Set;
 
+import org.drools.builder.ResourceType;
 import org.drools.factconstraints.client.ConstraintConfiguration;
 import org.drools.factconstraints.server.factory.ConstraintsFactory;
 import org.drools.guvnor.client.common.AssetFormats;
@@ -16,8 +18,14 @@
 import org.drools.guvnor.server.security.RoleTypes;
 import org.drools.guvnor.server.util.LoggingHelper;
 import org.drools.guvnor.server.util.VerifierRunner;
+import org.drools.io.ResourceFactory;
 import org.drools.repository.PackageItem;
+import org.drools.verifier.DefaultVerifierConfiguration;
+import org.drools.verifier.Verifier;
 import org.drools.verifier.VerifierConfiguration;
+import org.drools.verifier.VerifierConfigurationImpl;
+import org.drools.verifier.builder.ScopesAgendaFilter;
+import org.drools.verifier.builder.VerifierBuilderFactory;
 import org.jboss.seam.annotations.AutoCreate;
 import org.jboss.seam.annotations.Name;
 import org.jboss.seam.annotations.remoting.WebRemote;
@@ -45,6 +53,8 @@
 
     private ServiceImplementation      service          = RepositoryServiceServlet.getService();
 
+    private Verifier                   defaultVerifier  = VerifierBuilderFactory.newVerifierBuilder().newVerifier();
+
     @WebRemote
     @Restrict("#{identity.loggedIn}")
     public AnalysisReport analysePackage(String packageUUID) throws SerializationException {
@@ -55,9 +65,11 @@
 
         PackageItem packageItem = service.getRulesRepository().loadPackageByUUID( packageUUID );
 
-        VerifierRunner runner = new VerifierRunner();
+        VerifierRunner runner = new VerifierRunner( defaultVerifier );
+
         return runner.verify( packageItem,
-                              VerifierConfiguration.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE );
+                              new ScopesAgendaFilter( true,
+                                                      ScopesAgendaFilter.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE ) );
     }
 
     @WebRemote
@@ -90,27 +102,32 @@
 
         PackageItem packageItem = service.getRulesRepository().loadPackage( asset.metaData.packageName );
 
-        VerifierRunner runner = new VerifierRunner();
+        ScopesAgendaFilter verificationScope;
 
-        runner.setUseDefaultConfig( useVerifierDefaultConfig );
+        if ( isAssetDecisionTable( asset ) ) {
+            verificationScope = new ScopesAgendaFilter( true,
+                                                        ScopesAgendaFilter.VERIFYING_SCOPE_DECISION_TABLE );
+        } else {
+            verificationScope = new ScopesAgendaFilter( true,
+                                                        ScopesAgendaFilter.VERIFYING_SCOPE_SINGLE_RULE );
+        }
 
         List<String> constraintRules = applyWorkingSets( activeWorkingSets );
 
+        VerifierRunner runner;
+
+        if ( useVerifierDefaultConfig ) {
+            runner = new VerifierRunner( defaultVerifier );
+        } else {
+            runner = new VerifierRunner( getWorkingSetVerifier( constraintRules ) );
+        }
+
         log.debug( "constraints rules: " + constraintRules );
 
         try {
-            AnalysisReport report;
+            AnalysisReport report = runner.verify( packageItem,
+                                                   verificationScope );
 
-            if ( isAssetDecisionTable( asset ) ) {
-                report = runner.verify( packageItem,
-                                        VerifierConfiguration.VERIFYING_SCOPE_DECISION_TABLE,
-                                        constraintRules );
-            } else {
-                report = runner.verify( packageItem,
-                                        VerifierConfiguration.VERIFYING_SCOPE_SINGLE_RULE,
-                                        constraintRules );
-            }
-
             log.debug( "Asset verification took: " + (System.currentTimeMillis() - startTime) );
 
             return report;
@@ -139,4 +156,18 @@
         }
         return constraintRules;
     }
+
+    private Verifier getWorkingSetVerifier(Collection<String> additionalVerifierRules) {
+        VerifierConfiguration configuration = new DefaultVerifierConfiguration();
+        configuration = new VerifierConfigurationImpl();
+
+        if ( additionalVerifierRules != null ) {
+            for ( String rule : additionalVerifierRules ) {
+                configuration.getVerifyingResources().put( ResourceFactory.newByteArrayResource( rule.getBytes() ),
+                                                           ResourceType.DRL );
+            }
+        }
+
+        return VerifierBuilderFactory.newVerifierBuilder().newVerifier( configuration );
+    }
 }

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/VerifierRunner.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/VerifierRunner.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/VerifierRunner.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -1,8 +1,6 @@
 package org.drools.guvnor.server.util;
 
 import java.io.StringReader;
-import java.util.Collection;
-import java.util.Collections;
 
 import org.drools.builder.ResourceType;
 import org.drools.guvnor.client.common.AssetFormats;
@@ -15,35 +13,24 @@
 import org.drools.repository.AssetItem;
 import org.drools.repository.AssetItemIterator;
 import org.drools.repository.PackageItem;
-import org.drools.verifier.DefaultVerifierConfiguration;
 import org.drools.verifier.Verifier;
-import org.drools.verifier.VerifierConfiguration;
-import org.drools.verifier.VerifierConfigurationImpl;
 import org.drools.verifier.VerifierError;
-import org.drools.verifier.builder.VerifierBuilderFactory;
+import org.drools.verifier.builder.ScopesAgendaFilter;
 import org.drools.verifier.data.VerifierReport;
 
 public class VerifierRunner {
 
     private Verifier    verifier;
     private PackageItem packageItem;
-    private boolean     useDefaultConfig = true;
 
-    public AnalysisReport verify(PackageItem packageItem,
-                                 String scope) {
-        return verify( packageItem,
-                       scope,
-                       Collections.EMPTY_LIST );
+    public VerifierRunner(Verifier verifier) {
+        this.verifier = verifier;
     }
 
     public AnalysisReport verify(PackageItem packageItem,
-                                 String scope,
-                                 Collection<String> additionalVerifierRules) {
+                                 ScopesAgendaFilter scopesAgendaFilter) {
         this.packageItem = packageItem;
 
-        initVerifier( scope,
-                      additionalVerifierRules );
-
         addHeaderToVerifier();
 
         addToVerifier( packageItem.listAssetsByFormat( new String[]{AssetFormats.DSL} ),
@@ -70,15 +57,17 @@
         addToVerifier( packageItem.listAssetsByFormat( new String[]{AssetFormats.BUSINESS_RULE} ),
                        ResourceType.BRL );
 
-        fireAnalysis();
+        fireAnalysis( scopesAgendaFilter );
 
         VerifierReport report = verifier.getResult();
 
         return VerifierReportCreator.doReport( report );
     }
 
-    private void fireAnalysis() throws RuntimeException {
-        verifier.fireAnalysis();
+    private void fireAnalysis(ScopesAgendaFilter scopesAgendaFilter) throws RuntimeException {
+
+        verifier.fireAnalysis( scopesAgendaFilter );
+
         if ( verifier.hasErrors() ) {
             StringBuilder message = new StringBuilder( "Verifier Errors:\n" );
             for ( VerifierError verifierError : verifier.getErrors() ) {
@@ -90,27 +79,6 @@
         }
     }
 
-    private void initVerifier(String scope,
-                              Collection<String> additionalVerifierRules) {
-        VerifierConfiguration configuration = new DefaultVerifierConfiguration();
-        if ( useDefaultConfig ) {
-            configuration = new DefaultVerifierConfiguration();
-        } else {
-            configuration = new VerifierConfigurationImpl();
-        }
-
-        configuration.getVerifyingScopes().clear();
-        configuration.getVerifyingScopes().add( scope );
-        configuration.setAcceptRulesWithoutVerifiyingScope( true );
-        if ( additionalVerifierRules != null ) {
-            for ( String rule : additionalVerifierRules ) {
-                configuration.getVerifyingResources().put( ResourceFactory.newByteArrayResource( rule.getBytes() ),
-                                                           ResourceType.DRL );
-            }
-        }
-        verifier = VerifierBuilderFactory.newVerifierBuilder().newVerifier( configuration );
-    }
-
     private void addHeaderToVerifier() {
         StringBuffer header = new StringBuffer();
         header.append( "package " + packageItem.getName() + "\n" );
@@ -167,13 +135,4 @@
             }
         }
     }
-
-    public boolean isUseDefaultConfig() {
-        return useDefaultConfig;
-    }
-
-    public void setUseDefaultConfig(boolean useDefaultConfig) {
-        this.useDefaultConfig = useDefaultConfig;
-    }
-
 }

Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/util/VerifierRunnerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/util/VerifierRunnerTest.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/util/VerifierRunnerTest.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -1,7 +1,5 @@
 package org.drools.guvnor.server.util;
 
-import java.util.Collections;
-
 import junit.framework.Assert;
 
 import org.drools.guvnor.client.common.AssetFormats;
@@ -10,7 +8,8 @@
 import org.drools.repository.AssetItem;
 import org.drools.repository.PackageItem;
 import org.drools.repository.RulesRepository;
-import org.drools.verifier.VerifierConfiguration;
+import org.drools.verifier.builder.ScopesAgendaFilter;
+import org.drools.verifier.builder.VerifierBuilderFactory;
 import org.junit.Before;
 import org.junit.Test;
 
@@ -34,8 +33,8 @@
         VerifierRunner verifierRunner = checkinDRLAssetToPackage( "/VerifierCauseTrace.drl" );
 
         AnalysisReport report = verifierRunner.verify( packageItem,
-                                                       VerifierConfiguration.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE,
-                                                       Collections.EMPTY_LIST );
+                                                       new ScopesAgendaFilter( true,
+                                                                               ScopesAgendaFilter.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE ) );
 
         Assert.assertNotNull( report );
         Assert.assertEquals( 1,
@@ -45,7 +44,7 @@
     }
 
     private VerifierRunner checkinDRLAssetToPackage(String assetName) {
-        VerifierRunner verifierRunner = new VerifierRunner();
+        VerifierRunner verifierRunner = new VerifierRunner( VerifierBuilderFactory.newVerifierBuilder().newVerifier() );
         AssetItem asset = packageItem.addAsset( "verifyPackageItem",
                                                 "" );
         asset.updateFormat( AssetFormats.DRL );

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/DefaultVerifierConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/DefaultVerifierConfiguration.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/DefaultVerifierConfiguration.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -9,9 +9,6 @@
         verifyingResources.put( ResourceFactory.newClassPathResource( "scope-knowledge-package.xml",
                                                                       getClass() ),
                                 ResourceType.CHANGE_SET );
-        verifyingScopes.add( VERIFYING_SCOPE_SINGLE_RULE );
-        verifyingScopes.add( VERIFYING_SCOPE_DECISION_TABLE );
-        verifyingScopes.add( VERIFYING_SCOPE_KNOWLEDGE_PACKAGE );
     }
 
 }

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/Verifier.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/Verifier.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/Verifier.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -5,6 +5,7 @@
 
 import org.drools.builder.ResourceType;
 import org.drools.io.Resource;
+import org.drools.verifier.builder.ScopesAgendaFilter;
 import org.drools.verifier.data.VerifierReport;
 
 public interface Verifier {
@@ -20,7 +21,7 @@
     /**
      * Give model info optionally as a jar. This way verifier doesn't have to figure out the field types.
      */
-     public void addObjectModel(JarInputStream jar);
+    public void addObjectModel(JarInputStream jar);
 
     /**
      * 
@@ -30,6 +31,8 @@
      */
     public boolean fireAnalysis();
 
+    public boolean fireAnalysis(ScopesAgendaFilter scopesAgendaFilter);
+
     public VerifierReport getResult();
 
     public boolean hasErrors();

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfiguration.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfiguration.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfiguration.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -1,6 +1,5 @@
 package org.drools.verifier;
 
-import java.util.List;
 import java.util.Map;
 
 import org.drools.PropertiesConfiguration;
@@ -11,10 +10,6 @@
     extends
     PropertiesConfiguration {
 
-    public final static String VERIFYING_SCOPE_SINGLE_RULE       = "single-rule";
-    public final static String VERIFYING_SCOPE_DECISION_TABLE    = "decision-table";
-    public final static String VERIFYING_SCOPE_KNOWLEDGE_PACKAGE = "knowledge-package";
-
     /**
      * Add external analyzing rules to verifier.
      * 
@@ -25,19 +20,4 @@
      */
     Map<Resource, ResourceType> getVerifyingResources();
 
-    /**
-     * Set verifying scope.<br>
-     * <br>
-     * single-rule - Verifies an single rule <br>
-     * decision-table - Verifies a decision table <br>
-     * knowledge-package - Verifies everything
-     * 
-     */
-    public void addVerifyingScopes(String scope);
-
-    public List<String> getVerifyingScopes();
-
-    public void setAcceptRulesWithoutVerifiyingScope(boolean accept);
-
-    public boolean acceptRulesWithoutVerifiyingScope();
 }

Modified: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfigurationImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfigurationImpl.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/VerifierConfigurationImpl.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -2,8 +2,6 @@
 
 import java.util.HashMap;
 import java.util.Map;
-import java.util.List;
-import java.util.ArrayList;
 
 import org.drools.builder.ResourceType;
 import org.drools.io.Resource;
@@ -12,12 +10,9 @@
     implements
     VerifierConfiguration {
 
-    protected Map<Resource, ResourceType> verifyingResources              = new HashMap<Resource, ResourceType>();
-    private Map<String, String>           properties                      = new HashMap<String, String>();
-    protected final List<String>          verifyingScopes                 = new ArrayList<String>();
+    protected Map<Resource, ResourceType> verifyingResources = new HashMap<Resource, ResourceType>();
+    private Map<String, String>           properties         = new HashMap<String, String>();
 
-    private boolean                       acceptRuleWithoutVerifyingScope = true;
-
     public String getProperty(String name) {
         return properties.get( name );
     }
@@ -32,20 +27,4 @@
         return verifyingResources;
     }
 
-    public List<String> getVerifyingScopes() {
-        return verifyingScopes;
-    }
-
-    public void addVerifyingScopes(String scope) {
-        this.verifyingScopes.add( scope );
-    }
-
-    public boolean acceptRulesWithoutVerifiyingScope() {
-        return this.acceptRuleWithoutVerifyingScope;
-    }
-
-    public void setAcceptRulesWithoutVerifiyingScope(boolean accept) {
-        acceptRuleWithoutVerifyingScope = accept;
-    }
-
 }

Added: labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/ScopesAgendaFilter.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/ScopesAgendaFilter.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/ScopesAgendaFilter.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -0,0 +1,77 @@
+package org.drools.verifier.builder;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.drools.runtime.rule.Activation;
+import org.drools.runtime.rule.AgendaFilter;
+
+/**
+ * 
+ * @author rikkola
+ *
+ */
+public class ScopesAgendaFilter
+    implements
+    AgendaFilter {
+
+    public final static String             VERIFYING_SCOPE_SINGLE_RULE       = "single-rule";
+    public final static String             VERIFYING_SCOPE_DECISION_TABLE    = "decision-table";
+    public final static String             VERIFYING_SCOPE_KNOWLEDGE_PACKAGE = "knowledge-package";
+
+    public final static Collection<String> ALL_SCOPES                        = new ArrayList<String>() {
+
+                                                                                 private static final long serialVersionUID = 4428467530400926541L;
+
+                                                                                 {
+                                                                                     add( VERIFYING_SCOPE_DECISION_TABLE );
+                                                                                     add( VERIFYING_SCOPE_SINGLE_RULE );
+                                                                                     add( VERIFYING_SCOPE_KNOWLEDGE_PACKAGE );
+                                                                                 }
+                                                                             };
+
+    public static final String             VERIFYING_SCOPES                  = "verifying_scopes";
+
+    private final boolean                  acceptEmpty;
+
+    private final Collection<String>       scopes;
+
+    /**
+     * 
+     * @param acceptEmpty true accepts rules that do not have scope set.
+     * @param scopes Valid scope values.
+     */
+    public ScopesAgendaFilter(boolean acceptEmpty,
+                              Collection<String> scopes) {
+        this.acceptEmpty = acceptEmpty;
+        this.scopes = scopes;
+    }
+
+    public ScopesAgendaFilter(boolean acceptEmpty,
+                              String scope) {
+        this.acceptEmpty = acceptEmpty;
+
+        Collection<String> list = new ArrayList<String>();
+        list.add( scope );
+        this.scopes = list;
+    }
+
+    public boolean accept(Activation activation) {
+        if ( acceptEmpty && activation.getRule().listMetaAttributes().isEmpty() ) {
+            return true;
+        }
+
+        if ( activation.getRule().listMetaAttributes().contains( VERIFYING_SCOPES ) ) {
+            String[] values = activation.getRule().getMetaAttribute( VERIFYING_SCOPES ).split( "," );
+
+            for ( String value : values ) {
+                if ( scopes.contains( value.trim() ) ) {
+                    return true;
+                }
+            }
+        }
+
+        return false;
+    }
+
+}

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-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/main/java/org/drools/verifier/builder/VerifierImpl.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -8,7 +8,6 @@
 import org.drools.KnowledgeBase;
 import org.drools.builder.KnowledgeBuilderError;
 import org.drools.builder.ResourceType;
-import org.drools.compiler.PackageBuilder;
 import org.drools.compiler.PackageBuilderErrors;
 import org.drools.io.Resource;
 import org.drools.lang.descr.PackageDescr;
@@ -98,6 +97,15 @@
      * @see org.drools.verifier.Verifier#fireAnalysis()
      */
     public boolean fireAnalysis() {
+        return analyse( new ScopesAgendaFilter( true,
+                                                ScopesAgendaFilter.ALL_SCOPES ) );
+    }
+
+    public boolean fireAnalysis(ScopesAgendaFilter scopesAgendaFilter) {
+        return analyse( scopesAgendaFilter );
+    }
+
+    private boolean analyse(ScopesAgendaFilter scopesAgendaFilter) {
         try {
 
             if ( this.verifierKnowledgeBase == null ) {
@@ -114,9 +122,7 @@
             // Object that returns the results.
             ksession.setGlobal( "result",
                                 result );
-            ksession.fireAllRules( new MetaDataAgendaFilter( conf.acceptRulesWithoutVerifiyingScope(),
-                                                             "verifying_scopes",
-                                                             conf.getVerifyingScopes() ) );
+            ksession.fireAllRules( scopesAgendaFilter );
 
         } catch ( Throwable t ) {
             t.printStackTrace();

Modified: labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/VerifyingScopeTest.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/VerifyingScopeTest.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/VerifyingScopeTest.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -1,9 +1,12 @@
 package org.drools.verifier;
 
+import java.util.Collections;
+
 import junit.framework.TestCase;
 
 import org.drools.builder.ResourceType;
 import org.drools.io.impl.ClassPathResource;
+import org.drools.verifier.builder.ScopesAgendaFilter;
 import org.drools.verifier.builder.VerifierBuilder;
 import org.drools.verifier.builder.VerifierBuilderFactory;
 import org.drools.verifier.data.VerifierReport;
@@ -26,8 +29,6 @@
                                                                            Verifier.class ),
                                                     ResourceType.DRL );
 
-        vConfiguration.addVerifyingScopes( VerifierConfiguration.VERIFYING_SCOPE_SINGLE_RULE );
-
         Verifier verifier = vBuilder.newVerifier( vConfiguration );
 
         verifier.addResourcesToVerify( new ClassPathResource( "Misc3.drl",
@@ -38,7 +39,8 @@
         assertEquals( 0,
                       verifier.getErrors().size() );
 
-        boolean works = verifier.fireAnalysis();
+        boolean works = verifier.fireAnalysis( new ScopesAgendaFilter( true,
+                                                                       ScopesAgendaFilter.VERIFYING_SCOPE_SINGLE_RULE ) );
 
         if ( !works ) {
             for ( VerifierError error : verifier.getErrors() ) {
@@ -84,7 +86,8 @@
         assertEquals( 0,
                       verifier.getErrors().size() );
 
-        boolean works = verifier.fireAnalysis();
+        boolean works = verifier.fireAnalysis( new ScopesAgendaFilter( true,
+                                                                       Collections.EMPTY_LIST));
 
         assertTrue( works );
 
@@ -114,9 +117,6 @@
                                                                            Verifier.class ),
                                                     ResourceType.DRL );
 
-        vConfiguration.addVerifyingScopes( VerifierConfiguration.VERIFYING_SCOPE_DECISION_TABLE );
-        vConfiguration.setAcceptRulesWithoutVerifiyingScope( false );
-
         Verifier verifier = vBuilder.newVerifier( vConfiguration );
 
         verifier.addResourcesToVerify( new ClassPathResource( "Misc3.drl",
@@ -127,7 +127,8 @@
         assertEquals( 0,
                       verifier.getErrors().size() );
 
-        boolean works = verifier.fireAnalysis();
+        boolean works = verifier.fireAnalysis( new ScopesAgendaFilter( false,
+                                                                       ScopesAgendaFilter.VERIFYING_SCOPE_DECISION_TABLE ) );
 
         assertTrue( works );
 

Modified: labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/incoherence/IncoherentRestrictionsTest.java
===================================================================
--- labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/incoherence/IncoherentRestrictionsTest.java	2010-07-01 14:05:42 UTC (rev 33718)
+++ labs/jbossrules/trunk/drools-verifier/src/test/java/org/drools/verifier/incoherence/IncoherentRestrictionsTest.java	2010-07-01 15:31:36 UTC (rev 33719)
@@ -13,7 +13,7 @@
 import org.drools.verifier.DefaultVerifierConfiguration;
 import org.drools.verifier.TestBase;
 import org.drools.verifier.Verifier;
-import org.drools.verifier.VerifierConfiguration;
+import org.drools.verifier.builder.ScopesAgendaFilter;
 import org.drools.verifier.builder.VerifierBuilder;
 import org.drools.verifier.builder.VerifierBuilderFactory;
 import org.drools.verifier.components.Pattern;
@@ -49,9 +49,6 @@
         str += "end";
 
         DefaultVerifierConfiguration conf = new DefaultVerifierConfiguration();
-        conf.getVerifyingScopes().clear();
-        conf.getVerifyingScopes().add( VerifierConfiguration.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE );
-        conf.setAcceptRulesWithoutVerifiyingScope( true );
         Verifier verifier = VerifierBuilderFactory.newVerifierBuilder().newVerifier( conf );
         verifier.addResourcesToVerify( ResourceFactory.newReaderResource( new StringReader( str ) ),
                                        ResourceType.DRL );
@@ -60,7 +57,8 @@
         assertEquals( 0,
                       verifier.getErrors().size() );
 
-        boolean works = verifier.fireAnalysis();
+        boolean works = verifier.fireAnalysis( new ScopesAgendaFilter( true,
+                                                                       ScopesAgendaFilter.VERIFYING_SCOPE_KNOWLEDGE_PACKAGE ) );
 
         assertTrue( works );
 



More information about the jboss-svn-commits mailing list