Search in sources :

Example 16 with Id

use of org.kie.workbench.common.dmn.api.property.dmn.Id in project kie-wb-common by kiegroup.

the class FunctionDefinitionPropertyConverter method wbFromDMN.

public static FunctionDefinition wbFromDMN(final org.kie.dmn.model.api.FunctionDefinition dmn, final BiConsumer<String, HasComponentWidths> hasComponentWidthsConsumer) {
    if (dmn == null) {
        return null;
    }
    final Id id = new Id(dmn.getId());
    final Description description = DescriptionPropertyConverter.wbFromDMN(dmn.getDescription());
    final QName typeRef = QNamePropertyConverter.wbFromDMN(dmn.getTypeRef(), dmn);
    final Expression expression = ExpressionPropertyConverter.wbFromDMN(dmn.getExpression(), hasComponentWidthsConsumer);
    final FunctionDefinition result = new FunctionDefinition(id, description, typeRef, expression);
    if (expression != null) {
        expression.setParent(result);
    }
    final FunctionKind kind = dmn.getKind();
    switch(kind) {
        case FEEL:
            result.setKind(Kind.FEEL);
            break;
        case JAVA:
            result.setKind(Kind.JAVA);
            break;
        case PMML:
            result.setKind(Kind.PMML);
            convertPMMLFunctionExpression(result);
            break;
        default:
            result.setKind(Kind.FEEL);
            break;
    }
    for (org.kie.dmn.model.api.InformationItem ii : dmn.getFormalParameter()) {
        final InformationItem iiConverted = InformationItemPropertyConverter.wbFromDMN(ii);
        if (iiConverted != null) {
            iiConverted.setParent(result);
        }
        result.getFormalParameter().add(iiConverted);
    }
    return result;
}
Also used : Description(org.kie.workbench.common.dmn.api.property.dmn.Description) LiteralExpression(org.kie.workbench.common.dmn.api.definition.model.LiteralExpression) Expression(org.kie.workbench.common.dmn.api.definition.model.Expression) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) FunctionDefinition(org.kie.workbench.common.dmn.api.definition.model.FunctionDefinition) InformationItem(org.kie.workbench.common.dmn.api.definition.model.InformationItem) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) FunctionKind(org.kie.dmn.model.api.FunctionKind)

Example 17 with Id

use of org.kie.workbench.common.dmn.api.property.dmn.Id in project kie-wb-common by kiegroup.

the class InformationItemPrimaryPropertyConverter method wbFromDMN.

public static InformationItemPrimary wbFromDMN(final InformationItem dmn, final org.kie.dmn.model.api.DMNModelInstrumentedBase parent) {
    if (dmn == null) {
        return null;
    }
    final Id id = new Id(dmn.getId());
    final Name name = new Name(getParentName(parent));
    final QName typeRef = QNamePropertyConverter.wbFromDMN(dmn.getTypeRef(), dmn);
    return new InformationItemPrimary(id, name, typeRef);
}
Also used : InformationItemPrimary(org.kie.workbench.common.dmn.api.definition.model.InformationItemPrimary) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) HasName(org.kie.workbench.common.dmn.api.definition.HasName) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) Name(org.kie.workbench.common.dmn.api.property.dmn.Name)

Example 18 with Id

use of org.kie.workbench.common.dmn.api.property.dmn.Id in project kie-wb-common by kiegroup.

the class ItemDefinitionPropertyConverter method wbFromDMN.

public static ItemDefinition wbFromDMN(final org.kie.dmn.model.api.ItemDefinition dmn) {
    if (dmn == null) {
        return null;
    }
    final Id id = new Id(dmn.getId());
    final Name name = new Name(dmn.getName());
    final Description description = wbDescriptionFromDMN(dmn);
    final QName typeRef = wbTypeRefFromDMN(dmn);
    final String typeLanguage = dmn.getTypeLanguage();
    final boolean isCollection = dmn.isIsCollection();
    final ItemDefinition wb = new ItemDefinition(id, description, name, typeRef, null, null, typeLanguage, isCollection, false);
    setUnaryTests(wb, dmn);
    setItemComponent(wb, dmn);
    return wb;
}
Also used : Description(org.kie.workbench.common.dmn.api.property.dmn.Description) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) ItemDefinition(org.kie.workbench.common.dmn.api.definition.model.ItemDefinition) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) Name(org.kie.workbench.common.dmn.api.property.dmn.Name)

