2752: Reuse CollectionWriter.write_file() where possible.
authorBrett Smith <brett@curoverse.com>
Tue, 20 May 2014 15:29:44 +0000 (11:29 -0400)
committerBrett Smith <brett@curoverse.com>
Fri, 30 May 2014 14:39:51 +0000 (10:39 -0400)
sdk/python/arvados/collection.py
sdk/python/bin/arv-put

index ef9626e636c2f1f38e164777fb106dea81cb3474..71f30daa5bd55f355b282582283177bb0799ecb2 100644 (file)
@@ -179,13 +179,7 @@ class CollectionWriter(object):
                           os.path.join(stream_name, dirent),
                           max_manifest_depth-1]]
             else:
-                self.start_new_file(dirent)
-                with open(target, 'rb') as f:
-                    while True:
-                        buf = f.read(2**26)
-                        if len(buf) == 0:
-                            break
-                        self.write(buf)
+                self.write_file(target, dirent)
         self.finish_current_stream()
         map(lambda x: self.write_directory_tree(*x), todo)
 
index 1f7ad6064be7b10e0231425d4ee94fb9b8e2a614..428689a13ce1727296dcb11cc33b2215f71eb29d 100755 (executable)
@@ -185,13 +185,7 @@ for path in args.paths:
                                     max_manifest_depth=args.max_manifest_depth)
     else:
         writer.start_new_stream()
-        writer.start_new_file(args.filename or os.path.split(path)[1])
-        with open(path, 'rb') as f:
-            while True:
-                buf = f.read(2**26)
-                if len(buf) == 0:
-                    break
-                writer.write(buf)
+        writer.write_file(path, args.filename or os.path.basename(path))
 
 if args.stream:
     print writer.manifest_text(),