blob: 062de3df53764f692ffea052519bb3d1b9d5d5b9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
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<MappingHandler> 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)
}
trace.componentFaultTree
}
}
|