]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/commitdiff
Allow URIs passed in the initial JSON for t=mkdir-with-children, t=mkdir-immutable...
authordavid-sarah <david-sarah@jacaranda.org>
Sun, 11 Jul 2010 19:55:25 +0000 (12:55 -0700)
committerdavid-sarah <david-sarah@jacaranda.org>
Sun, 11 Jul 2010 19:55:25 +0000 (12:55 -0700)
src/allmydata/web/common.py

index 902d332f276a2a919af3267cdb8d43866bef8015..f2fb43cb723e9906a4efd35519875fc39add0c9b 100644 (file)
@@ -11,7 +11,8 @@ from allmydata.interfaces import ExistingChildError, NoSuchChildError, \
      EmptyPathnameComponentError, MustBeDeepImmutableError, \
      MustBeReadonlyError, MustNotBeUnknownRWError
 from allmydata.mutable.common import UnrecoverableFileError
-from allmydata.util import abbreviate # TODO: consolidate
+from allmydata.util import abbreviate
+from allmydata.util.stringutils import to_str
 
 class IOpHandleTable(Interface):
     pass
@@ -64,17 +65,14 @@ def convert_children_json(nodemaker, children_json):
     children = {}
     if children_json:
         data = simplejson.loads(children_json)
-        for (name, (ctype, propdict)) in data.iteritems():
-            name = unicode(name)
-            writecap = propdict.get("rw_uri")
-            if writecap is not None:
-                writecap = str(writecap)
-            readcap = propdict.get("ro_uri")
-            if readcap is not None:
-                readcap = str(readcap)
+        for (namex, (ctype, propdict)) in data.iteritems():
+            namex = unicode(namex)
+            writecap = to_str(propdict.get("rw_uri"))
+            readcap = to_str(propdict.get("ro_uri"))
             metadata = propdict.get("metadata", {})
-            childnode = nodemaker.create_from_cap(writecap, readcap)
-            children[name] = (childnode, metadata)
+            # name= argument is just for error reporting
+            childnode = nodemaker.create_from_cap(writecap, readcap, name=namex)
+            children[namex] = (childnode, metadata)
     return children
 
 def abbreviate_time(data):