From 2f91724b6eafea3636f125ba25e9814233bcc24a Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Sat, 24 Feb 2018 18:39:06 -0500 Subject: Project workspace folder structure generation patch --- .../dslreasoner/workspace/ProjectWorkspace.xtend | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf') diff --git a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/ProjectWorkspace.xtend b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/ProjectWorkspace.xtend index a1560258..c7e4dcbf 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/ProjectWorkspace.xtend +++ b/Framework/hu.bme.mit.inf.dslreasoner.logic.model/src/hu/bme/mit/inf/dslreasoner/workspace/ProjectWorkspace.xtend @@ -22,11 +22,11 @@ class ProjectWorkspace extends ReasonerWorkspace{ } override protected getURI(String name) { - URI.createPlatformResourceURI(targetFolder + "/" + prefix + name,true); + URI.createURI(targetFolder + "/" + prefix + name,true); } def protected getDirUri() { - URI.createPlatformResourceURI(targetFolder,true) + URI.createURI(targetFolder,true) } override getWorkspaceURI() { @@ -35,7 +35,13 @@ class ProjectWorkspace extends ReasonerWorkspace{ override initAndClear() { target = ResourcesPlugin.workspace.root - for(nameSegment : dirUri.segments) { + + val segments = if(dirUri.platformResource) { + dirUri.segments.subList(1,dirUri.segments.size) + } else { + throw new UnsupportedOperationException('''Only platform resources are supported, but recieved: "«dirUri»"!''') + } + for(nameSegment : segments) { target = createContainer(target,nameSegment) } target.members.forEach[delete(false,monitor)] @@ -55,16 +61,16 @@ class ProjectWorkspace extends ReasonerWorkspace{ def protected dispatch createContainer(IProject root, String name) { val folder = root.getFolder(name); - if(folder.exists) { - folder.create(false,true,monitor) + if(!folder.exists) { + folder.create(true,true,monitor) } return folder } def protected dispatch createContainer(IFolder root, String name) { val folder = root.getFolder(name); - if(folder.exists) { - folder.create(false,true,monitor) + if(!folder.exists) { + folder.create(true,true,monitor) } return folder } @@ -100,7 +106,7 @@ class ProjectWorkspace extends ReasonerWorkspace{ } override subWorkspace(String targetFolder, String prefix) { - throw new UnsupportedOperationException("TODO: auto-generated method stub") + return new ProjectWorkspace(this.targetFolder+"/"+targetFolder,this.prefix + prefix); } override allFiles() { -- cgit v1.2.3-54-g00ecf