private ActionWorkItemInsertFactCol52 clone(final ActionWorkItemInsertFactCol52 column) { final ActionWorkItemInsertFactCol52 clone = new ActionWorkItemInsertFactCol52(); clone.setFactField(column.getFactField()); clone.setBoundName(column.getBoundName()); clone.setValueList(column.getValueList()); clone.setHeader(column.getHeader()); clone.setInsertLogical(column.isInsertLogical()); clone.setDefaultValue(column.getDefaultValue()); clone.setFactType(column.getFactType()); clone.setHideColumn(column.isHideColumn()); clone.setType(column.getType()); clone.setParameterClassName(column.getParameterClassName()); clone.setWorkItemName(column.getWorkItemName()); clone.setWorkItemResultParameterName(column.getWorkItemResultParameterName()); return clone; } }
@Override public List<BaseColumnFieldDiff> diff(final BaseColumn otherColumn) { return getActionCol52().diff(otherColumn); }
private void update(final ActionWorkItemInsertFactCol52 originalColumn, final ActionWorkItemInsertFactCol52 editedColumn) { originalColumn.setBoundName(editedColumn.getBoundName()); originalColumn.setType(editedColumn.getType()); originalColumn.setFactType(editedColumn.getFactType()); originalColumn.setFactField(editedColumn.getFactField()); originalColumn.setHeader(editedColumn.getHeader()); originalColumn.setHideColumn(editedColumn.isHideColumn()); originalColumn.setWorkItemName(editedColumn.getWorkItemName()); originalColumn.setWorkItemResultParameterName(editedColumn.getWorkItemResultParameterName()); originalColumn.setParameterClassName(editedColumn.getParameterClassName()); }
public ActionWorkItemInsertFactColumnDetails( final ActionWorkItemInsertFactCol52 column ) { super( column ); this.factType = column.getFactType(); this.factField = column.getFactField(); this.workItemName = column.getWorkItemName(); this.workItemResultParameterName = column.getWorkItemResultParameterName(); }
@Before public void setup() { column1 = new ActionWorkItemInsertFactCol52(); column1.setWorkItemName("WID"); column1.setWorkItemResultParameterName("param"); column1.setParameterClassName("Type"); column1.setFactType("FactType"); column1.setBoundName("$var"); column1.setFactField("field"); column1.setType("Type"); column1.setValueList("a,b,c"); column1.setInsertLogical(false); column1.setHeader("header"); column1.setHideColumn(false); column1.setDefaultValue(new DTCellValue52("default")); column2 = new ActionWorkItemInsertFactCol52(); column2.setWorkItemName("WID"); column2.setWorkItemResultParameterName("param"); column2.setParameterClassName("Type"); column2.setFactType("FactType"); column2.setBoundName("$var"); column2.setFactField("field"); column2.setType("Type"); column2.setValueList("a,b,c"); column2.setInsertLogical(false); column2.setHeader("header"); column2.setHideColumn(false); column2.setDefaultValue(new DTCellValue52("default")); }
@Test @SuppressWarnings("unchecked") public void testMoveColumnTo_MoveInsertFactColLeft_WithPrecedingWorkItemInsertFactCol() throws VetoException { final ActionWorkItemInsertFactCol52 column1 = new ActionWorkItemInsertFactCol52(); column1.setWorkItemName(WORK_ITEM_NAME); column1.setBoundName("$a"); column1.setFactType("Applicant"); column1.setFactField("age"); column1.setHeader("wid1");
@Test public void getSafeHtml_ActionWorkItemInsert() { ActionWorkItemInsertFactCol52 originalColumn = new ActionWorkItemInsertFactCol52(); originalColumn.setParameterClassName("ParamClass1"); originalColumn.setWorkItemName("WI1"); originalColumn.setWorkItemResultParameterName("param1"); originalColumn.setBoundName("b1"); originalColumn.setFactField("field1"); originalColumn.setInsertLogical(false); originalColumn.setHeader("action1"); originalColumn.setHideColumn(false); ActionWorkItemInsertFactCol52 newColumn = new ActionWorkItemInsertFactCol52(); newColumn.setParameterClassName("ParamClass2"); newColumn.setWorkItemName("WI2"); newColumn.setWorkItemResultParameterName("param2"); newColumn.setBoundName("b2"); newColumn.setFactField("field2"); newColumn.setInsertLogical(true); newColumn.setHeader("action2"); newColumn.setHideColumn(true); List<BaseColumnFieldDiff> diffs = originalColumn.diff(newColumn); SafeHtml result = helper.getSafeHtml(new UpdateColumnAuditLogEntry("mock user", originalColumn, newColumn, diffs)); assertEquals(getActionHeaderRepre(newColumn.getHeader()) + getDiffRepre(diffs), result.asString()); }
ActionWorkItemInsertFactCol52 asf1 = new ActionWorkItemInsertFactCol52(); asf1.setBoundName("$r"); asf1.setFactField("ResultBooleanField"); asf1.setType(DataType.TYPE_BOOLEAN); asf1.setWorkItemName("WorkItem"); asf1.setWorkItemResultParameterName("BooleanResult"); asf1.setParameterClassName(Boolean.class.getName()); cols.add(asf1); ActionWorkItemInsertFactCol52 asf2 = new ActionWorkItemInsertFactCol52(); asf2.setBoundName("$r"); asf2.setFactField("ResultFloatField"); asf2.setType(DataType.TYPE_NUMERIC_FLOAT); asf2.setWorkItemName("WorkItem"); asf2.setWorkItemResultParameterName("FloatResult"); asf2.setParameterClassName(Float.class.getName()); cols.add(asf2);
private void doAction(List<LabelledAction> actions, ActionWorkItemInsertFactCol52 ac, String cell) { if (Boolean.TRUE.equals(Boolean.parseBoolean(cell))) { LabelledAction a = findByLabelledAction(actions, ac.getBoundName()); if (a == null) { a = new LabelledAction(); a.boundName = ac.getBoundName(); if (!ac.isInsertLogical()) { ActionInsertFact ins = new ActionInsertFact(ac.getFactType()); ins.setBoundName(ac.getBoundName()); a.action = ins; } else { ActionInsertLogicalFact ins = new ActionInsertLogicalFact(ac.getFactType()); ins.setBoundName(ac.getBoundName()); a.action = ins; } actions.add(a); } ActionInsertFact ins = (ActionInsertFact) a.action; ActionWorkItemFieldValue val = new ActionWorkItemFieldValue(ac.getFactField(), ac.getType(), ac.getWorkItemName(), ac.getWorkItemResultParameterName(), ac.getParameterClassName()); ins.addFieldValue(val); } }
@Test public void testUpdate() throws VetoException { final ActionWorkItemInsertFactCol52 column = spy(new ActionWorkItemInsertFactCol52()); column.setWorkItemName(WORK_ITEM_NAME); column.setHeader("col1"); modelSynchronizer.appendColumn(column); final ActionWorkItemInsertFactCol52 edited = new ActionWorkItemInsertFactCol52(); edited.setWorkItemName(WORK_ITEM_NAME); edited.setWidth(column.getWidth()); edited.setHideColumn(true); edited.setHeader("updated"); List<BaseColumnFieldDiff> diffs = modelSynchronizer.updateColumn(column, edited); assertEquals(2, diffs.size()); verify(column).diff(edited); assertEquals(2, model.getActionCols().size()); assertEquals(4, uiModel.getColumns().size()); assertTrue(uiModel.getColumns().get(3) instanceof BooleanUiColumn); assertEquals("updated", uiModel.getColumns().get(3).getHeaderMetaData().get(1).getTitle()); assertEquals(false, uiModel.getColumns().get(3).isVisible()); }
@Test public void testAppend() throws VetoException { final ActionWorkItemInsertFactCol52 column = new ActionWorkItemInsertFactCol52(); column.setWorkItemName(WORK_ITEM_NAME); column.setHeader("col1"); modelSynchronizer.appendColumn(column); assertEquals(2, model.getActionCols().size()); assertEquals(4, uiModel.getColumns().size()); assertTrue(uiModel.getColumns().get(3) instanceof BooleanUiColumn); assertEquals(true, ((BaseMultipleDOMElementUiColumn) uiModel.getColumns().get(3)).isEditable()); }
@Override public List<BaseColumnFieldDiff> diff( BaseColumn otherColumn ) { if ( otherColumn == null ) { return null; } List<BaseColumnFieldDiff> result = super.diff( otherColumn ); ActionWorkItemInsertFactCol52 other = (ActionWorkItemInsertFactCol52) otherColumn; // Field: workItemName. if ( !isEqualOrNull( this.getWorkItemName(), other.getWorkItemName() ) ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORK_ITEM_NAME, this.getWorkItemName(), other.getWorkItemName() ) ); } // Field: workItemResultParameterName. if ( !isEqualOrNull( this.getWorkItemResultParameterName(), other.getWorkItemResultParameterName() ) ) { result.add( new BaseColumnFieldDiffImpl( FIELD_WORK_ITEM_RESULT_PARAM_NAME, this.getWorkItemResultParameterName(), other.getWorkItemResultParameterName() ) ); } // Field: parameterClassName. if ( !isEqualOrNull( this.getParameterClassName(), other.getParameterClassName() ) ) { result.add( new BaseColumnFieldDiffImpl( FIELD_PARAMETER_CLASSNAME, this.getParameterClassName(), other.getParameterClassName() ) ); } return result; }
@Override protected BaseColumn getColumn() { final ActionWorkItemInsertFactCol52 column = new ActionWorkItemInsertFactCol52(); column.setWorkItemName(WID_NAME); column.setHeader(HEADER); column.setWidth(WIDTH); return column; }
@Test public void testAppendMultipleColumns() throws VetoException { final ActionWorkItemInsertFactCol52 column1 = new ActionWorkItemInsertFactCol52(); column1.setWorkItemName(WORK_ITEM_NAME); column1.setHeader("col1"); final ActionWorkItemInsertFactCol52 column2 = new ActionWorkItemInsertFactCol52(); column2.setWorkItemName(WORK_ITEM_NAME); column2.setHeader("col2"); modelSynchronizer.appendColumn(column1); modelSynchronizer.appendColumn(column2); assertEquals(3, model.getActionCols().size()); assertEquals(5, uiModel.getColumns().size()); assertTrue(uiModel.getColumns().get(3) instanceof BooleanUiColumn); assertTrue(uiModel.getColumns().get(4) instanceof BooleanUiColumn); assertEquals(true, ((BaseMultipleDOMElementUiColumn) uiModel.getColumns().get(3)).isEditable()); assertEquals(true, ((BaseMultipleDOMElementUiColumn) uiModel.getColumns().get(4)).isEditable()); assertEquals(column1.getHeader(), uiModel.getColumns().get(3).getHeaderMetaData().get(1).getTitle()); assertEquals(column2.getHeader(), uiModel.getColumns().get(4).getHeaderMetaData().get(1).getTitle()); }
@Override public List<BaseColumnFieldDiff> update(final ColumnMetaData originalMetaData, final ColumnMetaData editedMetaData) throws VetoException { //Check operation is supported if (!(handlesUpdate(originalMetaData) && handlesUpdate(editedMetaData))) { return Collections.emptyList(); } //Get differences between original and edited column final ActionWorkItemInsertFactCol52 originalColumn = (ActionWorkItemInsertFactCol52) originalMetaData.getColumn(); final ActionWorkItemInsertFactCol52 editedColumn = (ActionWorkItemInsertFactCol52) editedMetaData.getColumn(); final List<BaseColumnFieldDiff> diffs = originalColumn.diff(editedColumn); update(originalColumn, editedColumn); //ActionWorkItem columns are always represented with a BooleanUiColumn final boolean isHideUpdated = BaseColumnFieldDiffImpl.hasChanged(ActionWorkItemInsertFactCol52.FIELD_HIDE_COLUMN, diffs); final boolean isHeaderUpdated = BaseColumnFieldDiffImpl.hasChanged(ActionWorkItemInsertFactCol52.FIELD_HEADER, diffs); if (isHideUpdated) { setColumnVisibility(originalColumn, originalColumn.isHideColumn()); } if (isHeaderUpdated) { setColumnHeader(originalColumn, originalColumn.getHeader()); } return diffs; }
@Override public String getWorkItemName() { return getActionCol52().getWorkItemName(); }
@Test public void testColumnManagementGroupTitleWorkItemInsertFact() throws Exception { final ActionWorkItemInsertFactCol52 column = mock(ActionWorkItemInsertFactCol52.class); doReturn(FACT_TYPE_APPLICANT).when(column).getFactType(); doReturn(APPLICANT_BOUND_NAME).when(column).getBoundName(); assertEquals(FACT_TYPE_APPLICANT + " [" + APPLICANT_BOUND_NAME + "]", DecisionTableColumnViewUtils.getColumnManagementGroupTitle(column)); }
public ActionWorkItemInsertWrapper(final BaseDecisionTableColumnPlugin plugin) { super(plugin); action52 = new ActionWorkItemInsertFactCol52(); }
@Override public String getWorkItemResultParameterName() { return getActionCol52().getWorkItemResultParameterName(); }
@Override public String getParameterClassName() { return getActionCol52().getParameterClassName(); }