From 4d3ed3d9354e7f158210f70eddead078df520fbb Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Thu, 7 May 2020 20:28:24 +0200 Subject: Fix check expressions in generated VIATRA --- .../viatrasolver/logic2viatra/util/ParseUtil.xtend | 29 +++++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu') diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/util/ParseUtil.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/util/ParseUtil.xtend index 8e264488..26ec7091 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/util/ParseUtil.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatra/src/hu/bme/mit/inf/dslreasoner/viatrasolver/logic2viatra/util/ParseUtil.xtend @@ -196,8 +196,20 @@ class ParseUtil { } class FixedMetamodelProvider implements IMetamodelProvider { + + static val EPACKAGE_TO_PLUGIN_MAP = #{ + PartialinterpretationPackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage", + LogicproblemPackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.logic.model", + LogiclanguagePackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.logic.model" + } + + static val EPACKAGE_TO_JAVA_PACKAGE_MAP = #{ + PartialinterpretationPackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation", + LogicproblemPackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.logic.model.logicproblem", + LogiclanguagePackage.eINSTANCE -> "hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage" + } - protected val List packages = new LinkedList + val List packages = new LinkedList new() { packages += PartialinterpretationPackage.eINSTANCE @@ -213,15 +225,24 @@ class FixedMetamodelProvider implements IMetamodelProvider { } override boolean isGeneratedCodeAvailable(EPackage ePackage, ResourceSet set) { - true + EPACKAGE_TO_PLUGIN_MAP.containsKey(ePackage) } override String getModelPluginId(EPackage ePackage, ResourceSet set) { - return "hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage" + EPACKAGE_TO_PLUGIN_MAP.get(ePackage) } override String getQualifiedClassName(EClassifier classifier, EObject context) { - classifier.name + val instanceClassName = classifier.instanceClassName + if (instanceClassName !== null) { + return instanceClassName + } + val javaPackage = EPACKAGE_TO_JAVA_PACKAGE_MAP.get(classifier.EPackage) + if (javaPackage !== null) { + javaPackage + "." + classifier.name + } else { + null + } } override loadEPackage(String uri, ResourceSet resourceSet) { -- cgit v1.2.3-54-g00ecf