def traverse_remote_tree(self, fid, path): dircontents = arlalow.fetchfile(self.fsconn, fid, 0, 1000000) directory = arlalow.parsedirectory(dircontents, fid) children = [] for entry in directory: if isdir(entry["fid"]): if entry["name"] not in [".", ".."]: childFileEntry = self.traverse_remote_tree( entry["fid"], path + "/" + entry["name"]) childFileEntry["name"] = entry["name"] childFileEntry["parent"] = fid children.append(childFileEntry) else: children.append({ "name": entry["name"], "fid": entry["fid"], "path": path + "/" + entry["name"], "parent": fid }) return { "fid": fid, "status": dircontents["status"], "children": children, "path": path + "/" }
def traverse_remote_tree(self, fid, path): dircontents = arlalow.fetchfile(self.fsconn, fid, 0, 1000000); directory = arlalow.parsedirectory(dircontents, fid) children = [] for entry in directory: if isdir(entry["fid"]): if entry["name"] not in [".", ".."]: childFileEntry = self.traverse_remote_tree(entry["fid"], path + "/" + entry["name"]) childFileEntry["name"] = entry["name"] childFileEntry["parent"] = fid children.append(childFileEntry) else: children.append({"name":entry["name"], "fid":entry["fid"], "path":path+"/"+entry["name"], "parent":fid}) return {"fid":fid, "status":dircontents["status"], "children":children, "path":path+"/"}
def getfile(self, fid, length, localfile): contents = arlalow.fetchfile(self.fsconn, fid, 0, length) localfile.write(contents["contents"]) return (contents["status"], checksumcontents(contents["contents"]))