@Override protected List<BRLConditionVariableColumn> convertInterpolationVariables( Map<InterpolationVariable, Integer> ivs) { // If there are no variables add a boolean column to specify whether the fragment should apply if (ivs.size() == 0) { BRLConditionVariableColumn variable = new BRLConditionVariableColumn("", DataType.TYPE_BOOLEAN); variable.setHeader(editingCol.getHeader()); variable.setHideColumn(editingCol.isHideColumn()); List<BRLConditionVariableColumn> variables = new ArrayList<BRLConditionVariableColumn>(); variables.add(variable); return variables; } // Convert to columns for use in the Decision Table BRLConditionVariableColumn[] variables = new BRLConditionVariableColumn[ivs.size()]; for (Map.Entry<InterpolationVariable, Integer> me : ivs.entrySet()) { InterpolationVariable iv = me.getKey(); int index = me.getValue(); BRLConditionVariableColumn variable = new BRLConditionVariableColumn( iv.getVarName(), iv.getDataType(), iv.getFactType(), iv.getFactField()); variable.setHeader(editingCol.getHeader()); variable.setHideColumn(editingCol.isHideColumn()); variables[index] = variable; } // Convert the array into a mutable list (Arrays.toList provides an immutable list) List<BRLConditionVariableColumn> variableList = new ArrayList<BRLConditionVariableColumn>(); for (BRLConditionVariableColumn variable : variables) { variableList.add(variable); } return variableList; }
private BRLConditionVariableColumn cloneVariable(BRLConditionVariableColumn variable) { BRLConditionVariableColumn clone = new BRLConditionVariableColumn( variable.getVarName(), variable.getFieldType(), variable.getFactType(), variable.getFactField()); clone.setHeader(variable.getHeader()); clone.setHideColumn(variable.isHideColumn()); clone.setWidth(variable.getWidth()); return clone; }