From ea885207e2738d62861120fe8a589dd40d30a126 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Wed, 5 Jul 2017 15:00:01 +0200 Subject: Added a try-catch to detect if a query cannot be translated (because, for example, a referred class is not translated to the logic problem). --- .../src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit') diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend index d78fe45f..a4b6cc6d 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend @@ -27,7 +27,6 @@ import org.eclipse.viatra.query.runtime.api.IQuerySpecification import org.eclipse.viatra.query.runtime.emf.EMFQueryMetaContext import org.eclipse.viatra.query.runtime.emf.types.BaseEMFTypeKey import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey -import org.eclipse.viatra.query.runtime.emf.types.EClassUnscopedTransitiveInstancesKey import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey import org.eclipse.viatra.query.runtime.matchers.psystem.PBody import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable @@ -73,7 +72,11 @@ class Viatra2Logic { { val viatra2LogicTrace = new Viatra2LogicTrace for(query: queries.patterns) { - this.transformQueryHeader(query,ecore2LogicTrace,viatra2LogicTrace,config) + try { + this.transformQueryHeader(query,ecore2LogicTrace,viatra2LogicTrace,config) + } catch(IllegalArgumentException e) { + throw new IllegalArgumentException('''Unable to translate query "«query.fullyQualifiedName»".''',e) + } } for(query: queries.patterns) { this.transformQuerySpecification(query,ecore2LogicTrace,viatra2LogicTrace,config) -- cgit v1.2.3-54-g00ecf