[jboss-svn-commits] JBL Code SVN: r9447 - labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Feb 12 07:02:32 EST 2007


Author: stevearoonie
Date: 2007-02-12 07:02:32 -0500 (Mon, 12 Feb 2007)
New Revision: 9447

Modified:
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ArrayColumn.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Cell.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Column.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ColumnFactory.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultGenerator.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultTemplateRuleBase.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Generator.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Row.java
   labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/RuleTemplate.java
Log:
Add comments

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ArrayColumn.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ArrayColumn.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ArrayColumn.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -17,7 +17,12 @@
  */
 import org.antlr.stringtemplate.StringTemplate;
 import org.drools.util.StringUtils;
-
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * A column in a decision table that represents an array (comma-delimited)
+ * of values.
+ */
 public class ArrayColumn extends Column {
 
 	public void addValue(StringTemplate t, Object value) {

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Cell.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Cell.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Cell.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -17,6 +17,11 @@
  */
 import org.antlr.stringtemplate.StringTemplate;
 
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * A cell in a decision table
+ */
 public class Cell {
 	Row row;
 

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Column.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Column.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Column.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -17,6 +17,11 @@
  */
 import org.antlr.stringtemplate.StringTemplate;
 
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * A column in a decision table
+ */
 public class Column {
 	private String name;
 

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ColumnFactory.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ColumnFactory.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/ColumnFactory.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -15,6 +15,12 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * Factory to produce a column of the correct type based on its declaration.
+ * [] indicates a column that represents an array (comma-delimited) of values.
+ */
 public class ColumnFactory {
 
 	public Column getColumn(String value) {

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultGenerator.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultGenerator.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultGenerator.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -23,7 +23,11 @@
 import java.util.Map;
 
 import org.antlr.stringtemplate.StringTemplate;
-
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * Generate the rules for a decision table row from a rule template.
+ */
 public class DefaultGenerator implements Generator {
 
 	Map ruleTemplates;

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultTemplateRuleBase.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultTemplateRuleBase.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/DefaultTemplateRuleBase.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -47,6 +47,15 @@
  * Basically, if a rule template requires columns A and B then 
  * the template rule base will generate a rule with columns A and B
  * as the LHS and a RHS which triggers the rule to be generated.
+ * ie.
+ * rule "template1"
+ *   when
+ *     r : Row()
+ *     Cell(row == r, column == "column1")
+ *     Cell(row == r, column == "column2")
+ *   then
+ *     generator.generate( "template1", r);
+ *   end
  * 
  */
 public class DefaultTemplateRuleBase implements TemplateRuleBase {

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Generator.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Generator.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Generator.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -15,6 +15,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+/**
+ * <a href="stevearoonie at gmail.com">Steven Williams</a>
+ * Generate the rules for a decision table
+ */
 public interface Generator {
 
 	void generate(String templateName, Row row);

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Row.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Row.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/Row.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -17,7 +17,11 @@
  */
 import java.util.ArrayList;
 import java.util.List;
-
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ *  
+ * Represents a row in a decision table.
+ */
 public class Row {
     int  rowNum;
     List cells = new ArrayList();

Modified: labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/RuleTemplate.java
===================================================================
--- labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/RuleTemplate.java	2007-02-12 11:23:52 UTC (rev 9446)
+++ labs/jbossrules/trunk/drools-decisiontables/src/main/java/org/drools/decisiontable/parser/RuleTemplate.java	2007-02-12 12:02:32 UTC (rev 9447)
@@ -25,6 +25,13 @@
 
 import org.drools.util.StringUtils;
 
+/**
+ * @author <a href="mailto:stevearoonie at gmail.com">Steven Williams</a>
+ * 
+ * A rule template made up of a name, the decision table columns required, 
+ * the decision table columns that must be empty and the contents of the
+ * rule.
+ */
 public class RuleTemplate
 {
     private String name;
@@ -80,9 +87,13 @@
 	 * @see java.lang.Object#toString()
 	 */
 	public String toString() {
-        return "RuleTemplate[name,"+this.name+"notColumns,"+this.notColumns+"contents,"+this.columns+"columns";
+	       return "RuleTemplate[name,"+this.name+"notColumns,"+this.notColumns+"contents,"+this.columns+"columns";
 	}
-    
+	/*
+	 * Replace the optional columns in the rule contents with an if statement.
+	 * if (column is empty) do not show the line.
+	 * This is based on antlr StringTemplate and should be replaced with MVEL.
+	 */
 	private String replaceOptionals(String contents) {
 		try {
 			final Pattern pattern = Pattern.compile("\\$(.[^\\$]*)\\$");




More information about the jboss-svn-commits mailing list