use of org.kie.workbench.common.dmn.api.definition.model.DRGElement in project kie-wb-common by kiegroup.
the class DMNMarshallerImportsClientHelper method loadNodes.
private Promise<List<DMNIncludedNode>> loadNodes(final Map<String, JSITDefinitions> existingDefinitions, final DMNIncludedModel model, final List<DMNIncludedNode> result) {
String filePath = "";
for (final Map.Entry<String, JSITDefinitions> entry : existingDefinitions.entrySet()) {
filePath = entry.getKey();
final JSITDefinitions definitions = Js.uncheckedCast(entry.getValue());
if (Objects.equals(model.getNamespace(), definitions.getNamespace())) {
break;
}
}
if (isEmpty(filePath)) {
return promises.resolve();
}
final String path = filePath;
return dmnImportsContentService.loadFile(path).then(content -> promises.create((success, fail) -> dmnImportsService.getDRGElements(content, new ServiceCallback<List<DRGElement>>() {
@Override
public void onSuccess(final List<DRGElement> drgElements) {
final List<DMNIncludedNode> nodes = drgElements.stream().map(node -> includedModelFactory.makeDMNIncludeNode(path, model, node)).collect(Collectors.toList());
result.addAll(nodes);
success.onInvoke(nodes);
}
@Override
public void onError(final ClientRuntimeError error) {
LOGGER.log(Level.SEVERE, error.getMessage());
fail.onInvoke(error);
}
})));
}
use of org.kie.workbench.common.dmn.api.definition.model.DRGElement in project kie-wb-common by kiegroup.
the class PMMLIncludedModelHandlerTest method setupDecisionWithTopLevelFunction.
private List<Decision> setupDecisionWithTopLevelFunction() {
final List<DRGElement> drgElements = new ArrayList<>();
final Decision decision1 = new Decision();
decision1.setExpression(new LiteralExpression());
final Decision decision2 = new Decision();
decision2.setExpression(makeTopLevelPMMLFunctionDefinition(DOCUMENT_NAME_ORIGINAL, MODEL_NAME));
final Decision decision3 = new Decision();
decision3.setExpression(makeTopLevelPMMLFunctionDefinition(UNAFFECTED_DOCUMENT, UNAFFECTED_MODEL));
decision1.getId().setValue(NODE1_UUID);
decision2.getId().setValue(NODE2_UUID);
decision3.getId().setValue(NODE3_UUID);
drgElements.add(decision1);
drgElements.add(decision2);
drgElements.add(decision3);
when(dmnGraphUtils.getModelDRGElements()).thenReturn(drgElements);
return Arrays.asList(decision1, decision2, decision3);
}
use of org.kie.workbench.common.dmn.api.definition.model.DRGElement in project kie-wb-common by kiegroup.
the class PMMLIncludedModelHandlerTest method setupDecisionWithNestedFunction.
private List<Decision> setupDecisionWithNestedFunction() {
final List<DRGElement> drgElements = new ArrayList<>();
final Decision decision1 = new Decision();
decision1.setExpression(makeNestedLiteralExpression());
final Decision decision2 = new Decision();
decision2.setExpression(makeNestedPMMLFunctionDefinition(DOCUMENT_NAME_ORIGINAL, MODEL_NAME));
final Decision decision3 = new Decision();
decision3.setExpression(makeNestedPMMLFunctionDefinition(UNAFFECTED_DOCUMENT, UNAFFECTED_MODEL));
drgElements.add(decision1);
drgElements.add(decision2);
drgElements.add(decision3);
when(dmnGraphUtils.getModelDRGElements()).thenReturn(drgElements);
return Arrays.asList(decision1, decision2, decision3);
}
use of org.kie.workbench.common.dmn.api.definition.model.DRGElement in project kie-wb-common by kiegroup.
the class PMMLIncludedModelHandlerTest method setupBusinessKnowledgeModelWithNestedFunction.
private List<BusinessKnowledgeModel> setupBusinessKnowledgeModelWithNestedFunction() {
final List<DRGElement> drgElements = new ArrayList<>();
final BusinessKnowledgeModel bkm1 = new BusinessKnowledgeModel();
final FunctionDefinition bkm1Function = new FunctionDefinition();
bkm1Function.setKind(FunctionDefinition.Kind.FEEL);
bkm1Function.setExpression(makeNestedLiteralExpression());
bkm1.setEncapsulatedLogic(bkm1Function);
final BusinessKnowledgeModel bkm2 = new BusinessKnowledgeModel();
final FunctionDefinition bkm2Function = new FunctionDefinition();
bkm2Function.setKind(FunctionDefinition.Kind.FEEL);
bkm2Function.setExpression(makeNestedPMMLFunctionDefinition(DOCUMENT_NAME_ORIGINAL, MODEL_NAME));
bkm2.setEncapsulatedLogic(bkm2Function);
final BusinessKnowledgeModel bkm3 = new BusinessKnowledgeModel();
final FunctionDefinition bkm3Function = new FunctionDefinition();
bkm3Function.setKind(FunctionDefinition.Kind.FEEL);
bkm3Function.setExpression(makeNestedPMMLFunctionDefinition(UNAFFECTED_DOCUMENT, UNAFFECTED_MODEL));
bkm3.setEncapsulatedLogic(bkm3Function);
drgElements.add(bkm1);
drgElements.add(bkm2);
drgElements.add(bkm3);
when(dmnGraphUtils.getModelDRGElements()).thenReturn(drgElements);
return Arrays.asList(bkm1, bkm2, bkm3);
}
use of org.kie.workbench.common.dmn.api.definition.model.DRGElement in project kie-wb-common by kiegroup.
the class PMMLIncludedModelHandlerTest method setupBusinessKnowledgeModelWithTopLevelFunction.
private List<BusinessKnowledgeModel> setupBusinessKnowledgeModelWithTopLevelFunction() {
final List<DRGElement> drgElements = new ArrayList<>();
final BusinessKnowledgeModel bkm1 = new BusinessKnowledgeModel();
final FunctionDefinition bkm1Function = new FunctionDefinition();
bkm1Function.setKind(FunctionDefinition.Kind.FEEL);
bkm1Function.setExpression(new LiteralExpression());
bkm1.setEncapsulatedLogic(bkm1Function);
final BusinessKnowledgeModel bkm2 = new BusinessKnowledgeModel();
bkm2.setEncapsulatedLogic(makeTopLevelPMMLFunctionDefinition(DOCUMENT_NAME_ORIGINAL, MODEL_NAME));
final BusinessKnowledgeModel bkm3 = new BusinessKnowledgeModel();
bkm3.setEncapsulatedLogic(makeTopLevelPMMLFunctionDefinition(UNAFFECTED_DOCUMENT, UNAFFECTED_MODEL));
bkm1.getId().setValue(NODE1_UUID);
bkm2.getId().setValue(NODE2_UUID);
bkm3.getId().setValue(NODE3_UUID);
drgElements.add(bkm1);
drgElements.add(bkm2);
drgElements.add(bkm3);
when(dmnGraphUtils.getModelDRGElements()).thenReturn(drgElements);
return Arrays.asList(bkm1, bkm2, bkm3);
}
Aggregations