Class DMNTypeServiceImpl
- java.lang.Object
-
- org.drools.workbench.screens.scenariosimulation.backend.server.AbstractKieContainerService
-
- org.drools.workbench.screens.scenariosimulation.backend.server.DMNTypeServiceImpl
-
- All Implemented Interfaces:
org.drools.workbench.screens.scenariosimulation.service.DMNTypeService
@ApplicationScoped public class DMNTypeServiceImpl extends AbstractKieContainerService implements org.drools.workbench.screens.scenariosimulation.service.DMNTypeService
-
-
Constructor Summary
Constructors Constructor Description DMNTypeServiceImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcheckTypeSupport(org.kie.dmn.api.core.DMNType type, org.drools.workbench.screens.scenariosimulation.backend.server.DMNTypeServiceImpl.ErrorHolder errorHolder, String fullPropertyPath)Recursively visit a compositeDMNTypeto eventually detect and add errors to givenErrorHolderprotected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateFactModelTreeForCollection(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited)Creates aFactModelTreeforDMNTypewhereDMNType.isCollection()==trueprotected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateFactModelTreeForComposite(Map<String,List<String>> genericTypeInfoMap, String name, String importPrefix, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited)Creates aFactModelTreeforDMNTypewhereDMNType.isComposite()==trueprotected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateFactModelTreeForGenericType(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, String propertyName, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited)Creates aFactModelTreeforDMNTypeprotected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateFactModelTreeForNoCollection(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, String propertyName, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited)Creates aFactModelTreeforDMNTypewhereDMNType.isCollection()!protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateFactModelTreeForSimple(String factName, String importPrefix, String typeName, String propertyClass, Map<String,List<String>> genericTypeInfoMap, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType)Creates aFactModelTreeforDMNTypewhereDMNType.isComposite()!protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTreecreateTopLevelFactModelTree(String factName, String importPrefix, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType)This method is the entry point forFactModelTree.org.drools.workbench.screens.scenariosimulation.model.DMNMetadatagetDMNMetadata(org.uberfire.backend.vfs.Path path, String dmnPath)org.kie.dmn.api.core.DMNModelgetDMNModel(org.uberfire.backend.vfs.Path path, String dmnPath)org.kie.dmn.api.core.DMNRuntimegetDMNRuntime(org.uberfire.backend.vfs.Path path)voidinitializeNameAndNamespace(org.drools.scenariosimulation.api.model.Settings settings, org.uberfire.backend.vfs.Path path, String dmnPath)protected voidinternalCheckTypeSupport(org.kie.dmn.api.core.DMNType type, boolean alreadyInCollection, org.drools.workbench.screens.scenariosimulation.backend.server.DMNTypeServiceImpl.ErrorHolder errorHolder, String fullPropertyPath, Set<String> alreadyVisited)org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTupleretrieveFactModelTuple(org.uberfire.backend.vfs.Path path, String dmnPath)-
Methods inherited from class org.drools.workbench.screens.scenariosimulation.backend.server.AbstractKieContainerService
getKieContainer
-
-
-
-
Method Detail
-
retrieveFactModelTuple
public org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTuple retrieveFactModelTuple(org.uberfire.backend.vfs.Path path, String dmnPath)- Specified by:
retrieveFactModelTuplein interfaceorg.drools.workbench.screens.scenariosimulation.service.DMNTypeService
-
initializeNameAndNamespace
public void initializeNameAndNamespace(org.drools.scenariosimulation.api.model.Settings settings, org.uberfire.backend.vfs.Path path, String dmnPath)- Specified by:
initializeNameAndNamespacein interfaceorg.drools.workbench.screens.scenariosimulation.service.DMNTypeService
-
getDMNMetadata
public org.drools.workbench.screens.scenariosimulation.model.DMNMetadata getDMNMetadata(org.uberfire.backend.vfs.Path path, String dmnPath)- Specified by:
getDMNMetadatain interfaceorg.drools.workbench.screens.scenariosimulation.service.DMNTypeService
-
getDMNModel
public org.kie.dmn.api.core.DMNModel getDMNModel(org.uberfire.backend.vfs.Path path, String dmnPath)
-
getDMNRuntime
public org.kie.dmn.api.core.DMNRuntime getDMNRuntime(org.uberfire.backend.vfs.Path path)
-
createTopLevelFactModelTree
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createTopLevelFactModelTree(String factName, String importPrefix, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType) throws WrongDMNTypeException
This method is the entry point forFactModelTree. It is the one to be called from the very top levelDMNType- Parameters:
factName-type-hiddenFacts-fmType-- Returns:
- Throws:
WrongDMNTypeException
-
createFactModelTreeForCollection
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createFactModelTreeForCollection(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited) throws WrongDMNTypeException
Creates aFactModelTreeforDMNTypewhereDMNType.isCollection()==true- Parameters:
factName-type-hiddenFacts-fmType-- Returns:
- Throws:
WrongDMNTypeException- ifDMNType.isCollection()!=true
-
createFactModelTreeForNoCollection
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createFactModelTreeForNoCollection(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, String propertyName, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited) throws WrongDMNTypeException
Creates aFactModelTreeforDMNTypewhereDMNType.isCollection()!=true- Parameters:
propertyName-fullPropertyPath-type-hiddenFacts-fmType-- Returns:
- Throws:
WrongDMNTypeException- ifDMNType.isCollection()==true
-
createFactModelTreeForGenericType
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createFactModelTreeForGenericType(Map<String,List<String>> genericTypeInfoMap, String factName, String importPrefix, String propertyName, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited) throws WrongDMNTypeException
Creates aFactModelTreeforDMNType- Parameters:
propertyName-fullPropertyPath-type-hiddenFacts-fmType-- Returns:
- Throws:
WrongDMNTypeException
-
createFactModelTreeForSimple
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createFactModelTreeForSimple(String factName, String importPrefix, String typeName, String propertyClass, Map<String,List<String>> genericTypeInfoMap, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType)
Creates aFactModelTreeforDMNTypewhereDMNType.isComposite()!=true. ReturnedFactModelTreewill have only one single property, whose name is VALUE and whose value is the given propertyClass- Parameters:
genericTypeInfoMap-factName-propertyClass-fmType-- Returns:
-
createFactModelTreeForComposite
protected org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree createFactModelTreeForComposite(Map<String,List<String>> genericTypeInfoMap, String name, String importPrefix, String fullPropertyPath, org.kie.dmn.api.core.DMNType type, SortedMap<String,org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree> hiddenFacts, org.drools.workbench.screens.scenariosimulation.model.typedescriptor.FactModelTree.Type fmType, List<String> alreadyVisited) throws WrongDMNTypeException
Creates aFactModelTreeforDMNTypewhereDMNType.isComposite()==true- Parameters:
name-fullPropertyPath-type-hiddenFacts-fmType-- Throws:
WrongDMNTypeException- ifDMNType.isComposite()!=true
-
checkTypeSupport
protected void checkTypeSupport(org.kie.dmn.api.core.DMNType type, org.drools.workbench.screens.scenariosimulation.backend.server.DMNTypeServiceImpl.ErrorHolder errorHolder, String fullPropertyPath)Recursively visit a compositeDMNTypeto eventually detect and add errors to givenErrorHolder- Parameters:
type-errorHolder-fullPropertyPath-
-
-