private String getType(final ConditionCol52 col) { final Pattern52 pattern = model.getPattern(col); return getType(pattern, col); }
private String getType(final ConditionCol52 col) { final Pattern52 pattern = model.getPattern(col); return getType(pattern, col); }
private String getGroupIdentifier( final BaseColumn column ) { if ( column instanceof ConditionCol52 ) { final Pattern52 parentColumn = model.getPattern( (ConditionCol52) column ); return Pattern52.class.getName() + ":" + parentColumn.getBoundName(); } else if ( column instanceof ActionCol52 ) { return ActionCol52.class.getName(); } return LimitedEntryCol.class.getName() + ":" + model.getExpandedColumns().indexOf( column ); }
private String getGroupIdentifier( final BaseColumn column ) { if ( column instanceof ConditionCol52 ) { final Pattern52 parentColumn = model.getPattern( (ConditionCol52) column ); return Pattern52.class.getName() + ":" + parentColumn.getBoundName(); } else if ( column instanceof ActionCol52 ) { return ActionCol52.class.getName(); } return LimitedEntryCol.class.getName() + ":" + model.getExpandedColumns().indexOf( column ); }
private boolean isPattern(final List<MoveColumnToMetaData> metaData) { if (!metaData.stream().allMatch((c) -> c.getColumn() instanceof ConditionCol52)) { return false; } final MoveColumnToMetaData md = metaData.get(0); final ConditionCol52 srcModelColumn = (ConditionCol52) md.getColumn(); final Pattern52 srcModelPattern = model.getPattern(srcModelColumn); return srcModelPattern.getChildColumns().size() == metaData.size(); }
private boolean isPattern(final List<MoveColumnToMetaData> metaData) { if (!metaData.stream().allMatch((c) -> c.getColumn() instanceof ConditionCol52)) { return false; } final MoveColumnToMetaData md = metaData.get(0); final ConditionCol52 srcModelColumn = (ConditionCol52) md.getColumn(); final Pattern52 srcModelPattern = model.getPattern(srcModelColumn); return srcModelPattern.getChildColumns().size() == metaData.size(); }
private String getPatternHeader(final BaseColumn column) { final Pattern52 pattern = model.getPattern((ConditionCol52) column); final StringBuilder sb = new StringBuilder(); if (pattern.isNegated()) { sb.append("not "); } else if (!(pattern.getBoundName() == null || pattern.getBoundName().isEmpty())) { sb.append(pattern.getBoundName()).append(" : "); } sb.append(pattern.getFactType()); return sb.toString(); }
private String getPatternHeader(final BaseColumn column) { final Pattern52 pattern = model.getPattern((ConditionCol52) column); final StringBuilder sb = new StringBuilder(); if (pattern.isNegated()) { sb.append("not "); } else if (!(pattern.getBoundName() == null || pattern.getBoundName().isEmpty())) { sb.append(pattern.getBoundName()).append(" : "); } sb.append(pattern.getFactType()); return sb.toString(); }
private void doMovePattern(final List<MoveColumnToMetaData> metaData) throws VetoException { final MoveColumnToMetaData md = metaData.get(0); final ConditionCol52 srcModelColumn = (ConditionCol52) md.getColumn(); final Pattern52 srcModelPattern = model.getPattern(srcModelColumn); if (srcModelPattern == null) { throw new ModelSynchronizer.MoveVetoException(); } final List<ConditionCol52> srcModelPatternConditionColumns = srcModelPattern.getChildColumns(); final int srcModelPatternConditionColumnCount = srcModelPatternConditionColumns.size(); if (srcModelPatternConditionColumnCount == 0) { throw new ModelSynchronizer.MoveVetoException(); } if (srcModelPatternConditionColumnCount != metaData.size()) { throw new ModelSynchronizer.MoveVetoException(); } final int tgtColumnIndex = md.getTargetColumnIndex(); final int tgtPatternIndex = findTargetPatternIndex(md); final List<BaseColumn> allModelColumns = model.getExpandedColumns(); moveModelData(tgtColumnIndex, allModelColumns.indexOf(srcModelPatternConditionColumns.get(0)), allModelColumns.indexOf(srcModelPatternConditionColumns.get(0)) + srcModelPatternConditionColumnCount - 1); model.getConditions().remove(srcModelPattern); model.getConditions().add(tgtPatternIndex, srcModelPattern); }
private void doMoveSingleCondition(final MoveColumnToMetaData metaData) throws VetoException { final ConditionCol52 modelColumn = (ConditionCol52) metaData.getColumn(); final Pattern52 modelPattern = model.getPattern(modelColumn); if (modelPattern == null) { throw new ModelSynchronizer.MoveVetoException(); } final List<ConditionCol52> modelPatternConditionColumns = modelPattern.getChildColumns(); final int modelPatternConditionColumnCount = modelPatternConditionColumns.size(); if (modelPatternConditionColumnCount == 0) { throw new ModelSynchronizer.MoveVetoException(); } final List<BaseColumn> allModelColumns = model.getExpandedColumns(); final int minColumnIndex = allModelColumns.indexOf(modelPatternConditionColumns.get(0)); final int maxColumnIndex = allModelColumns.indexOf(modelPatternConditionColumns.get(modelPatternConditionColumnCount - 1)); final int targetColumnIndex = metaData.getTargetColumnIndex(); final int sourceColumnIndex = metaData.getSourceColumnIndex(); if (targetColumnIndex < minColumnIndex || targetColumnIndex > maxColumnIndex) { throw new ModelSynchronizer.MoveVetoException(); } moveModelData(targetColumnIndex, sourceColumnIndex, sourceColumnIndex); modelPatternConditionColumns.remove(modelColumn); modelPatternConditionColumns.add(targetColumnIndex - minColumnIndex, modelColumn); }
@Before public void setUp() { utilities = new ColumnUtilities(model, oracle); pattern = new Pattern52(); column = new ConditionCol52(); when(model.getPattern(column)).thenReturn(pattern); }
@Before public void setUp() { GwtMockito.initMocks(this); utilities = new ColumnUtilities(model, oracle); pattern = new Pattern52(); column = new ConditionCol52(); when(model.getPattern(column)).thenReturn(pattern); final Map<String, String> properties = new HashMap<>(); if (valueList.compareTo(DATE_CONVERSION_VALUE_LIST) == 0) { properties.put(ApplicationPreferences.DATE_FORMAT, "dd-MM-yyyy"); } else { properties.put(ApplicationPreferences.DATE_FORMAT, null); } ApplicationPreferences.setUp(properties); }
@Override public void delete(final ColumnMetaData metaData) throws VetoException { //Check operation is supported if (!handlesDelete(metaData)) { return; } final ConditionCol52 column = (ConditionCol52) metaData.getColumn(); final int columnIndex = model.getExpandedColumns().indexOf(column); final Pattern52 pattern = model.getPattern(column); //Check if pattern change can be applied to model if (!isPotentialConditionDeletionSafe(column)) { throw new VetoDeletePatternInUseException(); } if (!isPotentialPatternDeletionSafe(pattern)) { throw new VetoDeletePatternInUseException(); } //Perform deletion pattern.getChildColumns().remove(column); //Remove pattern if it contains zero conditions if (pattern.getChildColumns().isEmpty()) { model.getConditions().remove(pattern); //Signal patterns changed event to Decision Table Widget final BoundFactsChangedEvent bfce = new BoundFactsChangedEvent(rm.getLHSBoundFacts()); eventBus.fireEvent(bfce); } synchroniseDeleteColumn(columnIndex); }
protected void generateConditionColumn( final GuidedDecisionTableView.Presenter dtPresenter, final BaseColumn column, final Callback<String> afterGenerationCallback ) { final GuidedDecisionTable52 existingModel = dtPresenter.getModel(); final ConditionCol52 cc = (ConditionCol52) column; if ( !isConditionPartOfPattern( existingModel, cc ) ) { return; } final GuidedDecisionTable52 partialModel = new GuidedDecisionTable52(); final ColumnUtilities columnUtilities = new ColumnUtilities( existingModel, dtPresenter.getDataModelOracle() ); final Pattern52 p = existingModel.getPattern( cc ).clonePattern(); p.getChildColumns().clear(); p.getChildColumns().add( cc ); partialModel.getConditions().add( p ); partialModel.getData().add( makeRowData( columnUtilities, cc ) ); generateDefinitionOnServer( partialModel, dtPresenter.getCurrentPath(), ( String drl ) -> afterGenerationCallback.callback( getLHS( drl ) ) ); }
protected void generateConditionColumn( final GuidedDecisionTableView.Presenter dtPresenter, final BaseColumn column, final Callback<String> afterGenerationCallback ) { final GuidedDecisionTable52 existingModel = dtPresenter.getModel(); final ConditionCol52 cc = (ConditionCol52) column; if ( !isConditionPartOfPattern( existingModel, cc ) ) { return; } final GuidedDecisionTable52 partialModel = new GuidedDecisionTable52(); final ColumnUtilities columnUtilities = new ColumnUtilities( existingModel, dtPresenter.getDataModelOracle() ); final Pattern52 p = existingModel.getPattern( cc ).clonePattern(); p.getChildColumns().clear(); p.getChildColumns().add( cc ); partialModel.getConditions().add( p ); partialModel.getData().add( makeRowData( columnUtilities, cc ) ); generateDefinitionOnServer( partialModel, dtPresenter.getCurrentPath(), ( String drl ) -> afterGenerationCallback.callback( getLHS( drl ) ) ); }
@Test public void testHiddenColumn_ConditionColumn() { final Pattern52 pattern = mock(Pattern52.class); final ConditionCol52 column = new ConditionCol52(); column.setFactField("MyField"); column.setHeader("MyColumn"); column.setHideColumn(true); when(model.getPattern(eq(column))).thenReturn(pattern); when(pattern.getFactType()).thenReturn("MyFact"); when(oracle.getFieldType("MyFact", "MyField")).thenReturn(DataType.TYPE_STRING); final GridColumn<?> uiColumn = factory.convertColumn(column, access, gridWidget); assertEquals(false, uiColumn.isVisible()); } }
@Test public void columnResizingListenerSetup_ConditionColumn() { final Pattern52 pattern = mock(Pattern52.class); final ConditionCol52 column = new ConditionCol52(); column.setFactField("MyField"); column.setHeader("MyColumn"); when(model.getPattern(eq(column))).thenReturn(pattern); when(pattern.getFactType()).thenReturn("MyFact"); when(oracle.getFieldType("MyFact", "MyField")).thenReturn(DataType.TYPE_STRING); final GridColumn<?> uiColumn = factory.convertColumn(column, access, gridWidget); assertTrue(uiColumn instanceof BaseUiColumn); assertEquals((int) uiColumn.getWidth(), column.getWidth()); uiColumn.setWidth(200.0); assertEquals(200, column.getWidth()); }
@Test public void conditionCol52Column() throws Exception { final ArrayList<BaseColumn> columns = new ArrayList<>(); final ConditionCol52 conditionCol52 = new ConditionCol52(); final Pattern52 pattern52 = new Pattern52(); columns.add(conditionCol52); when(model.getExpandedColumns()).thenReturn(columns); when(model.getPattern(conditionCol52)).thenReturn(pattern52); final HeaderMetaData headerMetaData = new ModelMetaDataEnhancer(model) .getHeaderMetaData(); assertEquals(1, headerMetaData.size()); assertEquals(pattern52, headerMetaData.getPatternsByColumnNumber(0).getPattern()); assertEquals(PatternType.LHS, headerMetaData.getPatternsByColumnNumber(0).getPatternType()); } }
@Test public void conditionCol52Column() throws Exception { final ArrayList<BaseColumn> columns = new ArrayList<>(); final ConditionCol52 conditionCol52 = new ConditionCol52(); final Pattern52 pattern52 = new Pattern52(); columns.add(conditionCol52); when(model.getExpandedColumns()).thenReturn(columns); when(model.getPattern(conditionCol52)).thenReturn(pattern52); final HeaderMetaData headerMetaData = new ModelMetaDataEnhancer(model) .getHeaderMetaData(); assertEquals(1, headerMetaData.size()); assertEquals(pattern52, headerMetaData.getPatternsByColumnNumber(0).getPattern()); assertEquals(PatternType.LHS, headerMetaData.getPatternsByColumnNumber(0).getPatternType()); } }
@Test public void conditionCol52Column() throws Exception { final ArrayList<BaseColumn> columns = new ArrayList<>(); final ConditionCol52 conditionCol52 = new ConditionCol52(); final Pattern52 pattern52 = new Pattern52(); columns.add(conditionCol52); when(model.getExpandedColumns()).thenReturn(columns); when(model.getPattern(conditionCol52)).thenReturn(pattern52); final HeaderMetaData headerMetaData = new ModelMetaDataEnhancer(model) .getHeaderMetaData(); assertEquals(1, headerMetaData.size()); assertEquals(pattern52, headerMetaData.getPatternsByColumnNumber(0).getPattern()); assertEquals(PatternType.LHS, headerMetaData.getPatternsByColumnNumber(0).getPatternType()); } }