]> git.rkrishnan.org Git - tahoe-lafs/tahoe-lafs.git/blobdiff - src/allmydata/client.py
misc mutable-type fixes:
[tahoe-lafs/tahoe-lafs.git] / src / allmydata / client.py
index b030867bc19ef6a293df02bd42c030a401cf4e30..813ee3959a2c61ec1789e4f1537aef2325e2ce2c 100644 (file)
@@ -278,7 +278,8 @@ class Client(node.Node, pollmixin.PollMixin):
         self.history = History(self.stats_provider)
         self.terminator = Terminator()
         self.terminator.setServiceParent(self)
-        self.add_service(Uploader(helper_furl, self.stats_provider))
+        self.add_service(Uploader(helper_furl, self.stats_provider,
+                                  self.history))
         self.init_stub_client()
         self.init_blacklist()
         self.init_nodemaker()
@@ -338,19 +339,20 @@ class Client(node.Node, pollmixin.PollMixin):
         self.blacklist = Blacklist(fn)
 
     def init_nodemaker(self):
+        default = self.get_config("client", "mutable.format", default="SDMF")
+        if default.upper() == "MDMF":
+            self.mutable_file_default = MDMF_VERSION
+        else:
+            self.mutable_file_default = SDMF_VERSION
         self.nodemaker = NodeMaker(self.storage_broker,
                                    self._secret_holder,
                                    self.get_history(),
                                    self.getServiceNamed("uploader"),
                                    self.terminator,
                                    self.get_encoding_parameters(),
+                                   self.mutable_file_default,
                                    self._key_generator,
                                    self.blacklist)
-        default = self.get_config("client", "mutable.format", default="sdmf")
-        if default == "mdmf":
-            self.mutable_file_default = MDMF_VERSION
-        else:
-            self.mutable_file_default = SDMF_VERSION
 
     def get_history(self):
         return self.history
@@ -498,7 +500,7 @@ class Client(node.Node, pollmixin.PollMixin):
         # may get an opaque node if there were any problems.
         return self.nodemaker.create_from_cap(write_uri, read_uri, deep_immutable=deep_immutable, name=name)
 
-    def create_dirnode(self, initial_children={}, version=SDMF_VERSION):
+    def create_dirnode(self, initial_children={}, version=None):
         d = self.nodemaker.create_new_mutable_directory(initial_children, version=version)
         return d
 
@@ -506,11 +508,9 @@ class Client(node.Node, pollmixin.PollMixin):
         return self.nodemaker.create_immutable_directory(children, convergence)
 
     def create_mutable_file(self, contents=None, keysize=None, version=None):
-        if not version:
-            version = self.mutable_file_default
         return self.nodemaker.create_mutable_file(contents, keysize,
                                                   version=version)
 
     def upload(self, uploadable):
         uploader = self.getServiceNamed("uploader")
-        return uploader.upload(uploadable, history=self.get_history())
+        return uploader.upload(uploadable)