diff options
author | 2018-02-24 20:56:42 -0500 | |
---|---|---|
committer | 2018-02-24 20:56:42 -0500 | |
commit | 5f1117a84bc3c24ec71d6bcb9d3f2badffca28c2 (patch) | |
tree | 8f0b68af71ae18429c134a533b9951ccd21af558 /Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend | |
parent | Application configuration update (diff) | |
download | VIATRA-Generator-5f1117a84bc3c24ec71d6bcb9d3f2badffca28c2.tar.gz VIATRA-Generator-5f1117a84bc3c24ec71d6bcb9d3f2badffca28c2.tar.zst VIATRA-Generator-5f1117a84bc3c24ec71d6bcb9d3f2badffca28c2.zip |
Execution update
Diffstat (limited to 'Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend')
-rw-r--r-- | Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend | 55 |
1 files changed, 53 insertions, 2 deletions
diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend index c783c9b9..7bd73792 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend +++ b/Application/hu.bme.mit.inf.dslreasoner.application/src/hu/bme/mit/inf/dslreasoner/application/execution/ScriptExecutor.xtend | |||
@@ -3,22 +3,29 @@ package hu.bme.mit.inf.dslreasoner.application.execution | |||
3 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigReference | 3 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigReference |
4 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification | 4 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigSpecification |
5 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript | 5 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ConfigurationScript |
6 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.CustomEntry | ||
7 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentationEntry | ||
8 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.EPackageImport | ||
6 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileReference | 9 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileReference |
7 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileSpecification | 10 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.FileSpecification |
8 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GenerationTask | 11 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GenerationTask |
9 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GraphPatternReference | 12 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.GraphPatternReference |
13 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MemoryEntry | ||
10 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelReference | 14 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelReference |
11 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelSpecification | 15 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.MetamodelSpecification |
12 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelReference | 16 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelReference |
13 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelSpecification | 17 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelSpecification |
14 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PatternSpecification | 18 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PatternSpecification |
19 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.RuntimeEntry | ||
15 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeReference | 20 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeReference |
16 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeSpecification | 21 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.ScopeSpecification |
17 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.Task | 22 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.Task |
18 | import hu.bme.mit.inf.dslreasoner.application.execution.util.ApplicationConfigurationParser | 23 | import hu.bme.mit.inf.dslreasoner.application.execution.util.ApplicationConfigurationParser |
24 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.DocumentationLevel | ||
19 | import java.util.LinkedHashMap | 25 | import java.util.LinkedHashMap |
26 | import java.util.Optional | ||
20 | import org.eclipse.emf.common.util.URI | 27 | import org.eclipse.emf.common.util.URI |
21 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.EPackageImport | 28 | import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.DocumentLevelSpecification |
22 | 29 | ||
23 | class ScriptExecutor { | 30 | class ScriptExecutor { |
24 | val parser = new ApplicationConfigurationParser | 31 | val parser = new ApplicationConfigurationParser |
@@ -140,11 +147,55 @@ class ScriptExecutor { | |||
140 | val map = new LinkedHashMap | 147 | val map = new LinkedHashMap |
141 | 148 | ||
142 | if(config != null) { | 149 | if(config != null) { |
143 | for(entry : config.entries) { | 150 | for(entry : config.entries.filter(CustomEntry)) { |
144 | map.put(entry.key,entry.value) | 151 | map.put(entry.key,entry.value) |
145 | } | 152 | } |
146 | } | 153 | } |
147 | 154 | ||
148 | return map | 155 | return map |
149 | } | 156 | } |
157 | def getRuntimeLimit(ConfigSpecification config) { | ||
158 | if(config === null) { | ||
159 | return Optional::empty | ||
160 | } else { | ||
161 | val runtimeEntry = config.entries.filter(RuntimeEntry).head | ||
162 | if(runtimeEntry!==null) { | ||
163 | return Optional::of(runtimeEntry.millisecLimit) | ||
164 | } else { | ||
165 | return Optional::empty | ||
166 | } | ||
167 | } | ||
168 | } | ||
169 | def getMemoryLimit(ConfigSpecification config) { | ||
170 | if(config === null) { | ||
171 | return Optional::empty | ||
172 | } else { | ||
173 | val memoryEntry = config.entries.filter(MemoryEntry).head | ||
174 | if(memoryEntry!==null) { | ||
175 | return Optional::of(memoryEntry.megabyteLimit) | ||
176 | } else { | ||
177 | return Optional::empty | ||
178 | } | ||
179 | } | ||
180 | } | ||
181 | def getDocumentation(ConfigSpecification config) { | ||
182 | if(config === null) { | ||
183 | return Optional::empty | ||
184 | } else { | ||
185 | val documentationEntry = config.entries.filter(DocumentationEntry).head | ||
186 | if(documentationEntry!==null) { | ||
187 | val DocumentLevelSpecification value = documentationEntry.level | ||
188 | val translatedValue = if(value===DocumentLevelSpecification::FULL) { | ||
189 | DocumentationLevel::FULL | ||
190 | } else if(value===DocumentLevelSpecification::NORMAL) { | ||
191 | DocumentationLevel::NORMAL | ||
192 | } else if(value===DocumentLevelSpecification::NONE) { | ||
193 | DocumentationLevel::NONE | ||
194 | } else { | ||
195 | throw new UnsupportedOperationException('''Unable to translate documentation level "«value»"!''') | ||
196 | } | ||
197 | return Optional::of(translatedValue) | ||
198 | } | ||
199 | } | ||
200 | } | ||
150 | } \ No newline at end of file | 201 | } \ No newline at end of file |