def _ReadFile(self, filename, binary): try: mode = 'rb' if binary else 'r' with open(os.path.join(self._base_path, filename), mode) as f: contents = f.read() if binary: return contents return file_system._ToUnicode(contents) except IOError: raise file_system.FileNotFoundError(filename)
def Get(self): for path, future in self._fetches: result = future.Get() if result.status_code == 404: raise file_system.FileNotFoundError(path) elif path.endswith('/'): self._value[path] = self._ListDir(result.content) elif not self._binary: self._value[path] = file_system._ToUnicode(result.content) else: self._value[path] = result.content if self._error is not None: raise self._error return self._value