def decrypt_all(self, directory=None, index=None, delete_encrypted=False): directory, index = self.default_if_necessary(directory, index) # TODO: stop depending on some self vars and not others # probably separate logic from instance vars with static methods? for file in index["files"]: decrypt_file(self.key, os.path.join(directory, file["filename_enc"]), out_filename=os.path.join(directory, file["filename"])) if delete_encrypted: os.remove(os.path.join(directory, file["filename_enc"]))
def decrypt_all(self, directory=None, index=None, delete_encrypted=False): directory, index = self.default_if_necessary(directory, index) # TODO: stop depending on some self vars and not others # probably separate logic from instance vars with static methods? for file in index["files"]: decrypt_file(self.key, os.path.join(directory, file["filename_enc"]), out_filename=os.path.join(directory, file["filename"])) if delete_encrypted: os.remove(os.path.join(directory, file["filename_enc"]))
def load_index(self, directory=None): if not directory: directory = self.current_dir # init index if new dir if not os.path.isfile(index_path_enc(directory)): self.update_index(directory=directory) return empty_index(directory) # TODO: bypass temp file # TODO: use cStringIO to decrypt straight to memory decrypt_file(self.key, index_path_enc(directory)) with open(index_path(directory), 'rb') as file: index = json.load(file) os.remove(index_path(directory)) return index
def load_index(self, directory=None): if not directory: directory = self.current_dir # init index if new dir if not os.path.isfile(index_path_enc(directory)): self.update_index(directory=directory) return empty_index(directory) # TODO: bypass temp file # TODO: use cStringIO to decrypt straight to memory decrypt_file(self.key, index_path_enc(directory)) with open(index_path(directory), 'rb') as file: index = json.load(file) os.remove(index_path(directory)) return index