Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2011 JBoss Inc
   * 
   * Licensed under the Apache License, Version 2.0 (the "License"); you may not
   * use this file except in compliance with the License. You may obtain a copy of
   * the License at
   * 
   * http://www.apache.org/licenses/LICENSE-2.0
   * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  * License for the specific language governing permissions and limitations under
  * the License.
  */
 package org.drools.guvnor.models.guided.dtable.shared.model;
 
 import java.util.List;
 
This is a decision table model for a guided editor. It is not template or XLS based. (template could be done relatively easily by taking a template, as a String, and then String[][] data and driving the SheetListener interface in the decision tables module). This works by taking the column definitions, and combining them with the table of data to produce rule models.
 
 public class GuidedDecisionTable52 implements HasImports,
                                               HasPackageName {
 
     private static final long serialVersionUID = 510l;

    
Number of internal elements before ( used for offsets in serialization )
 
     public static final int INTERNAL_ELEMENTS = 2;

    
Various attribute names
 
     public static final String SALIENCE_ATTR = "salience";
     public static final String ENABLED_ATTR = "enabled";
     public static final String DATE_EFFECTIVE_ATTR = "date-effective";
     public static final String DATE_EXPIRES_ATTR = "date-expires";
     public static final String NO_LOOP_ATTR = "no-loop";
     public static final String AGENDA_GROUP_ATTR = "agenda-group";
     public static final String ACTIVATION_GROUP_ATTR = "activation-group";
     public static final String DURATION_ATTR = "duration";
     public static final String TIMER_ATTR = "timer";
     public static final String CALENDARS_ATTR = "calendars";
     public static final String AUTO_FOCUS_ATTR = "auto-focus";
     public static final String LOCK_ON_ACTIVE_ATTR = "lock-on-active";
     public static final String RULEFLOW_GROUP_ATTR = "ruleflow-group";
     public static final String DIALECT_ATTR = "dialect";
     public static final String NEGATE_RULE_ATTR = "negate";
 
     private String tableName;
 
     private String parentName;
 
     private RowNumberCol52 rowNumberCol = new RowNumberCol52();
 
     private DescriptionCol52 descriptionCol = new DescriptionCol52();
 
     private List<MetadataCol52metadataCols = new ArrayList<MetadataCol52>();
 
     private List<AttributeCol52attributeCols = new ArrayList<AttributeCol52>();
 
     private List<CompositeColumn<? extends BaseColumn>> conditionPatterns = new ArrayList<CompositeColumn<? extends BaseColumn>>();
 
     private List<ActionCol52actionCols = new ArrayList<ActionCol52>();
 
     private transient AnalysisCol52 analysisCol;
 
     private AuditLog auditLog;
 
     private Imports imports = new Imports();
 
     private String packageName;
 
     public enum TableFormat {
         EXTENDED_ENTRY,
         LIMITED_ENTRY
     }
 
     private TableFormat tableFormat = .;

    
First column is always row number. Second column is description. Subsequent ones follow the above column definitions: attributeCols, then conditionCols, then actionCols, in that order, left to right.
    private List<List<DTCellValue52>> data = new ArrayList<List<DTCellValue52>>();
    private transient List<AnalysisanalysisData;
    public GuidedDecisionTable52() {
         = new AnalysisCol52();
        .setHideColumntrue );
    }
    public List<ActionCol52getActionCols() {
        return ;
    }
    public List<AttributeCol52getAttributeCols() {
        return ;
    }

    
Return an immutable list of Pattern columns

Returns:
    public List<Pattern52getPatterns() {
        final List<Pattern52patterns = new ArrayList<Pattern52>();
        for ( CompositeColumn<?> cc :  ) {
            if ( cc instanceof Pattern52 ) {
                patterns.add( (Pattern52cc );
            }
        }
        return Collections.unmodifiableListpatterns );
    }
    public List<CompositeColumn<? extends BaseColumn>> getConditions() {
        return this.;
    }
    public Pattern52 getConditionPatternfinal String boundName ) {
        for ( CompositeColumn<?> cc :  ) {
            if ( cc instanceof Pattern52 ) {
                final Pattern52 p = (Pattern52cc;
                if ( p.getBoundName().equalsboundName ) ) {
                    return p;
                }
            }
        }
        return null;
    }
    public Pattern52 getPatternfinal ConditionCol52 col ) {
        for ( CompositeColumn<?> cc :  ) {
            if ( cc instanceof Pattern52 ) {
                final Pattern52 p = (Pattern52cc;
                if ( p.getChildColumns().containscol ) ) {
                    return p;
                }
            }
        }
        return new Pattern52();
    }
    public BRLColumn<?, ?> getBRLColumnfinal BRLVariableColumn col ) {
        for ( CompositeColumn<? extends BaseColumncc :  ) {
            if ( cc instanceof BRLConditionColumn ) {
                final BRLConditionColumn brl = (BRLConditionColumncc;
                if ( brl.getChildColumns().containscol ) ) {
                    return brl;
                }
            }
        }
        for ( ActionCol52 ac :  ) {
            if ( ac instanceof BRLActionColumn ) {
                final BRLActionColumn brl = (BRLActionColumnac;
                if ( brl.getChildColumns().containscol ) ) {
                    return brl;
                }
            }
        }
        throw new IllegalStateException"col is not a child of any of the defined BRLColumns." );
    }
        for ( CompositeColumn<? extends BaseColumncc :  ) {
            if ( cc instanceof BRLConditionColumn ) {
                final BRLConditionColumn brl = (BRLConditionColumncc;
                if ( brl.getChildColumns().containscol ) ) {
                    return brl;
                }
            }
        }
        throw new IllegalStateException"col is not a child of any of the defined BRLColumns." );
    }
        for ( ActionCol52 ac :  ) {
            if ( ac instanceof BRLActionColumn ) {
                final BRLActionColumn brl = (BRLActionColumnac;
                if ( brl.getChildColumns().containscol ) ) {
                    return brl;
                }
            }
        }
        throw new IllegalStateException"col is not a child of any of the defined BRLColumns." );
    }
    public long getConditionsCount() {
        long size = 0;
        for ( CompositeColumn<?> cc : this. ) {
            size = size + cc.getChildColumns().size();
        }
        return size;
    }
    public List<List<DTCellValue52>> getData() {
        return ;
    }
    public List<AnalysisgetAnalysisData() {
        return ;
    }

    
