aboutsummaryrefslogtreecommitdiffstats
path: root/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
diff options
context:
space:
mode:
Diffstat (limited to 'Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend')
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend57
1 files changed, 0 insertions, 57 deletions
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend b/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
deleted file mode 100644
index 4a4b7a87..00000000
--- a/Domains/hu.bme.mit.inf.dslreasoner.domains.cps/src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/CpsMdeOptimiserMain.xtend
+++ /dev/null
@@ -1,57 +0,0 @@
1package hu.bme.mit.inf.dslreasoner.domains.cps.mdeo
2
3import hu.bme.mit.inf.dslreasoner.domains.cps.CpsPackage
4import hu.bme.mit.inf.dslreasoner.domains.cps.generator.CpsGenerator
5import java.io.BufferedReader
6import java.io.BufferedWriter
7import java.io.FileReader
8import java.io.FileWriter
9import java.util.Map
10import org.eclipse.emf.common.util.URI
11import org.eclipse.emf.ecore.EPackage
12import org.eclipse.emf.ecore.resource.Resource
13import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl
14import uk.ac.kcl.inf.mdeoptimiser.interfaces.cli.Run
15
16class CpsMdeOptimiserMain {
17 static val PROJECT_PATH = "."
18 static val PROBLEM_PATH = "model/problem.xmi"
19 static val MOPT_PATH = "src/hu/bme/mit/inf/dslreasoner/domains/cps/mdeo/cps.mopt"
20
21 private new() {
22 new IllegalStateException("This is a static utility class and should not be instantiated directly.")
23 }
24
25 public static def void main(String[] args) {
26 Resource.Factory.Registry.INSTANCE.extensionToFactoryMap.put(Resource.Factory.Registry.DEFAULT_EXTENSION,
27 new XMIResourceFactoryImpl)
28 EPackage.Registry.INSTANCE.put(CpsPackage.eNS_URI, CpsPackage.eINSTANCE)
29 val generator = new CpsGenerator(1, 4, 1)
30 val problem = generator.generateCpsProblem
31 problem.eResource.URI = URI.createFileURI(PROBLEM_PATH)
32 problem.eResource.save(emptyMap)
33 fixupHenshinModel("model/cps.henshin", "model/cps_fixup.henshin", #{"cps.ecore" -> CpsPackage.eNS_URI})
34 Run.main(#["-p", PROJECT_PATH, "-m", MOPT_PATH])
35 }
36
37 private def static void fixupHenshinModel(String originalPath, String outputPath, Map<String, String> remapMap) {
38 val reader = new BufferedReader(new FileReader(originalPath))
39 try {
40 val writer = new BufferedWriter(new FileWriter(outputPath))
41 try {
42 var String line
43 while ((line = reader.readLine) !== null) {
44 for (entry : remapMap.entrySet) {
45 line = line.replace(entry.key, entry.value)
46 }
47 writer.write(line)
48 writer.write("\n")
49 }
50 } finally {
51 writer.close
52 }
53 } finally {
54 reader.close
55 }
56 }
57}