public class DMNCompilerImpl extends Object implements org.kie.dmn.api.core.DMNCompiler
Constructor and Description |
---|
DMNCompilerImpl() |
DMNCompilerImpl(org.kie.dmn.api.core.DMNCompilerConfiguration dmnCompilerConfig) |
Modifier and Type | Method and Description |
---|---|
org.kie.dmn.api.core.DMNModel |
compile(org.kie.dmn.model.api.Definitions dmndefs,
Collection<org.kie.dmn.api.core.DMNModel> dmnModels) |
org.kie.dmn.api.core.DMNModel |
compile(Reader source,
Collection<org.kie.dmn.api.core.DMNModel> dmnModels) |
org.kie.dmn.api.core.DMNModel |
compile(org.kie.api.io.Resource resource,
Collection<org.kie.dmn.api.core.DMNModel> dmnModels) |
org.kie.dmn.api.core.DMNCompilerConfiguration |
getDmnCompilerConfig() |
DMNEvaluatorCompiler |
getEvaluatorCompiler() |
static String |
getId(org.kie.dmn.model.api.DMNElementReference er)
For the purpose of Compilation, in the DMNModel the DRGElements are stored with their full ID, so an ElementReference might reference in two forms:
- #id (a local to the model ID)
- namespace#id (an imported DRGElement ID)
This method now returns in the first case the proper ID, while leave unchanged in the latter case, in order for the ID to be reconciliable on the DMNModel.
|
org.kie.dmn.api.marshalling.DMNMarshaller |
getMarshaller() |
static QName |
getNamespaceAndName(org.kie.dmn.model.api.DMNModelInstrumentedBase localElement,
Map<String,QName> importAliases,
QName typeRef)
Given a typeRef in the form of prefix:localname or importalias.localname, resolves namespace and localname appropriately.
|
List<org.kie.dmn.api.marshalling.DMNExtensionRegister> |
getRegisteredExtensions() |
void |
linkRequirements(DMNModelImpl model,
DMNBaseNode node) |
org.kie.dmn.api.core.DMNType |
resolveTypeRef(DMNModelImpl dmnModel,
org.kie.dmn.model.api.NamedElement model,
org.kie.dmn.model.api.DMNModelInstrumentedBase localElement,
QName typeRef)
Resolve the QName typeRef accordingly to definition of builtin (FEEL) types, local model ItemDef or imported definitions.
|
public DMNCompilerImpl()
public DMNCompilerImpl(org.kie.dmn.api.core.DMNCompilerConfiguration dmnCompilerConfig)
public org.kie.dmn.api.core.DMNModel compile(org.kie.api.io.Resource resource, Collection<org.kie.dmn.api.core.DMNModel> dmnModels)
compile
in interface org.kie.dmn.api.core.DMNCompiler
public org.kie.dmn.api.core.DMNModel compile(Reader source, Collection<org.kie.dmn.api.core.DMNModel> dmnModels)
compile
in interface org.kie.dmn.api.core.DMNCompiler
public org.kie.dmn.api.marshalling.DMNMarshaller getMarshaller()
public org.kie.dmn.api.core.DMNModel compile(org.kie.dmn.model.api.Definitions dmndefs, Collection<org.kie.dmn.api.core.DMNModel> dmnModels)
compile
in interface org.kie.dmn.api.core.DMNCompiler
public void linkRequirements(DMNModelImpl model, DMNBaseNode node)
public static String getId(org.kie.dmn.model.api.DMNElementReference er)
public org.kie.dmn.api.core.DMNType resolveTypeRef(DMNModelImpl dmnModel, org.kie.dmn.model.api.NamedElement model, org.kie.dmn.model.api.DMNModelInstrumentedBase localElement, QName typeRef)
public static QName getNamespaceAndName(org.kie.dmn.model.api.DMNModelInstrumentedBase localElement, Map<String,QName> importAliases, QName typeRef)
feel:string
would be resolved as http://www.omg.org/spec/FEEL/20140401, string
.
myimport.tPerson
assuming an external model namespace as "http://drools.org" would be resolved as http://drools.org, tPerson
.localElement
- the local element is used to determine the namespace from the prefix if present, as in the form prefix:localnameimportAliases
- the map of import aliases is used to determine the namespace, as in the form importalias.localnametypeRef
- the typeRef to be resolved.public org.kie.dmn.api.core.DMNCompilerConfiguration getDmnCompilerConfig()
public List<org.kie.dmn.api.marshalling.DMNExtensionRegister> getRegisteredExtensions()
public DMNEvaluatorCompiler getEvaluatorCompiler()
Copyright © 2001–2018 JBoss by Red Hat. All rights reserved.