Search in sources :

Example 6 with Import

use of org.kie.dmn.model.api.Import in project drools by kiegroup.

the class ImportConverter method assignAttributes.

@Override
protected void assignAttributes(HierarchicalStreamReader reader, Object parent) {
    super.assignAttributes(reader, parent);
    Import i = (Import) parent;
    String namespace = reader.getAttribute(NAMESPACE);
    String locationUri = reader.getAttribute(LOCATION_URI);
    String importType = reader.getAttribute(IMPORT_TYPE);
    i.setNamespace(namespace);
    i.setLocationURI(locationUri);
    i.setImportType(importType);
}
Also used : TImport(org.kie.dmn.model.v1_3.TImport) Import(org.kie.dmn.model.api.Import)

Example 7 with Import

use of org.kie.dmn.model.api.Import in project drools by kiegroup.

the class ImportDMNResolverUtilTest method testLocateInNS.

@Test
public void testLocateInNS() {
    final Import i = makeImport("nsA", null, "m1");
    final List<QName> available = Arrays.asList(new QName("nsA", "m1"), new QName("nsA", "m2"), new QName("nsB", "m3"));
    final Either<String, QName> result = ImportDMNResolverUtil.resolveImportDMN(i, available, Function.identity());
    assertTrue(result.isRight());
    assertEquals(new QName("nsA", "m1"), result.getOrElse(null));
}
Also used : TImport(org.kie.dmn.model.v1_1.TImport) Import(org.kie.dmn.model.api.Import) QName(javax.xml.namespace.QName) Test(org.junit.Test)

Example 8 with Import

use of org.kie.dmn.model.api.Import in project drools by kiegroup.

the class ImportDMNResolverUtilTest method testLocateInNSAliasedBadScenario.

@Test
public void testLocateInNSAliasedBadScenario() {
    // this is a BAD scenario are in namespace `nsA` there are 2 models with the same name.
    final Import i = makeImport("nsA", "aliased", "mA");
    final List<QName> available = Arrays.asList(new QName("nsA", "mA"), new QName("nsA", "mA"), new QName("nsB", "m3"));
    final Either<String, QName> result = ImportDMNResolverUtil.resolveImportDMN(i, available, Function.identity());
    assertTrue(result.isLeft());
}
Also used : TImport(org.kie.dmn.model.v1_1.TImport) Import(org.kie.dmn.model.api.Import) QName(javax.xml.namespace.QName) Test(org.junit.Test)

Example 9 with Import

use of org.kie.dmn.model.api.Import in project drools by kiegroup.

the class ImportDMNResolverUtilTest method testLocateInNSAliased.

@Test
public void testLocateInNSAliased() {
    final Import i = makeImport("nsA", "aliased", "m1");
    final List<QName> available = Arrays.asList(new QName("nsA", "m1"), new QName("nsA", "m2"), new QName("nsB", "m3"));
    final Either<String, QName> result = ImportDMNResolverUtil.resolveImportDMN(i, available, Function.identity());
    assertTrue(result.isRight());
    assertEquals(new QName("nsA", "m1"), result.getOrElse(null));
}
Also used : TImport(org.kie.dmn.model.v1_1.TImport) Import(org.kie.dmn.model.api.Import) QName(javax.xml.namespace.QName) Test(org.junit.Test)

Example 10 with Import

use of org.kie.dmn.model.api.Import in project kie-wb-common by kiegroup.

the class DMNMarshallerImportsHelperStandaloneImpl method getImportXML.

@Override
public Map<Import, String> getImportXML(final Metadata metadata, final List<Import> imports) {
    final Map<Import, String> importXML = new HashMap<>();
    if (imports.size() > 0) {
        for (final String xml : getOtherDMNDiagramsXML(metadata)) {
            try (final StringReader sr = toStringReader(xml)) {
                final Definitions definitions = marshaller.unmarshal(sr);
                findImportByDefinitions(definitions, imports).ifPresent(anImport -> {
                    importXML.put(anImport, xml);
                });
            }
        }
    }
    return importXML;
}
Also used : Import(org.kie.dmn.model.api.Import) HashMap(java.util.HashMap) Definitions(org.kie.dmn.model.api.Definitions) StringReader(java.io.StringReader)

Aggregations

Import (org.kie.dmn.model.api.Import)42 Test (org.junit.Test)22 QName (javax.xml.namespace.QName)19 TImport (org.kie.dmn.model.v1_1.TImport)15 Definitions (org.kie.dmn.model.api.Definitions)13 HashMap (java.util.HashMap)7 DRGElement (org.kie.dmn.model.api.DRGElement)7 ItemDefinition (org.kie.dmn.model.api.ItemDefinition)6 ArrayList (java.util.ArrayList)5 BusinessKnowledgeModel (org.kie.dmn.model.api.BusinessKnowledgeModel)5 Decision (org.kie.dmn.model.api.Decision)5 PMMLDocumentMetadata (org.kie.workbench.common.dmn.api.editors.included.PMMLDocumentMetadata)5 Artifact (org.kie.dmn.model.api.Artifact)4 Association (org.kie.dmn.model.api.Association)4 BusinessContextElement (org.kie.dmn.model.api.BusinessContextElement)4 ElementCollection (org.kie.dmn.model.api.ElementCollection)4 InputData (org.kie.dmn.model.api.InputData)4 KnowledgeSource (org.kie.dmn.model.api.KnowledgeSource)4 OrganizationUnit (org.kie.dmn.model.api.OrganizationUnit)4 PerformanceIndicator (org.kie.dmn.model.api.PerformanceIndicator)4