站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JBoss RULES 4.0.0.11754MR2 API 英文版文档

RuleMatrixSheetListener (Drools 4.0.0.11754MR2 API) - JBoss RULES 4.0.0.11754MR2 API 英文版文档


org.drools.decisiontable.parser
Class RuleMatrixSheetListener

java.lang.Object
  extended by org.drools.decisiontable.parser.DefaultRuleSheetListener
      extended by org.drools.decisiontable.parser.RuleMatrixSheetListener
All Implemented Interfaces:
RuleSheetListener, SheetListener

public class RuleMatrixSheetListener
extends DefaultRuleSheetListener

Author:
Steven Williams Michael Neale Define a ruleset spreadsheet which contains a matrix style decision tables. This is an example of a custom RuleSheetListener. It differs from the standard decision table in the following ways: - AgendaGroup property so that all rules fall within the same agenda-group - Precondition property which specifies a condition that is always included if a rule is being generated - Action property. Each cell within the decision table causes this action to be triggered - HorizontalCondition property. Each column header in the matrix applies this condition - VerticalCondition property. Each row header in the matrix applies this condition A table is identifed by a cell beginning with the text "RuleTable". The cells after RuleTable in the same row identify the Horizontal Conditions. The cells after RuleTable in the same column identify the Vertical Conditions. The cells with the matrix identify the actions. Wherever an action cell exists for a Vertical/Horizontal condition intersection the following rule is created: rule "rule_row_col" agenda-group AgendaGroup when Precondition VerticalCondition HorizontalCondition then Action end

Field Summary
static String ACTION_TAG
           
static String AGENDAGROUP_TAG
           
static String HORIZONTALCONDITION_TAG
           
static String PRECONDITION_TAG
           
static String VERTICALCONDITION_TAG
           
 
Fields inherited from class org.drools.decisiontable.parser.DefaultRuleSheetListener
FUNCTIONS_TAG, IMPORT_TAG, RULE_TABLE_TAG, RULESET_TAG, SEQUENTIAL_FLAG, VARIABLES_TAG
 
Fields inherited from interface org.drools.decisiontable.parser.SheetListener
NON_MERGED
 
Constructor Summary
RuleMatrixSheetListener()
           
 
Method Summary
 void finishSheet()
          Come to the end of the sheet.
 void newCell(int row, int column, String value, int mergedColStart)
          Enter a new cell.
 void newRow(int rowNumber, int columns)
          Enter a new row.
protected  void postInitRuleTable(int row, int column, String value)
          Called after rule table initialisation.
protected  void preInitRuleTable(int row, int column, String value)
          This gets called each time a "new" rule table is found.
 
Methods inherited from class org.drools.decisiontable.parser.DefaultRuleSheetListener
addRule, getCurrentRule, getProperties, getRuleSet, startSheet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

AGENDAGROUP_TAG

public static final String AGENDAGROUP_TAG
See Also:
Constant Field Values

PRECONDITION_TAG

public static final String PRECONDITION_TAG
See Also:
Constant Field Values

ACTION_TAG

public static final String ACTION_TAG
See Also:
Constant Field Values

HORIZONTALCONDITION_TAG

public static final String HORIZONTALCONDITION_TAG
See Also:
Constant Field Values

VERTICALCONDITION_TAG

public static final String VERTICALCONDITION_TAG
See Also:
Constant Field Values
Constructor Detail

RuleMatrixSheetListener

public RuleMatrixSheetListener()
Method Detail

newCell

public void newCell(int row,
                    int column,
                    String value,
                    int mergedColStart)
Description copied from interface: SheetListener
Enter a new cell. Do NOT call this event for trailling cells at the end of the line. It will just confuse the parser. If all the trailing cells are empty, just stop raising events.

Specified by:
newCell in interface SheetListener
Overrides:
newCell in class DefaultRuleSheetListener
Parameters:
row - the row number
column - the column alpha character label
value - the string value of the cell

newRow

public void newRow(int rowNumber,
                   int columns)
Description copied from interface: SheetListener
Enter a new row.

Specified by:
newRow in interface SheetListener
Overrides:
newRow in class DefaultRuleSheetListener

finishSheet

public void finishSheet()
Description copied from interface: SheetListener
Come to the end of the sheet.

Specified by:
finishSheet in interface SheetListener
Overrides:
finishSheet in class DefaultRuleSheetListener

postInitRuleTable

protected void postInitRuleTable(int row,
                                 int column,
                                 String value)
Description copied from class: DefaultRuleSheetListener
Called after rule table initialisation. Subclasses may override this method to do additional processing.

Overrides:
postInitRuleTable in class DefaultRuleSheetListener

preInitRuleTable

protected void preInitRuleTable(int row,
                                int column,
                                String value)
This gets called each time a "new" rule table is found.

Overrides:
preInitRuleTable in class DefaultRuleSheetListener


Copyright © 2001-2007 JBoss Inc.. All Rights Reserved.