Example 19 with Id

use of org.kie.workbench.common.dmn.api.property.dmn.Id in project kie-wb-common by kiegroup.

the class ListPropertyConverter method wbFromDMN.

public static List wbFromDMN(final org.kie.dmn.model.api.List dmn, final BiConsumer<String, HasComponentWidths> hasComponentWidthsConsumer) {
    final Id id = new Id(dmn.getId());
    final Description description = DescriptionPropertyConverter.wbFromDMN(dmn.getDescription());
    QName typeRef = QNamePropertyConverter.wbFromDMN(dmn.getTypeRef(), dmn);
    final java.util.List<HasExpression> expression = new ArrayList<>();
    final List result = new List(id, description, typeRef, expression);
    for (org.kie.dmn.model.api.Expression e : dmn.getExpression()) {
        final Expression eConverted = ExpressionPropertyConverter.wbFromDMN(e, 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;
}
Also used : HasExpression(org.kie.workbench.common.dmn.api.definition.HasExpression) Description(org.kie.workbench.common.dmn.api.property.dmn.Description) QName(org.kie.workbench.common.dmn.api.property.dmn.QName) ArrayList(java.util.ArrayList) HasExpression(org.kie.workbench.common.dmn.api.definition.HasExpression) Expression(org.kie.workbench.common.dmn.api.definition.model.Expression) List(org.kie.workbench.common.dmn.api.definition.model.List) ArrayList(java.util.ArrayList) Id(org.kie.workbench.common.dmn.api.property.dmn.Id)

Example 20 with Id

use of org.kie.workbench.common.dmn.api.property.dmn.Id in project kie-wb-common by kiegroup.

the class InputClauseUnaryTestsPropertyConverter method wbFromDMN.

public static InputClauseUnaryTests wbFromDMN(final org.kie.dmn.model.api.UnaryTests dmn) {
    if (dmn == null) {
        return null;
    }
    final Id id = new Id(dmn.getId());
    final QName key = new QName(DMNModelInstrumentedBase.Namespace.KIE.getUri(), ConstraintType.CONSTRAINT_KEY, DMNModelInstrumentedBase.Namespace.KIE.getPrefix());
    final String constraintString = dmn.getAdditionalAttributes().getOrDefault(key, "");
    final ConstraintType constraint = ConstraintType.fromString(constraintString);
    final InputClauseUnaryTests result = new InputClauseUnaryTests(id, new Text(dmn.getText()), constraint);
    return result;
}
Also used : QName(javax.xml.namespace.QName) ConstraintType(org.kie.workbench.common.dmn.api.definition.model.ConstraintType) Text(org.kie.workbench.common.dmn.api.property.dmn.Text) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) InputClauseUnaryTests(org.kie.workbench.common.dmn.api.definition.model.InputClauseUnaryTests)

Aggregations

Id (org.kie.workbench.common.dmn.api.property.dmn.Id)173 Description (org.kie.workbench.common.dmn.api.property.dmn.Description)102 Test (org.junit.Test)78 Name (org.kie.workbench.common.dmn.api.property.dmn.Name)74 QName (org.kie.workbench.common.dmn.api.property.dmn.QName)59 Text (org.kie.workbench.common.dmn.api.property.dmn.Text)30 Node (org.kie.workbench.common.stunner.core.graph.Node)29 View (org.kie.workbench.common.stunner.core.graph.content.view.View)29 StylingSet (org.kie.workbench.common.dmn.api.property.styling.StylingSet)23 QName (javax.xml.namespace.QName)20 GeneralRectangleDimensionsSet (org.kie.workbench.common.dmn.api.property.dimensions.GeneralRectangleDimensionsSet)18 Decision (org.kie.workbench.common.dmn.api.definition.model.Decision)17 ArrayList (java.util.ArrayList)16 DMNDiagramElement (org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement)15 DRGElement (org.kie.workbench.common.dmn.api.definition.model.DRGElement)15 BindableAdapterUtils.getDefinitionId (org.kie.workbench.common.stunner.core.definition.adapter.binding.BindableAdapterUtils.getDefinitionId)15 InformationItemPrimary (org.kie.workbench.common.dmn.api.definition.model.InformationItemPrimary)14 Diagram (org.kie.workbench.common.stunner.core.diagram.Diagram)14 Expression (org.kie.workbench.common.dmn.api.definition.model.Expression)13 List (java.util.List)11