[jboss-svn-commits] JBL Code SVN: r25657 - in labs/jbossrules/trunk/drools-compiler/src: main/java/org/drools/guvnor/server/util and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sun Mar 15 22:33:16 EDT 2009
Author: michael.neale at jboss.com
Date: 2009-03-15 22:33:16 -0400 (Sun, 15 Mar 2009)
New Revision: 25657
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/DTColumnConfig.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java
Log:
GUVNOR-141 default columns in web DT
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/DTColumnConfig.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/DTColumnConfig.java 2009-03-16 02:31:56 UTC (rev 25656)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/DTColumnConfig.java 2009-03-16 02:33:16 UTC (rev 25657)
@@ -9,4 +9,15 @@
*/
public int width = -1;
+
+ /**
+ * For a default value ! Will stil be in the array of course, just use this value if its empty.
+ */
+ public String defaultValue = null;
+
+ /**
+ * to hide the column (eg if it has a mandatory default).
+ */
+ public boolean hideColumn = false;
+
}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java 2009-03-16 02:31:56 UTC (rev 25656)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java 2009-03-16 02:33:16 UTC (rev 25657)
@@ -73,6 +73,9 @@
for (int i = 0; i < actionCols.size(); i++) {
ActionCol c = actionCols.get(i);
String cell = row[condAndAttrs + i + GuidedDecisionTable.INTERNAL_ELEMENTS];
+ if (!validCell(cell)) {
+ cell = c.defaultValue;
+ }
if (validCell(cell)) {
if (c instanceof ActionInsertFactCol) {
ActionInsertFactCol ac = (ActionInsertFactCol)c;
@@ -144,6 +147,12 @@
for (int i = 0; i < conditionCols.size(); i++) {
ConditionCol c = (ConditionCol) conditionCols.get(i);
String cell = row[i + GuidedDecisionTable.INTERNAL_ELEMENTS + numOfAttributesAndMeta];
+
+ if (!validCell(cell)) {
+ //try default value
+ cell = c.defaultValue;
+ }
+
if (validCell(cell)) {
//get or create the pattern it belongs too
@@ -213,7 +222,9 @@
String cell = row[j + GuidedDecisionTable.INTERNAL_ELEMENTS + numOfMeta];
if (validCell(cell)) {
attribs.add(new RuleAttribute(at.attr, cell));
- }
+ } else if (at.defaultValue != null) {
+ attribs.add(new RuleAttribute(at.attr, at.defaultValue));
+ }
}
if (attribs.size() > 0) {
rm.attributes = attribs.toArray(new RuleAttribute[attribs.size()]);
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java 2009-03-16 02:31:56 UTC (rev 25656)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java 2009-03-16 02:33:16 UTC (rev 25657)
@@ -33,6 +33,7 @@
AttributeCol attr = new AttributeCol();
attr.attr = "salience";
+ attr.defaultValue = "66";
dt.attributeCols.add(attr);
ConditionCol con = new ConditionCol();
@@ -91,12 +92,13 @@
ActionSetFieldCol set2 = new ActionSetFieldCol();
set2.boundName = "f1";
set2.factField = "goo2";
+ set2.defaultValue = "whee";
set2.type = SuggestionCompletionEngine.TYPE_STRING;
dt.actionCols.add(set2);
dt.data = new String[][] {
- new String[] {"1", "desc", "42", "33", "michael", "age * 0.2", "age > 7", "6.60", "true", "gooVal1", "gooVal2"},
- new String[] {"2", "desc", "", "39", "bob", "age * 0.3", "age > 7", "6.60", "", "gooVal1", "gooVal2"}
+ new String[] {"1", "desc", "42", "33", "michael", "age * 0.2", "age > 7", "6.60", "true", "gooVal1", null},
+ new String[] {"2", "desc", "", "39", "bob", "age * 0.3", "age > 7", "6.60", "", "gooVal1", ""}
};
@@ -109,6 +111,9 @@
assertTrue(drl.indexOf("rating == ( age * 0.2 )") > 0);
assertTrue(drl.indexOf("f2 : Driver( eval( age > 7 ))") > 0);
assertTrue(drl.indexOf("rating == ( age * 0.3 )") > drl.indexOf("rating == ( age * 0.2 )"));
+ assertTrue(drl.indexOf("f1.setGoo2( \"whee\" )") > 0); //for default
+ assertTrue(drl.indexOf("salience 66") > 0); //for default
+
}
More information about the jboss-svn-commits
mailing list