public BRLConditionColumn getBRLColumn(BRLConditionVariableColumn col) { for (CompositeColumn<? extends BaseColumn> cc : conditionPatterns) { if (cc instanceof BRLConditionColumn) { final BRLConditionColumn brl = (BRLConditionColumn) cc; if (brl.getChildColumns().contains(col)) { return brl; } } } throw new IllegalStateException("col is not a child of any of the defined BRLColumns."); }
private void doDelete(final BRLConditionColumn column) throws VetoException { if (column.getChildColumns().size() > 0) { final int iFirstColumnIndex = model.getExpandedColumns().indexOf(column.getChildColumns().get(0)); for (int iColumnIndex = 0; iColumnIndex < column.getChildColumns().size(); iColumnIndex++) { synchroniseDeleteColumn(iFirstColumnIndex); } } model.getConditions().remove(column); }
private void doDelete(final BRLConditionColumn column) throws VetoException { if (column.getChildColumns().size() > 0) { final int iFirstColumnIndex = model.getExpandedColumns().indexOf(column.getChildColumns().get(0)); for (int iColumnIndex = 0; iColumnIndex < column.getChildColumns().size(); iColumnIndex++) { synchroniseDeleteColumn(iFirstColumnIndex); } } model.getConditions().remove(column); }
private boolean isBRLFragment(final List<? extends MetaData> metaData) { if (!metaData.stream().allMatch((c) -> (c instanceof MoveColumnToMetaData))) { return false; } if (!metaData.stream().allMatch((c) -> ((MoveColumnToMetaData) c).getColumn() instanceof BRLConditionVariableColumn)) { return false; } final MoveColumnToMetaData md = (MoveColumnToMetaData) metaData.get(0); final BRLConditionVariableColumn srcModelColumn = (BRLConditionVariableColumn) md.getColumn(); final BRLConditionColumn srcModelPattern = model.getBRLColumn(srcModelColumn); return srcModelPattern.getChildColumns().size() == metaData.size(); }
public BRLColumn<?, ?> getBRLColumn(final BRLVariableColumn col) { for (CompositeColumn<? extends BaseColumn> cc : conditionPatterns) { if (cc instanceof BRLConditionColumn) { final BRLConditionColumn brl = (BRLConditionColumn) cc; if (brl.getChildColumns().contains(col)) { return brl; } } } for (ActionCol52 ac : actionCols) { if (ac instanceof BRLActionColumn) { final BRLActionColumn brl = (BRLActionColumn) ac; if (brl.getChildColumns().contains(col)) { return brl; } } } throw new IllegalStateException("col is not a child of any of the defined BRLColumns."); }
private boolean isBRLFragment(final List<? extends MetaData> metaData) { if (!metaData.stream().allMatch((c) -> (c instanceof MoveColumnToMetaData))) { return false; } if (!metaData.stream().allMatch((c) -> ((MoveColumnToMetaData) c).getColumn() instanceof BRLConditionVariableColumn)) { return false; } final MoveColumnToMetaData md = (MoveColumnToMetaData) metaData.get(0); final BRLConditionVariableColumn srcModelColumn = (BRLConditionVariableColumn) md.getColumn(); final BRLConditionColumn srcModelPattern = model.getBRLColumn(srcModelColumn); return srcModelPattern.getChildColumns().size() == metaData.size(); }
private void setCompositeColumnHeader(final BRLConditionColumn column) { final List<BRLConditionVariableColumn> columnVariableColumns = column.getChildColumns(); final StringBuilder sb = new StringBuilder(); final List<String> variableColumnHeaders = new ArrayList<>(); sb.append("Converted from ["); for (int i = 0; i < columnVariableColumns.size(); i++) { final BRLConditionVariableColumn variableColumn = columnVariableColumns.get(i); final String header = variableColumn.getHeader(); variableColumnHeaders.add(header); sb.append("'").append(header).append("'"); sb.append(i < columnVariableColumns.size() - 1 ? ", " : ""); } sb.append("]"); column.setHeader(sb.toString()); for (int i = 0; i < columnVariableColumns.size(); i++) { final BRLConditionVariableColumn variableColumn = columnVariableColumns.get(i); variableColumn.setHeader(variableColumnHeaders.get(i)); } }
private List<DTCellValue52> makeRowData(final ColumnUtilities columnUtilities, final BRLConditionColumn brlColumn) { final List<DTCellValue52> row = new ArrayList<>(); row.add(new DTCellValue52(1)); row.add(new DTCellValue52("desc")); for (BRLConditionVariableColumn brlVariableColumn : brlColumn.getChildColumns()) { final DataType.DataTypes dataType = columnUtilities.getDataType(brlVariableColumn); row.add(makeCell(dataType)); } return row; } }
private List<DTCellValue52> makeRowData(final ColumnUtilities columnUtilities, final BRLConditionColumn brlColumn) { final List<DTCellValue52> row = new ArrayList<>(); row.add(new DTCellValue52(1)); row.add(new DTCellValue52("desc")); for (BRLConditionVariableColumn brlVariableColumn : brlColumn.getChildColumns()) { final DataType.DataTypes dataType = columnUtilities.getDataType(brlVariableColumn); row.add(makeCell(dataType)); } return row; } }
private void setZeroParameterConditionColumnHeader(final BRLConditionColumn column, final List<BRLVariableColumn> allVariableColumns) { final BRLConditionVariableColumn source = findZeroParameterSourceConditionColumn(allVariableColumns); final BRLConditionVariableColumn target = new BRLConditionVariableColumn("", DataType.TYPE_BOOLEAN); column.getChildColumns().add(target); setZeroParameterColumnHeader(column, source, target); }
@Override public void append(final ColumnMetaData metaData) throws VetoException { //Check operation is supported if (!handlesAppend(metaData)) { return; } final BRLConditionColumn column = (BRLConditionColumn) metaData.getColumn(); model.getConditions().add(column); for (BRLConditionVariableColumn childModelColumn : column.getChildColumns()) { synchroniseAppendColumn(childModelColumn); } }
@Override public void append(final ColumnMetaData metaData) throws VetoException { //Check operation is supported if (!handlesAppend(metaData)) { return; } final BRLConditionColumn column = (BRLConditionColumn) metaData.getColumn(); model.getConditions().add(column); for (BRLConditionVariableColumn childModelColumn : column.getChildColumns()) { synchroniseAppendColumn(childModelColumn); } }
@Override public List<BaseColumnFieldDiff> diff( BaseColumn otherColumn ) { if ( otherColumn == null ) { return null; } List<BaseColumnFieldDiff> result = super.diff( otherColumn ); BRLConditionColumn other = (BRLConditionColumn) otherColumn; // Field: definition. if ( !isEqualOrNull( this.getDefinition(), other.getDefinition() ) ) { result.add( new BaseColumnFieldDiffImpl( FIELD_DEFINITION, this.getDefinition(), other.getDefinition() ) ); } // Field: childColumns. if ( !isEqualOrNull( this.getChildColumns(), other.getChildColumns() ) ) { result.addAll( getColumnDiffs( other.getChildColumns() ) ); } return result; }
@Test public void testAppend1() throws VetoException { //Single Column, single variable final BRLConditionColumn column = new BRLConditionColumn(); final BRLConditionVariableColumn columnV0 = new BRLConditionVariableColumn("$age", DataType.TYPE_NUMERIC_INTEGER, "Applicant", "age"); column.getChildColumns().add(columnV0); column.setHeader("col1"); columnV0.setHeader("col1v0"); modelSynchronizer.appendColumn(column); assertEquals(3, model.getExpandedColumns().size()); assertEquals(1, model.getConditions().size()); assertEquals(3, uiModel.getColumns().size()); assertTrue(uiModel.getColumns().get(2) instanceof IntegerUiColumn); assertEquals(2, uiModel.getColumns().get(2).getHeaderMetaData().size()); assertEquals("$age", uiModel.getColumns().get(2).getHeaderMetaData().get(1).getTitle()); }
@Test public void testCloneWhenColumnIsABRLConditionColumn() throws Exception { doReturn(GuidedDecisionTable52.TableFormat.EXTENDED_ENTRY).when(model).getTableFormat(); final List<IPattern> definition = new ArrayList<>(); final Boolean hideColumn = false; final List<BRLConditionVariableColumn> childColumns = new ArrayList<BRLConditionVariableColumn>() {{ add(mock(BRLConditionVariableColumn.class)); }}; final BRLConditionColumn column = makeBRLConditionColumn("header", hideColumn, definition, childColumns); final BRLConditionColumn clone = plugin.clone(column); assertEquals(column.getHeader(), clone.getHeader()); assertEquals(column.isHideColumn(), clone.isHideColumn()); assertEquals(column.getDefinition(), clone.getDefinition()); assertNotSame(column, clone); assertFalse(clone.getChildColumns().isEmpty()); }
BRLConditionColumn clone(final DTColumnConfig52 column) { final BRLConditionColumn brlConditionColumn = (BRLConditionColumn) column; final BRLConditionColumn clone; if (tableFormat() == LIMITED_ENTRY) { clone = new LimitedEntryBRLConditionColumn(); } else { clone = new BRLConditionColumn(); clone.setChildColumns(cloneVariables(brlConditionColumn.getChildColumns())); } clone.setHeader(column.getHeader()); clone.setHideColumn(column.isHideColumn()); clone.setDefinition(cloneDefinition(brlConditionColumn.getDefinition())); clone.setOperator(brlConditionColumn.getOperator()); return clone; }
BRLConditionColumn clone(final DTColumnConfig52 column) { final BRLConditionColumn brlConditionColumn = (BRLConditionColumn) column; final BRLConditionColumn clone; if (tableFormat() == LIMITED_ENTRY) { clone = new LimitedEntryBRLConditionColumn(); } else { clone = new BRLConditionColumn(); clone.setChildColumns(cloneVariables(brlConditionColumn.getChildColumns())); } clone.setHeader(column.getHeader()); clone.setHideColumn(column.isHideColumn()); clone.setDefinition(cloneDefinition(brlConditionColumn.getDefinition())); clone.setOperator(brlConditionColumn.getOperator()); return clone; }
public static GuidedDecisionTable52 makeTableWithBRLFragmentConditionColWithPredicate(final String packageName, final Collection<Import> imports, final String tableName) { final GuidedDecisionTable52 dt = new GuidedDecisionTable52(); dt.setPackageName(packageName); dt.getImports().getImports().addAll(imports); dt.setTableName(tableName); final BRLConditionColumn brl = new BRLConditionColumn(); final FactPattern fp1 = new FactPattern(); fp1.setFactType("Applicant"); final SingleFieldConstraint sfc1 = new SingleFieldConstraint(); sfc1.setConstraintValueType(BaseSingleFieldConstraint.TYPE_PREDICATE); sfc1.setValue("age = 45"); fp1.addConstraint(sfc1); brl.getDefinition().add(fp1); brl.getChildColumns().add(new BRLConditionVariableColumn("f1", DataType.TYPE_BOOLEAN)); dt.getConditions().add(brl); dt.setData(DataUtilities.makeDataLists(new Object[][]{ new Object[]{"1", "desc", true} })); return dt; }
public static GuidedDecisionTable52 makeTableWithBRLFragmentConditionColWithPredicate(final String packageName, final Collection<Import> imports, final String tableName) { final GuidedDecisionTable52 dt = new GuidedDecisionTable52(); dt.setPackageName(packageName); dt.getImports().getImports().addAll(imports); dt.setTableName(tableName); final BRLConditionColumn brl = new BRLConditionColumn(); final FactPattern fp1 = new FactPattern(); fp1.setFactType("Applicant"); final SingleFieldConstraint sfc1 = new SingleFieldConstraint(); sfc1.setConstraintValueType(BaseSingleFieldConstraint.TYPE_PREDICATE); sfc1.setValue("age = 45"); fp1.addConstraint(sfc1); brl.getDefinition().add(fp1); brl.getChildColumns().add(new BRLConditionVariableColumn("f1", DataType.TYPE_BOOLEAN)); dt.getConditions().add(brl); dt.setData(DataUtilities.makeDataLists(new Object[][]{ new Object[]{"1", "desc", true} })); return dt; }
@Test public void testCloneWhenColumnIsALimitedEntryBRLConditionColumn() throws Exception { final List<IPattern> definition = new ArrayList<>(); final boolean hideColumn = false; final LimitedEntryBRLConditionColumn column = makeLimitedEntryBRLConditionColumn("header", hideColumn, definition); final BRLConditionColumn clone = plugin.clone(column); assertEquals(column.getHeader(), clone.getHeader()); assertEquals(column.isHideColumn(), clone.isHideColumn()); assertEquals(column.getDefinition(), clone.getDefinition()); assertNotSame(column, clone); assertTrue(clone.getChildColumns().isEmpty()); }