use of org.kie.workbench.common.dmn.api.property.dmn.Name in project kie-wb-common by kiegroup.
the class AddParameterBindingCommandTest method makeCommand.
private void makeCommand(final int uiRowIndex, final GridRow uiGridRow) {
final Binding rowEntry = new Binding();
final InformationItem parameter = new InformationItem();
parameter.setName(new Name());
rowEntry.setParameter(parameter);
makeCommand(uiRowIndex, rowEntry, uiGridRow);
}
use of org.kie.workbench.common.dmn.api.property.dmn.Name in project kie-wb-common by kiegroup.
the class AddParameterBindingCommandTest method setup.
@Before
@SuppressWarnings("unchecked")
public void setup() {
this.invocation = new Invocation();
this.binding = new Binding();
final InformationItem parameter = new InformationItem();
parameter.setName(new Name("p" + invocation.getBinding().size()));
this.binding.setParameter(parameter);
this.uiModel = new BaseGridData(false);
this.uiModelRow = new BaseGridRow();
this.uiModel.appendColumn(uiRowNumberColumn);
this.uiModel.appendColumn(uiNameColumn);
this.uiModel.appendColumn(uiExpressionEditorColumn);
this.uiModelMapper = new InvocationUIModelMapper(gridWidget, () -> uiModel, () -> Optional.of(invocation), () -> false, () -> expressionEditorDefinitions, listSelector, 0);
doReturn(ruleManager).when(handler).getRuleManager();
doReturn(0).when(uiRowNumberColumn).getIndex();
doReturn(1).when(uiNameColumn).getIndex();
doReturn(2).when(uiExpressionEditorColumn).getIndex();
doReturn(uiModel).when(gridWidget).getModel();
doReturn(Optional.empty()).when(expressionEditorDefinitions).getExpressionEditorDefinition(any(Optional.class));
}
use of org.kie.workbench.common.dmn.api.property.dmn.Name in project kie-wb-common by kiegroup.
the class RelationGrid method addColumn.
void addColumn(final int index) {
getExpression().get().ifPresent(relation -> {
final InformationItem informationItem = new InformationItem();
informationItem.setName(new Name());
final CommandResult<CanvasViolation> result = sessionCommandManager.execute((AbstractCanvasHandler) sessionManager.getCurrentSession().getCanvasHandler(), new AddRelationColumnCommand(relation, informationItem, model, () -> makeRelationColumn(index, informationItem), index, uiModelMapper, () -> resize(BaseExpressionGrid.RESIZE_EXISTING), () -> resize(BaseExpressionGrid.RESIZE_EXISTING_MINIMUM)));
if (!CommandUtils.isError(result)) {
selectHeaderCell(0, index, false, false);
CellContextUtilities.editSelectedCell(this);
}
});
}
use of org.kie.workbench.common.dmn.api.property.dmn.Name in project kie-wb-common by kiegroup.
the class LiteralExpressionPMMLDocumentModelEditorDefinition method getEditor.
@Override
public Optional<BaseExpressionGrid<? extends Expression, ? extends GridData, ? extends BaseUIModelMapper>> getEditor(final GridCellTuple parent, final Optional<String> nodeUUID, final HasExpression hasExpression, final Optional<HasName> hasName, final boolean isOnlyVisualChangeAllowed, final int nesting) {
return Optional.of(new LiteralExpressionPMMLGrid(parent, nodeUUID, hasExpression, hasName, getGridPanel(), getGridLayer(), makeGridData(() -> Optional.ofNullable((LiteralExpressionPMMLDocumentModel) hasExpression.getExpression())), definitionUtils, sessionManager, sessionCommandManager, canvasCommandFactory, editorSelectedEvent, refreshFormPropertiesEvent, domainObjectSelectionEvent, getCellEditorControls(), listSelector, translationService, isOnlyVisualChangeAllowed, nesting, headerEditor, readOnlyProvider) {
@Override
protected String getPlaceHolder() {
return translationService.getTranslation(DMNEditorConstants.LiteralExpressionPMMLDocumentModelEditorDefinition_Placeholder);
}
@Override
protected void loadValues(final Consumer<List<String>> consumer) {
final String pmmlDocumentName = getExpressionPMMLValue(LiteralExpressionPMMLDocument.VARIABLE_DOCUMENT);
consumer.accept(pmmlDocumentMetadataProvider.getPMMLDocumentModels(pmmlDocumentName));
}
@Override
public Function<GridCellValueTuple, Command> newCellHasValueCommand() {
return (gridCellValueTuple) -> {
final CompositeCommand.Builder<AbstractCanvasHandler, CanvasViolation> builder = new CompositeCommand.Builder<>();
// Command to set the PMMLDocumentModel value
builder.addCommand(new SetCellValueCommand(gridCellValueTuple, () -> uiModelMapper, gridLayer::batch));
// Command to set PMMLDocumentModel parameters
getParentFunctionGrid().ifPresent(parentFunctionGrid -> {
final String pmmlDocumentName = getExpressionPMMLValue(LiteralExpressionPMMLDocument.VARIABLE_DOCUMENT);
final String pmmlDocumentModelName = StringUtils.createUnquotedString((String) gridCellValueTuple.getValue().getValue());
final List<String> parameters = pmmlDocumentMetadataProvider.getPMMLDocumentModelParameterNames(pmmlDocumentName, pmmlDocumentModelName);
parentFunctionGrid.getExpression().get().ifPresent(function -> {
builder.addCommand(new SetParametersCommand(function, convertParametersToInformationItems(parameters), gridLayer::batch));
});
});
return builder.build();
};
}
private List<InformationItem> convertParametersToInformationItems(final List<String> parameters) {
final List<InformationItem> informationItems = new ArrayList<>();
parameters.forEach(parameter -> informationItems.add(new InformationItem(new Id(), new Description(), new Name(parameter), BuiltInType.ANY.asQName())));
return informationItems;
}
});
}
use of org.kie.workbench.common.dmn.api.property.dmn.Name in project kie-wb-common by kiegroup.
the class InvocationGrid method initialiseUiColumns.
@Override
protected void initialiseUiColumns() {
final List<GridColumn.HeaderMetaData> headerMetaData = new ArrayList<>();
final RowNumberColumn rowNumberColumn = new RowNumberColumn();
rowNumberColumn.setWidth(getAndSetInitialWidth(0, rowNumberColumn.getWidth()));
if (nesting == 0) {
headerMetaData.add(new InvocationColumnHeaderMetaData(hasExpression, hasName, clearValueConsumer(true, new Name()), setValueConsumer(true), setTypeRefConsumer(), translationService, cellEditorControls, headerEditor, listSelector, this::getHeaderItems, this::onItemSelected));
}
headerMetaData.add(new InvocationColumnExpressionHeaderMetaData(this::getExpressionText, this::setExpressionText, getHeaderTextBoxFactory(), Optional.of(translationService.getTranslation(DMNEditorConstants.InvocationEditor_EnterFunction)), listSelector, this::getHeaderItems, this::onItemSelected));
final InvocationParameterColumn nameColumn = new InvocationParameterColumn(headerMetaData, getAndSetInitialWidth(1, DMNGridColumn.DEFAULT_WIDTH), this, rowIndex -> true, clearValueConsumer(false, new Name()), setValueConsumer(false), setTypeRefConsumer(), translationService, cellEditorControls, headerEditor);
final ExpressionEditorColumn expressionColumn = new ExpressionEditorColumn(gridLayer, headerMetaData, getAndSetInitialWidth(2, UndefinedExpressionColumn.DEFAULT_WIDTH), this);
model.appendColumn(rowNumberColumn);
model.appendColumn(nameColumn);
model.appendColumn(expressionColumn);
getRenderer().setColumnRenderConstraint((isSelectionLayer, gridColumn) -> !isSelectionLayer || gridColumn.equals(expressionColumn));
}
Aggregations