public ISimpleFolder newFolder(string name) { var key = this.appId + "/" + name; folder = this.getAppDataFolder().newFolder(name); var simpleFolder = new SimpleFolder(folder); this.folders.set(key, simpleFolder); return(simpleFolder); }
public ISimpleFolder getFolder(string name) { var key = this.appId + "/" + name; if (this.folders.get(key) != null) { object cachedFolder = this.folders.get(key); if (cachedFolder is Exception cachedFolderException) { throw cachedFolderException; } else { return(cachedFolder as ISimpleFolder); } } Node node = null; try { // Hardening if somebody wants to retrieve '/' if (name == "/") { node = this.getAppDataFolder(); } else { var path = this.getAppDataFolderName() + "/" + this.appId + "/" + name; node = this.rootFolder.get(path); } } catch (NotFoundException e) { this.folders.set(key, e); throw e; } /** @var Folder node */ var folder = new SimpleFolder((Folder)node); this.folders.set(key, folder); return(folder); }