@Test public void testDMNFromWB() { final Decision wb = new Decision(); final LiteralExpression literalExpression = new LiteralExpression(); final InformationItemPrimary informationItem = new InformationItemPrimary(); literalExpression.getComponentWidths().set(0, 200.0); literalExpression.getId().setValue(EXPRESSION_UUID); wb.getId().setValue(DECISION_UUID); wb.getName().setValue(DECISION_NAME); wb.getDescription().setValue(DECISION_DESCRIPTION); wb.setVariable(informationItem); wb.setExpression(literalExpression); final Node<View<Decision>, ?> node = new NodeImpl<>(UUID.uuid()); final View<Decision> view = new ViewImpl<>(wb, Bounds.create()); node.setContent(view); final org.kie.dmn.model.api.Decision dmn = converter.dmnFromNode(node, componentWidthsConsumer); assertThat(dmn).isNotNull(); assertThat(dmn.getId()).isNotNull(); assertThat(dmn.getId()).isEqualTo(DECISION_UUID); assertThat(dmn.getName()).isNotNull(); assertThat(dmn.getName()).isEqualTo(DECISION_NAME); assertThat(dmn.getDescription()).isNotNull(); assertThat(dmn.getDescription()).isEqualTo(DECISION_DESCRIPTION); assertThat(dmn.getVariable()).isNotNull(); assertThat(dmn.getVariable().getName()).isEqualTo(DECISION_NAME); assertThat(dmn.getExpression()).isNotNull(); assertThat(dmn.getExpression().getId()).isEqualTo(EXPRESSION_UUID); verify(componentWidthsConsumer).accept(componentWidthsCaptor.capture()); final ComponentWidths componentWidths = componentWidthsCaptor.getValue(); assertThat(componentWidths).isNotNull(); assertThat(componentWidths.getDmnElementRef().getLocalPart()).isEqualTo(EXPRESSION_UUID); assertThat(componentWidths.getWidths().size()).isEqualTo(literalExpression.getRequiredComponentWidthCount()); assertThat(componentWidths.getWidths().get(0)).isEqualTo(200.0); }
@Override public org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node, final Consumer<ComponentWidths> componentWidthsConsumer) { final Decision source = (Decision) DefinitionUtils.getElementDefinition(node); final org.kie.dmn.model.api.Decision d = new org.kie.dmn.model.v1_2.TDecision(); d.setId(source.getId().getValue()); d.setDescription(DescriptionPropertyConverter.dmnFromWB(source.getDescription())); d.setName(source.getName().getValue()); final org.kie.dmn.model.api.InformationItem variable = InformationItemPrimaryPropertyConverter.dmnFromWB(source.getVariable(), source); if (variable != null) { variable.setParent(d); } d.setVariable(variable); final org.kie.dmn.model.api.Expression expression = ExpressionPropertyConverter.dmnFromWB(source.getExpression(), componentWidthsConsumer); if (expression != null) { expression.setParent(d); } d.setExpression(expression); d.setQuestion(QuestionPropertyConverter.dmnFromWB(source.getQuestion())); d.setAllowedAnswers(AllowedAnswersPropertyConverter.dmnFromWB(source.getAllowedAnswers())); final List<Edge<?, ?>> inEdges = (List<Edge<?, ?>>) node.getInEdges(); for (Edge<?, ?> e : inEdges) { final Node<?, ?> sourceNode = e.getSourceNode(); if (sourceNode.getContent() instanceof View<?>) { final View<?> view = (View<?>) sourceNode.getContent(); if (view.getDefinition() instanceof DRGElement) { final DRGElement drgElement = (DRGElement) view.getDefinition(); if (drgElement instanceof Decision) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredDecision(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof BusinessKnowledgeModel) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else if (drgElement instanceof KnowledgeSource) { final org.kie.dmn.model.api.AuthorityRequirement iReq = new org.kie.dmn.model.v1_2.TAuthorityRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredAuthority(ri); d.getAuthorityRequirement().add(iReq); } else if (drgElement instanceof InputData) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredInput(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof DecisionService) { if (e.getContent() instanceof Child) { } else if (e.getContent() instanceof View && ((View) e.getContent()).getDefinition() instanceof KnowledgeRequirement) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else { throw new UnsupportedOperationException("wrong model definition."); } } else { throw new UnsupportedOperationException("wrong model definition."); } } } } DMNExternalLinksToExtensionElements.loadExternalLinksIntoExtensionElements(source, d); return d; }
DecisionConverter implements NodeConverter<org.kie.dmn.model.api.Decision, org.kie.workbench.common.dmn.api.definition.model.Decision> { @Override public org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node, final Consumer<ComponentWidths> componentWidthsConsumer) { final Decision source = (Decision) DefinitionUtils.getElementDefinition(node); final org.kie.dmn.model.api.Decision d = new org.kie.dmn.model.v1_2.TDecision(); d.setId(source.getId().getValue()); d.setDescription(DescriptionPropertyConverter.dmnFromWB(source.getDescription())); d.setName(source.getName().getValue()); final org.kie.dmn.model.api.InformationItem variable = InformationItemPrimaryPropertyConverter.dmnFromWB(source.getVariable(), source); if (variable != null) { variable.setParent(d); } d.setVariable(variable); final org.kie.dmn.model.api.Expression expression = ExpressionPropertyConverter.dmnFromWB(source.getExpression(), componentWidthsConsumer); if (expression != null) { expression.setParent(d); } d.setExpression(expression); d.setQuestion(QuestionPropertyConverter.dmnFromWB(source.getQuestion())); d.setAllowedAnswers(AllowedAnswersPropertyConverter.dmnFromWB(source.getAllowedAnswers())); final List<Edge<?, ?>> inEdges = (List<Edge<?, ?>>) node.getInEdges(); for (Edge<?, ?> e : inEdges) { final Node<?, ?> sourceNode = e.getSourceNode(); if (sourceNode.getContent() instanceof View<?>) { final View<?> view = (View<?>) sourceNode.getContent(); if (view.getDefinition() instanceof DRGElement) { final DRGElement drgElement = (DRGElement) view.getDefinition(); if (drgElement instanceof Decision) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredDecision(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof BusinessKnowledgeModel) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else if (drgElement instanceof KnowledgeSource) { final org.kie.dmn.model.api.AuthorityRequirement iReq = new org.kie.dmn.model.v1_2.TAuthorityRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredAuthority(ri); d.getAuthorityRequirement().add(iReq); } else if (drgElement instanceof InputData) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredInput(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof DecisionService) { if (e.getContent() instanceof Child) { } else if (e.getContent() instanceof View && ((View) e.getContent()).getDefinition() instanceof KnowledgeRequirement) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else { throw new UnsupportedOperationException("wrong model definition."); } } else { throw new UnsupportedOperationException("wrong model definition."); } } } } DMNExternalLinksToExtensionElements.loadExternalLinksIntoExtensionElements(source, d); return d; } }
DecisionConverter implements NodeConverter<org.kie.dmn.model.api.Decision, org.kie.workbench.common.dmn.api.definition.model.Decision> { @Override public org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node, final Consumer<ComponentWidths> componentWidthsConsumer) { final Decision source = (Decision) DefinitionUtils.getElementDefinition(node); final org.kie.dmn.model.api.Decision d = new org.kie.dmn.model.v1_2.TDecision(); d.setId(source.getId().getValue()); d.setDescription(DescriptionPropertyConverter.dmnFromWB(source.getDescription())); d.setName(source.getName().getValue()); final org.kie.dmn.model.api.InformationItem variable = InformationItemPrimaryPropertyConverter.dmnFromWB(source.getVariable(), source); if (variable != null) { variable.setParent(d); } d.setVariable(variable); final org.kie.dmn.model.api.Expression expression = ExpressionPropertyConverter.dmnFromWB(source.getExpression(), componentWidthsConsumer); if (expression != null) { expression.setParent(d); } d.setExpression(expression); d.setQuestion(QuestionPropertyConverter.dmnFromWB(source.getQuestion())); d.setAllowedAnswers(AllowedAnswersPropertyConverter.dmnFromWB(source.getAllowedAnswers())); final List<Edge<?, ?>> inEdges = (List<Edge<?, ?>>) node.getInEdges(); for (Edge<?, ?> e : inEdges) { final Node<?, ?> sourceNode = e.getSourceNode(); if (sourceNode.getContent() instanceof View<?>) { final View<?> view = (View<?>) sourceNode.getContent(); if (view.getDefinition() instanceof DRGElement) { final DRGElement drgElement = (DRGElement) view.getDefinition(); if (drgElement instanceof Decision) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredDecision(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof BusinessKnowledgeModel) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else if (drgElement instanceof KnowledgeSource) { final org.kie.dmn.model.api.AuthorityRequirement iReq = new org.kie.dmn.model.v1_2.TAuthorityRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredAuthority(ri); d.getAuthorityRequirement().add(iReq); } else if (drgElement instanceof InputData) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredInput(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof DecisionService) { if (e.getContent() instanceof Child) { } else if (e.getContent() instanceof View && ((View) e.getContent()).getDefinition() instanceof KnowledgeRequirement) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else { throw new UnsupportedOperationException("wrong model definition."); } } else { throw new UnsupportedOperationException("wrong model definition."); } } } } DMNExternalLinksToExtensionElements.loadExternalLinksIntoExtensionElements(source, d); return d; } DecisionConverter(final FactoryManager factoryManager); }
DecisionConverter implements NodeConverter<org.kie.dmn.model.api.Decision, org.kie.workbench.common.dmn.api.definition.model.Decision> { @Override public org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node, final Consumer<ComponentWidths> componentWidthsConsumer) { final Decision source = (Decision) DefinitionUtils.getElementDefinition(node); final org.kie.dmn.model.api.Decision d = new org.kie.dmn.model.v1_2.TDecision(); d.setId(source.getId().getValue()); d.setDescription(DescriptionPropertyConverter.dmnFromWB(source.getDescription())); d.setName(source.getName().getValue()); final org.kie.dmn.model.api.InformationItem variable = InformationItemPrimaryPropertyConverter.dmnFromWB(source.getVariable(), source); if (variable != null) { variable.setParent(d); } d.setVariable(variable); final org.kie.dmn.model.api.Expression expression = ExpressionPropertyConverter.dmnFromWB(source.getExpression(), componentWidthsConsumer); if (expression != null) { expression.setParent(d); } d.setExpression(expression); d.setQuestion(QuestionPropertyConverter.dmnFromWB(source.getQuestion())); d.setAllowedAnswers(AllowedAnswersPropertyConverter.dmnFromWB(source.getAllowedAnswers())); final List<Edge<?, ?>> inEdges = (List<Edge<?, ?>>) node.getInEdges(); for (Edge<?, ?> e : inEdges) { final Node<?, ?> sourceNode = e.getSourceNode(); if (sourceNode.getContent() instanceof View<?>) { final View<?> view = (View<?>) sourceNode.getContent(); if (view.getDefinition() instanceof DRGElement) { final DRGElement drgElement = (DRGElement) view.getDefinition(); if (drgElement instanceof Decision) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredDecision(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof BusinessKnowledgeModel) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else if (drgElement instanceof KnowledgeSource) { final org.kie.dmn.model.api.AuthorityRequirement iReq = new org.kie.dmn.model.v1_2.TAuthorityRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredAuthority(ri); d.getAuthorityRequirement().add(iReq); } else if (drgElement instanceof InputData) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredInput(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof DecisionService) { if (e.getContent() instanceof Child) { } else if (e.getContent() instanceof View && ((View) e.getContent()).getDefinition() instanceof KnowledgeRequirement) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else { throw new UnsupportedOperationException("wrong model definition."); } } else { throw new UnsupportedOperationException("wrong model definition."); } } } } DMNExternalLinksToExtensionElements.loadExternalLinksIntoExtensionElements(source, d); return d; } DecisionConverter(final FactoryManager factoryManager); @Override Node<View<Decision>, ?> nodeFromDMN(final org.kie.dmn.model.api.Decision dmn,
                                               final BiConsumer<String, HasComponentWidths> hasComponentWidthsConsumer); @Override org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node,
                                                      final Consumer<ComponentWidths> componentWidthsConsumer); }
