from typing import List from selfprivacy_api.models.backup.snapshot import Snapshot from selfprivacy_api.backup.backuppers import AbstractBackupper from selfprivacy_api.graphql.common_types.backup import BackupReason class NoneBackupper(AbstractBackupper): """A backupper that does nothing""" def is_initted(self, repo_name: str = "") -> bool: return False def set_creds(self, account: str, key: str, repo: str): pass def start_backup( self, folders: List[str], tag: str, reason: BackupReason = BackupReason.EXPLICIT ): raise NotImplementedError def get_snapshots(self) -> List[Snapshot]: """Get all snapshots from the repo""" return [] def init(self): raise NotImplementedError def erase_repo(self) -> None: """Completely empties the remote""" # this one is already empty pass def restore_from_backup(self, snapshot_id: str, folders: List[str], verify=True): """Restore a target folder using a snapshot""" raise NotImplementedError def restored_size(self, snapshot_id: str) -> int: raise NotImplementedError def forget_snapshot(self, snapshot_id): raise NotImplementedError("forget_snapshot") def forget_snapshots(self, snapshots): raise NotImplementedError("forget_snapshots")