| 20 | self.save_json_tasks(tasks=tasks) |
| 21 | |
| 22 | def load(self) -> List[FileTranscriptionTask]: |
| 23 | if os.path.exists(self.tasks_list_file_path): |
| 24 | return self.load_json_tasks() |
| 25 | |
| 26 | try: |
| 27 | with open(self.pickle_cache_file_path, "rb") as file: |
| 28 | return pickle.load(file) |
| 29 | except FileNotFoundError: |
| 30 | return [] |
| 31 | except ( |
| 32 | pickle.UnpicklingError, |
| 33 | AttributeError, |
| 34 | ValueError, |
| 35 | ): # delete corrupted cache |
| 36 | os.remove(self.pickle_cache_file_path) |
| 37 | return [] |
| 38 | |
| 39 | def load_json_tasks(self) -> List[FileTranscriptionTask]: |
| 40 | task_ids: List[int] |