This method expands Composite columns into individual columns where knowledge of individual columns is necessary; for example separate columns in the user-interface or where individual columns need to be analysed.

Returns:
A List of individual columns
    public List<BaseColumngetExpandedColumns() {
        final List<BaseColumncolumns = new ArrayList<BaseColumn>();
        columns.add );
        columns.add );
        columns.addAll );
        columns.addAll );
        for ( CompositeColumn<?> cc : this. ) {
            boolean explode = !( cc instanceof LimitedEntryCol );
            if ( explode ) {
                for ( BaseColumn bc : cc.getChildColumns() ) {
                    columns.addbc );
                }
            } else {
                columns.addcc );
            }
        }
        for ( ActionCol52 ac : this. ) {
            if ( ac instanceof BRLActionColumn ) {
                if ( ac instanceof LimitedEntryCol ) {
                    columns.addac );
                } else {
                    final BRLActionColumn bac = (BRLActionColumnac;
                    for ( BRLActionVariableColumn variable : bac.getChildColumns() ) {
                        columns.addvariable );
                    }
                }
            } else {
                columns.addac );
            }
        }
        columns.add );
        return columns;
    }
        // De-serialising old models sets this field to null
        if ( this. == null ) {
            this. = new DescriptionCol52();
        }
        return this.;
    }
    public List<MetadataCol52getMetadataCols() {
        if ( null ==  ) {
             = new ArrayList<MetadataCol52>();
        }
        return ;
    }
    public String getParentName() {
        return ;
    }
    public RowNumberCol52 getRowNumberCol() {
        // De-serialising old models sets this field to null
        if ( this. == null ) {
            this. = new RowNumberCol52();
        }
        return this.;
    }
    public void initAnalysisColumn() {
         = new ArrayList<Analysis>( .size() );
        for ( int i = 0; i < .size(); i++ ) {
            .addnew Analysis() );
        }
    }
    public AnalysisCol52 getAnalysisCol() {
        return ;
    }
    public String getTableName() {
        return ;
    }
    public void setDatafinal List<List<DTCellValue52>> data ) {
        this. = data;
    }
    public void setRowNumberColfinal RowNumberCol52 rowNumberCol ) {
        this. = rowNumberCol;
    }
    public void setDescriptionColfinal DescriptionCol52 descriptionCol ) {
        this. = descriptionCol;
    }
    public void setMetadataColsfinal List<MetadataCol52metadataCols ) {
        this. = metadataCols;
    }
    public void setAttributeColsfinal List<AttributeCol52attributeCols ) {
        this. = attributeCols;
    }
    public void setConditionPatternsfinal List<CompositeColumn<? extends BaseColumn>> conditionPatterns ) {
        this. = conditionPatterns;
    }
    public void setActionColsfinal List<ActionCol52actionCols ) {
        this. = actionCols;
    }
    public void setParentNamefinal String parentName ) {
        this. = parentName;
    }
    public void setTableNamefinal String tableName ) {
        this. = tableName;
    }
    public TableFormat getTableFormat() {
        //GUVNOR-1820: Not possible to give default value to action columns
        return  == null ? . : ;
    }
    public void setTableFormatfinal TableFormat tableFormat ) {
        this. = tableFormat;
    }

    
Retrieve, or lazily instantiate a new, AuditLog.

Returns:
    public AuditLog getAuditLog() {
        if ( this. == null ) {
            this. = new DefaultAuditLognew DecisionTableAuditLogFilter() );
        }
        return this.;
    }
    public Imports getImports() {
        return ;
    }
    @Override
    public void setImportsfinal Imports imports ) {
        this. = imports;
    }
    public String getPackageName() {
        return ;
    }
    public void setPackageNameString packageName ) {
        this. = packageName;
    }
New to GrepCode? Check out our FAQ X