diff options
Diffstat (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend')
-rw-r--r-- | Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend index 2fe69a47..32db44bc 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/SolverLoader.xtend | |||
@@ -15,6 +15,7 @@ import org.eclipse.xtext.xbase.lib.Functions.Function1 | |||
15 | import hu.bme.mit.inf.dslreasoner.visualisation.pi2graphviz.GraphvizVisualiser | 15 | import hu.bme.mit.inf.dslreasoner.visualisation.pi2graphviz.GraphvizVisualiser |
16 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.DiversityDescriptor | 16 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.DiversityDescriptor |
17 | import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder.SolverConfiguration | 17 | import hu.bme.mit.inf.dlsreasoner.alloy.reasoner.builder.SolverConfiguration |
18 | import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.RealisticGuidance | ||
18 | 19 | ||
19 | class SolverLoader { | 20 | class SolverLoader { |
20 | def loadSolver(Solver solver, Map<String, String> config) { | 21 | def loadSolver(Solver solver, Map<String, String> config) { |
@@ -130,6 +131,30 @@ class SolverLoader { | |||
130 | c.calculateObjectCreationCosts = Boolean.parseBoolean(stringValue) | 131 | c.calculateObjectCreationCosts = Boolean.parseBoolean(stringValue) |
131 | } catch(Exception e) {} | 132 | } catch(Exception e) {} |
132 | } | 133 | } |
134 | |||
135 | if(config.containsKey('realistic-guidance')){ | ||
136 | try{ | ||
137 | val stringValue = config.get('realistic-guidance'); | ||
138 | c.realisticGuidance = RealisticGuidance.valueOf(stringValue); | ||
139 | }catch(IllegalArgumentException e){ | ||
140 | console.writeError('''Illegal Guidance Name: «e.message»''') | ||
141 | } | ||
142 | } | ||
143 | |||
144 | if(config.containsKey('domain')){ | ||
145 | val stringValue = config.get('domain'); | ||
146 | c.domain = stringValue | ||
147 | } | ||
148 | |||
149 | if(config.containsKey('optional-wf')){ | ||
150 | val stringValue = config.get('optional-wf'); | ||
151 | c.isWFOptional = Boolean.parseBoolean(stringValue) | ||
152 | } | ||
153 | |||
154 | if(config.containsKey('allow-must-violations')){ | ||
155 | val stringValue = config.get('allow-must-violations'); | ||
156 | c.allowMustViolations = Boolean.parseBoolean(stringValue); | ||
157 | } | ||
133 | ] | 158 | ] |
134 | } else { | 159 | } else { |
135 | throw new UnsupportedOperationException('''Unknown solver: «solver»''') | 160 | throw new UnsupportedOperationException('''Unknown solver: «solver»''') |