summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAanand Prasad <aanand.prasad@gmail.com>2016-07-13 16:06:41 -0400
committerAanand Prasad <aanand.prasad@gmail.com>2016-07-13 17:08:17 -0400
commit43158cfe3fd9299c4c47536cefd4d683d627d6a1 (patch)
treef231d56f59128bde77e3f5e1e21ee539c7662586
parentb100666a3c4ce97d9957003a0cd77741058ef752 (diff)
downloaddocker-py-43158cfe3fd9299c4c47536cefd4d683d627d6a1.tar.gz
Move read_loop() into docker.utils.socket.read_iter()
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
-rw-r--r--docker/client.py16
-rw-r--r--docker/utils/socket.py7
2 files changed, 11 insertions, 12 deletions
diff --git a/docker/client.py b/docker/client.py
index 53cc5c2..7df587c 100644
--- a/docker/client.py
+++ b/docker/client.py
@@ -32,7 +32,7 @@ from .ssladapter import ssladapter
from .tls import TLSConfig
from .transport import UnixAdapter
from .utils import utils, check_resource, update_headers, kwargs_from_env
-from .utils.socket import read_socket, next_packet_size
+from .utils.socket import read_socket, next_packet_size, read_iter
try:
from .transport import NpipeAdapter
except ImportError:
@@ -310,20 +310,12 @@ class Client(
yield out
def _read_from_socket(self, response, stream):
- def read_loop(socket):
- n = next_packet_size(socket)
- while n > 0:
- yield read_socket(socket, n)
- n = next_packet_size(socket)
-
socket = self._get_raw_response_socket(response)
+
if stream:
- return read_loop(socket)
+ return read_iter(socket)
else:
- data = six.binary_type()
- for d in read_loop(socket):
- data += d
- return data
+ return six.binary_type().join(read_iter(socket))
def _disable_socket_timeout(self, socket):
""" Depending on the combination of python version and whether we're
diff --git a/docker/utils/socket.py b/docker/utils/socket.py
index f81d2f5..2fb1180 100644
--- a/docker/utils/socket.py
+++ b/docker/utils/socket.py
@@ -47,3 +47,10 @@ def read_data(socket, packet_size):
assert False, "Failed trying to read in the data"
data += next_data
return data
+
+
+def read_iter(socket):
+ n = next_packet_size(socket)
+ while n > 0:
+ yield read_socket(socket, n)
+ n = next_packet_size(socket)