From 6f88c4bd4e91728cea62505e893b0ce300baf7fc Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Thu, 7 Feb 2019 18:24:45 +0100 Subject: Ecore2Cft transformation --- .../ecore2cft/Ecore2CftTransformation.xtend | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/Ecore2CftTransformation.xtend (limited to 'Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/Ecore2CftTransformation.xtend') diff --git a/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/Ecore2CftTransformation.xtend b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/Ecore2CftTransformation.xtend new file mode 100644 index 00000000..36aac5e1 --- /dev/null +++ b/Stochastic/hu.bme.mit.inf.dslreasoner.faulttree.transformation/src/hu/bme/mit/inf/dslreasoner/faulttree/transformation/ecore2cft/Ecore2CftTransformation.xtend @@ -0,0 +1,27 @@ +package hu.bme.mit.inf.dslreasoner.faulttree.transformation.ecore2cft + +import com.google.common.collect.ImmutableList +import hu.bme.mit.inf.dslreasoner.faulttree.components.cftLanguage.TransformationDefinition +import java.util.List +import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine + +class Ecore2CftTransformation { + val List mappingHandlers + + new(TransformationDefinition transformationDefinition, ViatraQueryEngine viatraQueryEngine) { + val mappingQueries = new MappingQueries(transformationDefinition, viatraQueryEngine) + mappingHandlers = ImmutableList.copyOf(transformationDefinition.mappingDefinitions.map [ mappingDefinition | + new MappingHandler(mappingDefinition, mappingQueries) + ]) + } + + def createComponentFaultTree() { + val trace = new ComponentFaultTreeTrace + for (handler : mappingHandlers) { + handler.instantiateComponents(trace) + } + for (handler : mappingHandlers) { + handler.instantiateConnections(trace) + } + } +} -- cgit v1.2.3-54-g00ecf