use of org.kie.workbench.common.dmn.api.definition.HasExpression in project kie-wb-common by kiegroup.
the class DMNDocumentationDRDsFactory method setExpressionContainerGrid.
void setExpressionContainerGrid(final Diagram diagram, final String uuid) {
final Node<View, Edge> node = getNode(diagram, uuid);
final Object definition = DefinitionUtils.getElementDefinition(node);
final HasExpression hasExpression = expressionHelper.getHasExpression(node);
final Optional<HasName> hasName = Optional.of((HasName) definition);
final ExpressionContainerGrid grid = getExpressionContainerGrid();
grid.setExpression(node.getUUID(), hasExpression, hasName, false);
clearSelections(grid);
}
use of org.kie.workbench.common.dmn.api.definition.HasExpression in project kie-wb-common by kiegroup.
the class ListPropertyConverter method wbFromDMN.
public static List wbFromDMN(final JSITList dmn, final BiConsumer<String, HasComponentWidths> hasComponentWidthsConsumer) {
final Id id = IdPropertyConverter.wbFromDMN(dmn.getId());
final Description description = DescriptionPropertyConverter.wbFromDMN(dmn.getDescription());
final QName typeRef = QNamePropertyConverter.wbFromDMN(dmn.getTypeRef());
final java.util.List<HasExpression> expression = new ArrayList<>();
final List result = new List(id, description, typeRef, expression);
final java.util.List<JSITExpression> jsiExpressions = dmn.getExpression();
for (int i = 0; i < jsiExpressions.size(); i++) {
final JSITExpression jsitExpression = Js.uncheckedCast(jsiExpressions.get(i));
final Expression eConverted = ExpressionPropertyConverter.wbFromDMN(jsitExpression, Js.uncheckedCast(dmn), hasComponentWidthsConsumer);
final HasExpression hasExpression = HasExpression.wrap(result, eConverted);
expression.add(hasExpression);
}
for (HasExpression hasExpression : expression) {
final Expression e = hasExpression.getExpression();
if (Objects.nonNull(e)) {
e.setParent(result);
}
}
return result;
}
use of org.kie.workbench.common.dmn.api.definition.HasExpression in project kie-wb-common by kiegroup.
the class ListPropertyConverter method dmnFromWB.
public static JSITList dmnFromWB(final List wb, final Consumer<JSITComponentWidths> componentWidthsConsumer) {
final JSITList result = new JSITList();
result.setId(wb.getId().getValue());
final Optional<String> description = Optional.ofNullable(DescriptionPropertyConverter.dmnFromWB(wb.getDescription()));
description.ifPresent(result::setDescription);
QNamePropertyConverter.setDMNfromWB(wb.getTypeRef(), result::setTypeRef);
for (HasExpression hasExpression : wb.getExpression()) {
final Expression e = hasExpression.getExpression();
final JSITExpression eConverted = ExpressionPropertyConverter.dmnFromWB(e, componentWidthsConsumer);
result.addExpression(eConverted);
}
return result;
}
use of org.kie.workbench.common.dmn.api.definition.HasExpression in project kie-wb-common by kiegroup.
the class DecisionNavigatorNestedItemFactoryTest method testMakeEditExpressionEvent.
@Test
public void testMakeEditExpressionEvent() {
final ClientSession currentSession = mock(ClientSession.class);
final HasName hasName = mock(HasName.class);
final HasExpression hasExpression = mock(HasExpression.class);
final View view = mock(View.class);
final String uuid = "uuid";
when(node.getUUID()).thenReturn(uuid);
when(sessionManager.getCurrentSession()).thenReturn(currentSession);
when(node.getContent()).thenReturn(view);
when(view.getDefinition()).thenReturn(hasName);
when(boxedExpressionHelper.getHasExpression(node)).thenReturn(hasExpression);
final EditExpressionEvent expressionEvent = factory.makeEditExpressionEvent(node);
assertEquals(uuid, expressionEvent.getNodeUUID());
assertEquals(currentSession, expressionEvent.getSession());
assertEquals(Optional.of(hasName), expressionEvent.getHasName());
assertEquals(hasExpression, expressionEvent.getHasExpression());
assertFalse(expressionEvent.isOnlyVisualChangeAllowed());
}
use of org.kie.workbench.common.dmn.api.definition.HasExpression in project kie-wb-common by kiegroup.
the class FunctionGridTest method setup.
@Before
@SuppressWarnings("unchecked")
public void setup() {
when(parent.getGridWidget()).thenReturn(parentGridWidget);
when(parentGridWidget.getModel()).thenReturn(parentGridData);
when(parentGridData.getColumns()).thenReturn(Collections.singletonList(parentGridColumn));
when(sessionManager.getCurrentSession()).thenReturn(session);
when(session.getGridPanel()).thenReturn(gridPanel);
when(session.getGridLayer()).thenReturn(gridLayer);
when(session.getCellEditorControls()).thenReturn(cellEditorControls);
definition = new FunctionEditorDefinition(definitionUtils, sessionManager, sessionCommandManager, canvasCommandFactory, editorSelectedEvent, refreshFormPropertiesEvent, domainObjectSelectionEvent, listSelector, translationService, expressionEditorDefinitionsSupplier, supplementaryEditorDefinitionsSupplier, headerEditor, parametersEditor, kindEditor, readOnlyProvider);
literalExpressionEditorDefinition = spy(new LiteralExpressionEditorDefinition(definitionUtils, sessionManager, sessionCommandManager, canvasCommandFactory, editorSelectedEvent, refreshFormPropertiesEvent, domainObjectSelectionEvent, listSelector, translationService, headerEditor, readOnlyProvider));
expression = definition.getModelClass();
definition.enrich(Optional.empty(), hasExpression, expression);
expression.get().getFormalParameter().add(parameter);
parameter.getName().setValue(PARAMETER_NAME);
final ExpressionEditorDefinitions expressionEditorDefinitions = new ExpressionEditorDefinitions();
expressionEditorDefinitions.add((ExpressionEditorDefinition) definition);
expressionEditorDefinitions.add((ExpressionEditorDefinition) literalExpressionEditorDefinition);
expressionEditorDefinitions.add(supplementaryExpressionEditorDefinition);
final Decision decision = new Decision();
decision.setName(new Name("name"));
hasName = Optional.of(decision);
when(expressionEditorDefinitionsSupplier.get()).thenReturn(expressionEditorDefinitions);
when(supplementaryEditorDefinitionsSupplier.get()).thenReturn(expressionEditorDefinitions);
// Setup LiteralExpression definition and editor
doReturn(Optional.of(literalExpressionEditor)).when(literalExpressionEditorDefinition).getEditor(any(GridCellTuple.class), any(Optional.class), any(HasExpression.class), any(Optional.class), anyBoolean(), anyInt());
when(literalExpressionEditor.getGridPanel()).thenReturn(gridPanel);
when(literalExpressionEditor.getLayer()).thenReturn(gridLayer);
when(literalExpressionEditor.getModel()).thenReturn(new BaseGridData(false));
doCallRealMethod().when(literalExpressionEditor).resize(any(Function.class));
doCallRealMethod().when(literalExpressionEditor).doResize(any(PrioritizedCommand.class), any(Function.class));
doCallRealMethod().when(literalExpressionEditor).selectFirstCell();
when(literalExpressionEditor.getParentInformation()).thenReturn(parent);
// Setup Supplementary expression definition and editor
when(supplementaryExpressionEditorDefinition.getModelClass()).thenReturn(Optional.of(supplementaryExpression));
when(supplementaryExpressionEditorDefinition.getEditor(any(GridCellTuple.class), any(Optional.class), any(HasExpression.class), any(Optional.class), anyBoolean(), anyInt())).thenReturn(Optional.of(supplementaryExpressionEditor));
when(supplementaryExpressionEditor.getGridPanel()).thenReturn(gridPanel);
when(supplementaryExpressionEditor.getLayer()).thenReturn(gridLayer);
when(supplementaryExpressionEditor.getModel()).thenReturn(new BaseGridData(false));
doCallRealMethod().when(supplementaryExpressionEditor).resize(any(Function.class));
doCallRealMethod().when(supplementaryExpressionEditor).doResize(any(PrioritizedCommand.class), any(Function.class));
doCallRealMethod().when(supplementaryExpressionEditor).selectFirstCell();
when(supplementaryExpressionEditor.getParentInformation()).thenReturn(parent);
when(session.getCanvasHandler()).thenReturn(canvasHandler);
when(gridWidget.getModel()).thenReturn(new BaseGridData(false));
when(canvasHandler.getDiagram()).thenReturn(diagram);
when(diagram.getGraph()).thenReturn(graph);
when(graph.nodes()).thenReturn(Collections.singletonList(node));
when(canvasHandler.getGraphIndex()).thenReturn(index);
when(index.get(Mockito.<String>any())).thenReturn(element);
when(element.getContent()).thenReturn(mock(Definition.class));
when(definitionUtils.getNameIdentifier(any())).thenReturn("name");
when(canvasCommandFactory.updatePropertyValue(any(Element.class), Mockito.<String>any(), any())).thenReturn(mock(UpdateElementPropertyCommand.class));
when(canvasHandler.getGraphExecutionContext()).thenReturn(graphCommandExecutionContext);
doAnswer((i) -> i.getArguments()[0].toString()).when(translationService).format(Mockito.<String>any());
doAnswer((i) -> i.getArguments()[0].toString()).when(translationService).getTranslation(Mockito.<String>any());
}
Aggregations