[jboss-svn-commits] JBL Code SVN: r20902 - in labs/jbossrules/trunk/drools-guvnor/src: test/java/org/drools/guvnor/server/contenthandler and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jul 4 02:39:45 EDT 2008
Author: michael.neale at jboss.com
Date: 2008-07-04 02:39:45 -0400 (Fri, 04 Jul 2008)
New Revision: 20902
Modified:
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandler.java
labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandlerTest.java
Log:
GUVNOR-3 Fix for ruleflow group in technical rules
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandler.java 2008-07-04 02:37:03 UTC (rev 20901)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandler.java 2008-07-04 06:39:45 UTC (rev 20902)
@@ -61,11 +61,11 @@
return true;
}
//otherwise sniff for a suitable keyword at the start of a line
- if (tok.startsWith( "package" ) ||
- tok.startsWith( "rule" ) ||
- tok.startsWith( "end" ) ||
- tok.startsWith( "function" ) ||
- tok.startsWith( "query" )) {
+ if (startsWithWord( "package", tok ) ||
+ startsWithWord( "rule", tok ) ||
+ startsWithWord( "end", tok ) ||
+ startsWithWord( "function", tok ) ||
+ startsWithWord( "query", tok )) {
return false;
}
}
@@ -73,6 +73,15 @@
}
+ static boolean startsWithWord(String word, String sentence) {
+ String[] words = sentence.trim().split("\\s");
+ if (words.length > 0) {
+ return words[0].equals(word);
+ } else {
+ return false;
+ }
+ }
+
public void assembleDRL(BRMSPackageBuilder builder, AssetItem asset, StringBuffer buf) {
String content = asset.getContent();
boolean standAlone = isStandAloneRule( content );
Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandlerTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandlerTest.java 2008-07-04 02:37:03 UTC (rev 20901)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/contenthandler/DRLFileContentHandlerTest.java 2008-07-04 06:39:45 UTC (rev 20902)
@@ -70,4 +70,26 @@
}
+ public void testRuleWithRuleFlowGroup() {
+ String rule = "rule \"DemoRule\" \n "+
+ " ruleflow-group \"name-of-ruleflow\" \n" +
+ " dialect \"mvel\" \n " +
+ " when \n" +
+ " Driver( age > 65 ) \n" +
+ " then \n" +
+ " insert(new Rejection(\" too old \"));" +
+ "end ";
+ DRLFileContentHandler h = new DRLFileContentHandler();
+ assertFalse(h.isStandAloneRule( rule ));
+
+ rule =
+ " ruleflow-group \"name-of-ruleflow\" \n" +
+ " dialect \"mvel\" \n " +
+ " when \n" +
+ " Driver( age > 65 ) \n" +
+ " then \n" +
+ " insert(new Rejection(\" too old \"));";
+ assertTrue(h.isStandAloneRule( rule ));
+ }
+
}
\ No newline at end of file
More information about the jboss-svn-commits
mailing list