aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElrond <elrond+mediagoblin.org@samba-tng.org>2011-07-23 15:27:02 +0200
committerElrond <elrond+mediagoblin.org@samba-tng.org>2011-08-01 23:50:39 +0200
commit93b2796c7e89e269d60db8e48bf84a0f2ca88d12 (patch)
treeca3a60dd3dd0f0ea32af54e5f71b1709d9ff8195
parent68cf996c1df17ac1f53f5fd86b71bfdfcb9f2aba (diff)
downloadmediagoblin-93b2796c7e89e269d60db8e48bf84a0f2ca88d12.tar.lz
mediagoblin-93b2796c7e89e269d60db8e48bf84a0f2ca88d12.tar.xz
mediagoblin-93b2796c7e89e269d60db8e48bf84a0f2ca88d12.zip
MountStorage: Some small fixups/changes.
1) A bit more assert. 2) Change __repr__ to use lists for the recursion parameter.
-rw-r--r--mediagoblin/storage.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/mediagoblin/storage.py b/mediagoblin/storage.py
index 3d5ce9ab..d994268b 100644
--- a/mediagoblin/storage.py
+++ b/mediagoblin/storage.py
@@ -237,6 +237,7 @@ class MountStorage(StorageInterface):
for part in rem_2:
table[part] = {}
table = table[part]
+ assert not table.has_key(None), "Huh? Already mounted?!"
table[None] = backend
def resolve_to_backend(self, filepath, extra_info = False):
@@ -272,19 +273,19 @@ class MountStorage(StorageInterface):
else:
return (res_be, res_fp)
- def __repr__(self, table = None, indent = ""):
+ def __repr__(self, table = None, indent = []):
res = []
if table is None:
res.append("MountStorage<")
table = self.mounttab
v = table.get(None)
if v:
- res.append(indent + "On this level: " + repr(v))
+ res.append(" " * len(indent) + repr(indent) + ": " + repr(v))
for k, v in table.iteritems():
if k == None:
continue
- res.append(indent + repr(k) + ":")
- res += self.__repr__(v, indent + " ")
+ res.append(" " * len(indent) + repr(k) + ":")
+ res += self.__repr__(v, indent + [k])
if table is self.mounttab:
res.append(">")
return "\n".join(res)