@Override public List<BaseColumnFieldDiff> diff(final BaseColumn otherColumn) { return getActionCol52().diff(otherColumn); }
@Override public List<BaseColumnFieldDiff> diff(final BaseColumn otherColumn) { return getActionCol52().diff(otherColumn); }
@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 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; }
@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()); }
column2.setDefaultValue(new DTCellValue52("default2")); List<BaseColumnFieldDiff> diff = column1.diff(column2); assertNotNull(diff); assertEquals(12, diff.size());
@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()); }