1
0
Fork 0
mirror of https://github.com/borgbackup/borg.git synced 2025-02-01 12:09:10 +00:00

repository: add store_move for soft-delete

This commit is contained in:
Thomas Waldmann 2024-11-02 11:33:31 +01:00
parent c4635690e3
commit 179aadc5cc
No known key found for this signature in database
GPG key ID: 243ACFA951F78E01
2 changed files with 9 additions and 0 deletions

View file

@ -180,6 +180,7 @@ class RepositoryServer: # pragma: no cover
"store_load",
"store_store",
"store_delete",
"store_move",
)
def __init__(self, restrict_to_paths, restrict_to_repositories, append_only, storage_quota, use_socket):
@ -1093,6 +1094,10 @@ def store_store(self, name, value):
def store_delete(self, name):
"""actual remoting is done via self.call in the @api decorator"""
@api(since=parse_version("2.0.0b13")) # TODO -> b14
def store_move(self, name, new_name=None, *, delete=False, undelete=False, deleted=False):
"""actual remoting is done via self.call in the @api decorator"""
class RepositoryNoCache:
"""A not caching Repository wrapper, passes through to repository.

View file

@ -537,3 +537,7 @@ def store_store(self, name, value):
def store_delete(self, name):
self._lock_refresh()
return self.store.delete(name)
def store_move(self, name, new_name=None, *, delete=False, undelete=False, deleted=False):
self._lock_refresh()
return self.store.move(name, new_name, delete=delete, undelete=undelete, deleted=deleted)