summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2014-02-15 21:28:03 +0000
committerLars Wirzenius <liw@liw.fi>2014-02-15 21:28:03 +0000
commit4f2e67fec8fe5db0dd531e9cb40b89b6d055ca3c (patch)
tree121299bff40d5a3a605d499c73d8d75cebdf879e
parent9bf7d90cef7022769f61a9e3190d1f28792b38f4 (diff)
downloadobnam-4f2e67fec8fe5db0dd531e9cb40b89b6d055ca3c.tar.gz
Convert vfs.py to use StructuredError
-rw-r--r--obnamlib/vfs.py14
-rw-r--r--test-gpghome/random_seedbin600 -> 600 bytes
2 files changed, 12 insertions, 2 deletions
diff --git a/obnamlib/vfs.py b/obnamlib/vfs.py
index 680ca65e..ef643198 100644
--- a/obnamlib/vfs.py
+++ b/obnamlib/vfs.py
@@ -24,6 +24,16 @@ import urlparse
import obnamlib
+class URLSchemeAlreadyRegisteredError(obnamlib.ObnamError):
+
+ msg = 'VFS URL scheme {scheme} already registered'
+
+
+class UnknownVFSError(obnamlib.ObnamError):
+
+ msg = 'Unknown VFS type: {url}'
+
+
class VirtualFileSystem(object):
'''A virtual filesystem interface.
@@ -291,7 +301,7 @@ class VfsFactory:
def register(self, scheme, implementation, **kwargs):
if scheme in self.implementations:
- raise obnamlib.Error('URL scheme %s already registered' % scheme)
+ raise URLSchemeAlreadyRegisteredError(scheme=scheme)
self.implementations[scheme] = (implementation, kwargs)
def new(self, url, create=False):
@@ -300,7 +310,7 @@ class VfsFactory:
if scheme in self.implementations:
klass, kwargs = self.implementations[scheme]
return klass(url, create=create, **kwargs)
- raise obnamlib.Error('Unknown VFS type %s' % url)
+ raise UnknownVFSError(url=url)
class VfsTests(object): # pragma: no cover
diff --git a/test-gpghome/random_seed b/test-gpghome/random_seed
index a9ab9acd..237d34c6 100644
--- a/test-gpghome/random_seed
+++ b/test-gpghome/random_seed
Binary files differ