From 4e68f98dde56239a153f000592149ef94caf4473 Mon Sep 17 00:00:00 2001 From: Petros Moisiadis Date: Tue, 17 Dec 2013 16:53:10 +0200 Subject: [PATCH] Added missing repository path/url when raising DoesNotExist and AlreadyExists exceptions --- attic/remote.py | 7 ++++--- attic/repository.py | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/attic/remote.py b/attic/remote.py index 8338f73ee..b8cefcc68 100644 --- a/attic/remote.py +++ b/attic/remote.py @@ -71,6 +71,7 @@ class RemoteRepository(object): self.name = name def __init__(self, location, create=False): + self.repository_url = '%s@%s:%s' % (location.user, location.host, location.path) self.p = None self.cache = LRUCache(256) self.to_send = b'' @@ -105,9 +106,9 @@ class RemoteRepository(object): self.id = self.call('open', (location.path, create)) except self.RPCError as e: if e.name == b'DoesNotExist': - raise Repository.DoesNotExist + raise Repository.DoesNotExist(self.repository_url) elif e.name == b'AlreadyExists': - raise Repository.AlreadyExists + raise Repository.AlreadyExists(self.repository_url) def __del__(self): self.close() @@ -247,7 +248,7 @@ class RemoteRepository(object): return res except self.RPCError as e: if e.name == b'DoesNotExist': - raise Repository.DoesNotExist + raise Repository.DoesNotExist(self.repository_url) raise def get_many(self, ids, peek=None): diff --git a/attic/repository.py b/attic/repository.py index bb4418093..0f9f4cbe8 100644 --- a/attic/repository.py +++ b/attic/repository.py @@ -41,6 +41,7 @@ class Repository(object): def __init__(self, path, create=False): + self.path = path self.io = None self.lock = None if create: @@ -216,7 +217,7 @@ class Repository(object): segment, offset = self.index[id] return self.io.read(segment, offset, id) except KeyError: - raise self.DoesNotExist + raise self.DoesNotExist(self.path) def get_many(self, ids, peek=None): for id in ids: @@ -254,7 +255,7 @@ class Repository(object): self.compact.add(segment) self.segments.setdefault(segment, 0) except KeyError: - raise self.DoesNotExist + raise self.DoesNotExist(self.path) def add_callback(self, cb, data): cb(None, None, data)