aboutsummaryrefslogtreecommitdiffstats
path: root/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend
diff options
context:
space:
mode:
Diffstat (limited to 'Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend')
-rw-r--r--Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend29
1 files changed, 17 insertions, 12 deletions
diff --git a/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend b/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend
index c1f2ec4c..b78165dc 100644
--- a/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend
+++ b/Solvers/Alloy-Solver/hu.bme.mit.inf.dlsreasoner.alloy.reasoner/src/hu/bme/mit/inf/dlsreasoner/alloy/reasoner/builder/AlloyHandler.xtend
@@ -1,5 +1,7 @@
1package hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder 1package hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder
2 2
3import com.google.common.util.concurrent.SimpleTimeLimiter
4import com.google.common.util.concurrent.UncheckedTimeoutException
3import edu.mit.csail.sdg.alloy4.A4Reporter 5import edu.mit.csail.sdg.alloy4.A4Reporter
4import edu.mit.csail.sdg.alloy4.Err 6import edu.mit.csail.sdg.alloy4.Err
5import edu.mit.csail.sdg.alloy4.ErrorWarning 7import edu.mit.csail.sdg.alloy4.ErrorWarning
@@ -7,25 +9,24 @@ import edu.mit.csail.sdg.alloy4compiler.ast.Command
7import edu.mit.csail.sdg.alloy4compiler.parser.CompModule 9import edu.mit.csail.sdg.alloy4compiler.parser.CompModule
8import edu.mit.csail.sdg.alloy4compiler.parser.CompUtil 10import edu.mit.csail.sdg.alloy4compiler.parser.CompUtil
9import edu.mit.csail.sdg.alloy4compiler.translator.A4Options 11import edu.mit.csail.sdg.alloy4compiler.translator.A4Options
12import edu.mit.csail.sdg.alloy4compiler.translator.A4Options.SatSolver
10import edu.mit.csail.sdg.alloy4compiler.translator.A4Solution 13import edu.mit.csail.sdg.alloy4compiler.translator.A4Solution
11import edu.mit.csail.sdg.alloy4compiler.translator.TranslateAlloyToKodkod 14import edu.mit.csail.sdg.alloy4compiler.translator.TranslateAlloyToKodkod
15import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.AlloyBackendSolver
16import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.AlloySolverConfiguration
17import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument
18import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicSolverConfiguration
12import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace 19import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace
20import java.util.ArrayList
21import java.util.HashMap
13import java.util.LinkedList 22import java.util.LinkedList
14import java.util.List 23import java.util.List
15import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.AlloyBackendSolver
16import org.eclipse.xtend.lib.annotations.Data
17import java.util.Map 24import java.util.Map
18import java.util.HashMap
19import edu.mit.csail.sdg.alloy4compiler.translator.A4Options.SatSolver
20import org.eclipse.emf.common.CommonPlugin
21import java.util.ArrayList
22import hu.bme.mit.inf.dslreasoner.alloyLanguage.ALSDocument
23import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.AlloySolverConfiguration
24import com.google.common.util.concurrent.SimpleTimeLimiter
25import java.util.concurrent.Callable 25import java.util.concurrent.Callable
26import java.util.concurrent.TimeUnit 26import java.util.concurrent.TimeUnit
27import com.google.common.util.concurrent.UncheckedTimeoutException 27import org.eclipse.emf.common.CommonPlugin
28import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicSolverConfiguration 28import org.eclipse.xtend.lib.annotations.Data
29import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel
29 30
30class AlloySolverException extends Exception{ 31class AlloySolverException extends Exception{
31 new(String s) { super(s) } 32 new(String s) { super(s) }
@@ -48,6 +49,10 @@ class AlloyHandler {
48 //val fileName = "problem.als" 49 //val fileName = "problem.als"
49 50
50 public def callSolver(ALSDocument problem, ReasonerWorkspace workspace, AlloySolverConfiguration configuration, String path, String alloyCode) { 51 public def callSolver(ALSDocument problem, ReasonerWorkspace workspace, AlloySolverConfiguration configuration, String path, String alloyCode) {
52 val writeToFile = (
53 configuration.documentationLevel===DocumentationLevel::NORMAL ||
54 configuration.documentationLevel===DocumentationLevel::FULL)
55
51 //Prepare 56 //Prepare
52 57
53 val warnings = new LinkedList<String> 58 val warnings = new LinkedList<String>
@@ -78,7 +83,7 @@ class AlloyHandler {
78 // Start: Alloy -> Kodkod 83 // Start: Alloy -> Kodkod
79 val kodkodTransformStart = System.currentTimeMillis(); 84 val kodkodTransformStart = System.currentTimeMillis();
80 try { 85 try {
81 if(configuration.writeToFile) { 86 if(writeToFile) {
82 compModule = CompUtil.parseEverything_fromFile(reporter,null,path) 87 compModule = CompUtil.parseEverything_fromFile(reporter,null,path)
83 } else { 88 } else {
84 compModule = CompUtil.parseEverything_fromString(reporter,alloyCode) 89 compModule = CompUtil.parseEverything_fromString(reporter,alloyCode)