Spaces:
Sleeping
Sleeping
| import os, json | |
| from datetime import datetime | |
| from config import WeaviateConfiguration as wvtconf | |
| class BackupData: | |
| def __init__(self, backup_id: str) -> None: | |
| self._backup_id = backup_id | |
| self._creation_date = "" | |
| self._collections = [] | |
| backup_path = os.path.join(wvtconf.BACKUP_PATH, backup_id) | |
| files = os.listdir(backup_path) | |
| if 'data.json' in files: | |
| data_path = os.path.join(backup_path, 'data.json') | |
| with open(data_path) as f: | |
| data = json.load(f) | |
| date = datetime.fromisoformat(data['creation_date']) | |
| self._creation_date = date.strftime("%d.%m.%Y %H:%M:%S") | |
| if 'objects.json' in files: | |
| objects_path = os.path.join(backup_path, 'objects.json') | |
| with open(objects_path) as f: | |
| data = json.load(f) | |
| for name, objs in data.items(): | |
| self._collections.append({ | |
| 'name': name.lower(), | |
| 'size': ('', len(objs)) | |
| }) | |
| def to_treeformat(self): | |
| return { | |
| 'id': self._backup_id.replace('backup_', ''), | |
| 'date': (self._creation_date, ''), | |
| 'collections': self._collections, | |
| } | |