DecisionConverter implements NodeConverter<org.kie.dmn.model.api.Decision, org.kie.workbench.common.dmn.api.definition.model.Decision> { @Override public org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node, final Consumer<ComponentWidths> componentWidthsConsumer) { final Decision source = (Decision) DefinitionUtils.getElementDefinition(node); final org.kie.dmn.model.api.Decision d = new org.kie.dmn.model.v1_2.TDecision(); d.setId(source.getId().getValue()); d.setDescription(DescriptionPropertyConverter.dmnFromWB(source.getDescription())); d.setName(source.getName().getValue()); final org.kie.dmn.model.api.InformationItem variable = InformationItemPrimaryPropertyConverter.dmnFromWB(source.getVariable(), source); if (variable != null) { variable.setParent(d); } d.setVariable(variable); final org.kie.dmn.model.api.Expression expression = ExpressionPropertyConverter.dmnFromWB(source.getExpression(), componentWidthsConsumer); if (expression != null) { expression.setParent(d); } d.setExpression(expression); d.setQuestion(QuestionPropertyConverter.dmnFromWB(source.getQuestion())); d.setAllowedAnswers(AllowedAnswersPropertyConverter.dmnFromWB(source.getAllowedAnswers())); final List<Edge<?, ?>> inEdges = (List<Edge<?, ?>>) node.getInEdges(); for (Edge<?, ?> e : inEdges) { final Node<?, ?> sourceNode = e.getSourceNode(); if (sourceNode.getContent() instanceof View<?>) { final View<?> view = (View<?>) sourceNode.getContent(); if (view.getDefinition() instanceof DRGElement) { final DRGElement drgElement = (DRGElement) view.getDefinition(); if (drgElement instanceof Decision) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredDecision(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof BusinessKnowledgeModel) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else if (drgElement instanceof KnowledgeSource) { final org.kie.dmn.model.api.AuthorityRequirement iReq = new org.kie.dmn.model.v1_2.TAuthorityRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredAuthority(ri); d.getAuthorityRequirement().add(iReq); } else if (drgElement instanceof InputData) { final org.kie.dmn.model.api.InformationRequirement iReq = new org.kie.dmn.model.v1_2.TInformationRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredInput(ri); d.getInformationRequirement().add(iReq); } else if (drgElement instanceof DecisionService) { if (e.getContent() instanceof Child) { } else if (e.getContent() instanceof View && ((View) e.getContent()).getDefinition() instanceof KnowledgeRequirement) { final org.kie.dmn.model.api.KnowledgeRequirement iReq = new org.kie.dmn.model.v1_2.TKnowledgeRequirement(); iReq.setId(e.getUUID()); final org.kie.dmn.model.api.DMNElementReference ri = new org.kie.dmn.model.v1_2.TDMNElementReference(); ri.setHref(getHref(drgElement)); iReq.setRequiredKnowledge(ri); d.getKnowledgeRequirement().add(iReq); } else { throw new UnsupportedOperationException("wrong model definition."); } } else { throw new UnsupportedOperationException("wrong model definition."); } } } } DMNExternalLinksToExtensionElements.loadExternalLinksIntoExtensionElements(source, d); return d; } DecisionConverter(final FactoryManager factoryManager); @Override Node<View<Decision>, ?> nodeFromDMN(final org.kie.dmn.model.api.Decision dmn,
                                               final BiConsumer<String, HasComponentWidths> hasComponentWidthsConsumer); @Override org.kie.dmn.model.api.Decision dmnFromNode(final Node<View<Decision>, ?> node,
                                                      final Consumer<ComponentWidths> componentWidthsConsumer);  }