blob: 350901ea8fd2fc2fcdce0ef821d918c91aeb314b (
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
29
30
31
32
33
|
package hu.bme.mit.inf.dslreasoner.application.execution
import hu.bme.mit.inf.dslreasoner.application.applicationConfiguration.PartialModelSpecification
import java.util.List
import org.eclipse.emf.common.util.URI
import org.eclipse.emf.ecore.EObject
class ModelLoader {
def List<EObject> loadModel(PartialModelSpecification specification, ScriptExecutor scriptExecutor) {
val entries = specification.entry
if (entries.size == 1) {
var URI uri
try {
uri = URI::createURI(
scriptExecutor.getFileSpecification(specification.entry.head.path).path
)
} catch (IllegalArgumentException e) {
return null
}
val resourceSet = specification.eResource.resourceSet
val resource = resourceSet.getResource(uri, true)
if (resource === null) {
} else {
return resource.allContents.toList
}
} else {
throw new UnsupportedOperationException('''Currently single partial models are supported''')
}
}
}
|