summaryrefslogtreecommitdiff
path: root/swiftclient/multithreading.py
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-02-03 18:55:47 +0000
committerGerrit Code Review <review@openstack.org>2015-02-03 18:55:47 +0000
commiteb28d8aff6d6b6e985e76643bee7dbf729055c82 (patch)
treee8d2a07545e676cb5d916dfe0b217084fe57139b /swiftclient/multithreading.py
parent21473f1bc475fa69aa9d1cdd6b60cc827c4f7f1b (diff)
parentbd42c2b00d0e4a18d15fd494bd9b9101742c4a37 (diff)
downloadpython-swiftclient-eb28d8aff6d6b6e985e76643bee7dbf729055c82.tar.gz
Merge "This patch fixes downloading files to stdout."
Diffstat (limited to 'swiftclient/multithreading.py')
-rw-r--r--swiftclient/multithreading.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/swiftclient/multithreading.py b/swiftclient/multithreading.py
index 6e7f143..7ae82fa 100644
--- a/swiftclient/multithreading.py
+++ b/swiftclient/multithreading.py
@@ -67,6 +67,17 @@ class OutputManager(object):
self.error_print_pool.__exit__(exc_type, exc_value, traceback)
self.print_pool.__exit__(exc_type, exc_value, traceback)
+ def print_raw(self, data):
+ self.print_pool.submit(self._write, data, self.print_stream)
+
+ def _write(self, data, stream):
+ if six.PY3:
+ stream.buffer.write(data)
+ stream.flush()
+ if six.PY2:
+ stream.write(data)
+ stream.flush()
+
def print_msg(self, msg, *fmt_args):
if fmt_args:
msg = msg % fmt_args