summaryrefslogtreecommitdiff
path: root/obnamlib/fmt_ga/client.py
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2015-08-02 17:17:50 +0300
committerLars Wirzenius <liw@liw.fi>2015-08-02 17:17:50 +0300
commitbf154f2ba6b5cec13b3bf56e9488fbaa64734689 (patch)
tree09df26cca6fc368b5278b2bc0aa9af1c00641f1d /obnamlib/fmt_ga/client.py
parent8d235dc57f64f04d436cfc4c71e6846e08cefce6 (diff)
downloadobnam-bf154f2ba6b5cec13b3bf56e9488fbaa64734689.tar.gz
Move file-exists checking deeper into call stack
Diffstat (limited to 'obnamlib/fmt_ga/client.py')
-rw-r--r--obnamlib/fmt_ga/client.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/obnamlib/fmt_ga/client.py b/obnamlib/fmt_ga/client.py
index 37fb04af..12103029 100644
--- a/obnamlib/fmt_ga/client.py
+++ b/obnamlib/fmt_ga/client.py
@@ -264,17 +264,14 @@ class GAClient(object):
def set_file_key(self, gen_number, filename, key, value):
self._load_data()
-
generation = self._lookup_generation_by_gen_number(gen_number)
metadata = generation.get_file_metadata()
- if not metadata.file_exists(filename):
+ if not metadata.set_file_key(filename, key, value):
raise obnamlib.RepositoryFileDoesNotExistInGeneration(
client_name=self._client_name,
genspec=gen_number,
filename=filename)
- metadata.set_file_key(filename, key, value)
-
def get_file_chunk_ids(self, gen_number, filename):
self._load_data()
self._require_file_exists(gen_number, filename)
@@ -514,10 +511,13 @@ class GAFileMetadata(object):
self._added_files.set_file_key(filename, key, value)
if key == obnamlib.REPO_FILE_MODE:
self._flush_added_file(filename)
+ return True
else:
dir_obj, basename = self._get_mutable_dir_obj(filename)
- if dir_obj:
- dir_obj.set_file_key(basename, key, value)
+ if not dir_obj:
+ return False
+ dir_obj.set_file_key(basename, key, value)
+ return True
def _get_mutable_dir_obj(self, filename):
dir_obj, dir_path, basename = self._get_dir_obj(filename)