]> git.ipfire.org Git - pakfire.git/commitdiff
http: Move support for decoding strings into HTTP client
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 2 Dec 2016 13:06:15 +0000 (14:06 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 2 Dec 2016 13:06:15 +0000 (14:06 +0100)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/pakfire/http.py
src/pakfire/hub.py

index 36d001195430798e7876924dece7ae1c7c529949..de8065837f4f06a2fd0839bd846d887bd1f2b903 100644 (file)
@@ -164,13 +164,13 @@ class Client(object):
                        return content
 
        def _decode_content(self, type, content):
-               assert type in ("json")
+               assert type in ("ascii", "json")
 
                # Decode from bytes to string
                content = content.decode("ascii")
 
-               # Parse JSON
                try:
+                       # Parse JSON
                        if type == "json":
                                content = json.loads(content)
 
index 5c9336a5da2b97c0a297154648dbea6311fe7638..84c74cb4fe019693857a776317aec1c9a67d6331 100644 (file)
@@ -58,9 +58,7 @@ class Hub(object):
                """
                        Tests the connection
                """
-               s = self._request("/noop")
-
-               return s.decode("ascii")
+               return self._request("/noop", decode="ascii")
 
        def test_error(self, code):
                assert code >= 100 and code <= 999
@@ -90,9 +88,7 @@ class Hub(object):
                        "upload_id"  : upload_id,
                }
 
-               build_id = self._request("/builds/create", data=data)
-
-               return build_id.decode("ascii")
+               return self._request("/builds/create", data=data, decode="ascii")
 
        # Job actions
 
@@ -159,9 +155,7 @@ class FileUploader(object):
                        "hash"     : self._make_checksum("sha1", self.path),
                }
 
-               response = self.hub._request("/uploads/create", method="GET", data=data)
-
-               return response.decode("ascii")
+               return self.hub._request("/uploads/create", method="GET", decode="ascii", data=data)
 
        def _send_chunk(self, upload_id, chunk):
                """