From 3961e8630edc5cb9f13d352383f6f7be59fdf457 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Fri, 6 Jul 2018 15:19:02 +0200 Subject: Additional packages for standalone runtime environment --- .../dslreasoner/workspace/URIBasedWorkspace.xtend | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/URIBasedWorkspace.xtend (limited to 'Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu') diff --git a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/URIBasedWorkspace.xtend b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/URIBasedWorkspace.xtend new file mode 100644 index 00000000..37db4c3f --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/URIBasedWorkspace.xtend @@ -0,0 +1,65 @@ +package hu.bme.mit.inf.dslreasoner.workspace + +import org.eclipse.emf.common.util.URI + +class URIBasedWorkspace extends ReasonerWorkspace{ + val ReasonerWorkspace delegatedWorkspace; + + new(String targetFolder, String prefix) { + super(targetFolder, prefix) + val targetFolderURI = URI.createURI(targetFolder) + if(targetFolderURI.isFile) { + delegatedWorkspace = new FileSystemWorkspace(targetFolder,prefix) + } else if(targetFolderURI.isPlatformResource){ + delegatedWorkspace = new ProjectWorkspace(targetFolder,prefix) + } else { + delegatedWorkspace = null + throw new UnsupportedOperationException('''Unknown URI: «targetFolder»''') + } + } + + override subWorkspace(String targetFolder, String prefix) { + delegatedWorkspace.subWorkspace(targetFolder,prefix) + } + + override getWorkspaceURI() { + delegatedWorkspace.getWorkspaceURI + } + + override init() { + delegatedWorkspace.init + } + + override clear() { + delegatedWorkspace.clear + } + + override protected getURI(String name) { + delegatedWorkspace.getURI(name) + } + + override getFile(String name) { + delegatedWorkspace.getFile(name) + } + + override refreshFile(String name) { + delegatedWorkspace.refreshFile(name) + } + + override protected renameFile(String name) { + delegatedWorkspace.renameFile(name) + } + + override allFiles() { + delegatedWorkspace.allFiles + } + + override writeText(String name, CharSequence content) { + delegatedWorkspace.writeText(name, content) + } + + override readText(String name) { + delegatedWorkspace.readText(name) + } + +} \ No newline at end of file -- cgit v1.2.3-54-g00ecf