From 07937ab09ec1bf8d8d0a455cf6901eece79eed17 Mon Sep 17 00:00:00 2001 From: Kota Tsuyuzaki Date: Thu, 29 Jan 2015 00:30:36 -0800 Subject: [PATCH] Use swift.common.utils.json We should use swift.common.utils.json to keep code consistency. Change-Id: Ie3420a29cfb954c4d16526023b6bff7c8a39afdc --- swift3/controllers/bucket.py | 5 ++--- swift3/controllers/multi_upload.py | 13 ++++++------- swift3/controllers/service.py | 4 ++-- swift3/subresource.py | 7 ++++--- swift3/test/unit/test_bucket.py | 2 +- swift3/test/unit/test_multi_upload.py | 2 +- swift3/test/unit/test_s3_acl.py | 2 +- swift3/test/unit/test_service.py | 8 ++++---- swift3/test/unit/test_subresource.py | 14 ++++++++------ 9 files changed, 29 insertions(+), 28 deletions(-) diff --git a/swift3/controllers/bucket.py b/swift3/controllers/bucket.py index b5c01503..edf69e4a 100644 --- a/swift3/controllers/bucket.py +++ b/swift3/controllers/bucket.py @@ -13,9 +13,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -from simplejson import loads - from swift.common.http import HTTP_OK +from swift.common.utils import json from swift3.controllers.base import Controller from swift3.controllers.acl import handle_acl_header @@ -68,7 +67,7 @@ class BucketController(Controller): resp = req.get_response(self.app, query=query) - objects = loads(resp.body) + objects = json.loads(resp.body) elem = Element('ListBucketResult') SubElement(elem, 'Name').text = req.container_name diff --git a/swift3/controllers/multi_upload.py b/swift3/controllers/multi_upload.py index e7016cd7..5d335cf8 100644 --- a/swift3/controllers/multi_upload.py +++ b/swift3/controllers/multi_upload.py @@ -42,10 +42,9 @@ upload information: Static Large Object. """ -from simplejson import loads, dumps import os -from swift.common.utils import split_path +from swift.common.utils import split_path, json from swift3.controllers.base import Controller, bucket_operation, \ object_operation @@ -171,7 +170,7 @@ class UploadsController(Controller): container = req.container_name + MULTIUPLOAD_SUFFIX resp = req.get_response(self.app, container=container, query=query) - objects = loads(resp.body) + objects = json.loads(resp.body) objects = filter(filter_max_uploads, objects) @@ -308,7 +307,7 @@ class UploadController(Controller): container = req.container_name + MULTIUPLOAD_SUFFIX resp = req.get_response(self.app, container=container, obj='', query=query) - objects = loads(resp.body) + objects = json.loads(resp.body) last_part = 0 @@ -394,7 +393,7 @@ class UploadController(Controller): resp = req.get_response(self.app, 'GET', container, '', query=query) # Iterate over the segment objects and delete them individually - objects = loads(resp.body) + objects = json.loads(resp.body) for o in objects: container = req.container_name + MULTIUPLOAD_SUFFIX req.get_response(self.app, container=container, obj=o['name']) @@ -423,7 +422,7 @@ class UploadController(Controller): container = req.container_name + MULTIUPLOAD_SUFFIX resp = req.get_response(self.app, 'GET', container, '', query=query) - objinfo = loads(resp.body) + objinfo = json.loads(resp.body) objtable = dict((o['name'], {'path': '/'.join(['', container, o['name']]), 'etag': o['hash'], @@ -463,7 +462,7 @@ class UploadController(Controller): try: # TODO: add support for versioning - resp = req.get_response(self.app, 'PUT', body=dumps(manifest), + resp = req.get_response(self.app, 'PUT', body=json.dumps(manifest), query={'multipart-manifest': 'put'}, headers=headers) except BadSwiftRequest as e: diff --git a/swift3/controllers/service.py b/swift3/controllers/service.py index ec023e73..7ae1d56a 100644 --- a/swift3/controllers/service.py +++ b/swift3/controllers/service.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -from simplejson import loads +from swift.common.utils import json from swift3.controllers.base import Controller from swift3.etree import Element, SubElement, tostring @@ -32,7 +32,7 @@ class ServiceController(Controller): """ resp = req.get_response(self.app, query={'format': 'json'}) - containers = loads(resp.body) + containers = json.loads(resp.body) containers = filter( lambda item: validate_bucket_name(item['name']), containers) diff --git a/swift3/subresource.py b/swift3/subresource.py index f1a5d153..6ea74190 100644 --- a/swift3/subresource.py +++ b/swift3/subresource.py @@ -14,7 +14,8 @@ # limitations under the License. from functools import partial -from simplejson import loads, dumps + +from swift.common.utils import json from swift3.response import InvalidArgument, MalformedACLError, \ S3NotImplemented, InvalidRequest, AccessDenied @@ -69,7 +70,7 @@ def encode_acl(resource, acl): header_value.update({"Grant": grants}) headers = {} key = sysmeta_header(resource, 'acl') - headers[key] = dumps(header_value, separators=(',', ':')) + headers[key] = json.dumps(header_value, separators=(',', ':')) return headers @@ -95,7 +96,7 @@ def decode_acl(resource, headers): return ACL(Owner(None, None), []) try: - encode_value = loads(value) + encode_value = json.loads(value) if not isinstance(encode_value, dict): return ACL(Owner(None, None), []) diff --git a/swift3/test/unit/test_bucket.py b/swift3/test/unit/test_bucket.py index 00a074aa..aeea1903 100644 --- a/swift3/test/unit/test_bucket.py +++ b/swift3/test/unit/test_bucket.py @@ -15,10 +15,10 @@ import unittest import cgi -import json from swift.common import swob from swift.common.swob import Request +from swift.common.utils import json from swift3.test.unit import Swift3TestCase from swift3.etree import Element, SubElement, fromstring, tostring diff --git a/swift3/test/unit/test_multi_upload.py b/swift3/test/unit/test_multi_upload.py index db21bf97..459e64f8 100644 --- a/swift3/test/unit/test_multi_upload.py +++ b/swift3/test/unit/test_multi_upload.py @@ -14,12 +14,12 @@ # limitations under the License. import unittest -import simplejson as json from mock import patch from urllib import quote from swift.common import swob from swift.common.swob import Request +from swift.common.utils import json from swift3.test.unit import Swift3TestCase from swift3.etree import fromstring, tostring diff --git a/swift3/test/unit/test_s3_acl.py b/swift3/test/unit/test_s3_acl.py index 91c98bd5..d6c2dab6 100644 --- a/swift3/test/unit/test_s3_acl.py +++ b/swift3/test/unit/test_s3_acl.py @@ -14,7 +14,6 @@ # limitations under the License. import unittest -import simplejson as json import functools import sys import traceback @@ -22,6 +21,7 @@ from mock import patch, MagicMock from swift.common import swob from swift.common.swob import Request +from swift.common.utils import json from swift3.etree import tostring, Element, SubElement from swift3.subresource import ACL, ACLPrivate, User, encode_acl, \ diff --git a/swift3/test/unit/test_service.py b/swift3/test/unit/test_service.py index b68e311f..05810bc1 100644 --- a/swift3/test/unit/test_service.py +++ b/swift3/test/unit/test_service.py @@ -14,11 +14,11 @@ # limitations under the License. import unittest -import simplejson from mock import patch from swift.common import swob from swift.common.swob import Request +from swift.common.utils import json from swift3.test.unit.test_s3_acl import s3acl from swift3.test.unit import Swift3TestCase @@ -34,7 +34,7 @@ class TestSwift3Service(Swift3TestCase): json_pattern = '{' + ','.join(json_pattern) + '}' json_out = [] for b in self.buckets: - name = simplejson.dumps(b[0]) + name = json.dumps(b[0]) json_out.append(json_pattern % (name, b[1], b[2])) bucket_list = '[' + ','.join(json_out) + ']' @@ -109,7 +109,7 @@ class TestSwift3Service(Swift3TestCase): json_pattern = '{' + ','.join(json_pattern) + '}' json_out = [] for b in buckets: - name = simplejson.dumps(b[0]) + name = json.dumps(b[0]) json_out.append(json_pattern % (name, b[1], b[2])) bucket_list = '[' + ','.join(json_out) + ']' @@ -145,7 +145,7 @@ class TestSwift3Service(Swift3TestCase): json_out = [] for b in buckets: - name = simplejson.dumps(b[0]) + name = json.dumps(b[0]) json_out.append(json_pattern % (name, b[1], b[2])) diff --git a/swift3/test/unit/test_subresource.py b/swift3/test/unit/test_subresource.py index 108ee450..3a56fe1d 100644 --- a/swift3/test/unit/test_subresource.py +++ b/swift3/test/unit/test_subresource.py @@ -14,7 +14,9 @@ # limitations under the License. import unittest -from simplejson import dumps, loads + +from swift.common.utils import json + from swift3.response import AccessDenied from swift3.subresource import User, AuthenticatedUsers, AllUsers, \ ACLPrivate, ACLPublicRead, ACLPublicReadWrite, ACLAuthenticatedRead, \ @@ -204,7 +206,7 @@ class TestSwift3Subresource(unittest.TestCase): 'Grant': [{'Permission': 'FULL_CONTROL', 'Grantee': 'test:tester'}]} headers = {sysmeta_header('container', 'acl'): - dumps(access_control_policy)} + json.dumps(access_control_policy)} acl = decode_acl('container', headers) self.assertEqual(type(acl), ACL) @@ -219,7 +221,7 @@ class TestSwift3Subresource(unittest.TestCase): 'Grant': [{'Permission': 'FULL_CONTROL', 'Grantee': 'test:tester'}]} headers = {sysmeta_header('object', 'acl'): - dumps(access_control_policy)} + json.dumps(access_control_policy)} acl = decode_acl('object', headers) self.assertEqual(type(acl), ACL) @@ -240,7 +242,7 @@ class TestSwift3Subresource(unittest.TestCase): acl = ACLPrivate(Owner(id='test:tester', name='test:tester')) acp = encode_acl('container', acl) - header_value = loads(acp[sysmeta_header('container', 'acl')]) + header_value = json.loads(acp[sysmeta_header('container', 'acl')]) self.assertTrue('Owner' in header_value) self.assertTrue('Grant' in header_value) @@ -251,7 +253,7 @@ class TestSwift3Subresource(unittest.TestCase): acl = ACLPrivate(Owner(id='test:tester', name='test:tester')) acp = encode_acl('object', acl) - header_value = loads(acp[sysmeta_header('object', 'acl')]) + header_value = json.loads(acp[sysmeta_header('object', 'acl')]) self.assertTrue('Owner' in header_value) self.assertTrue('Grant' in header_value) @@ -269,7 +271,7 @@ class TestSwift3Subresource(unittest.TestCase): acp = encode_acl('container', acl) header_value = acp[sysmeta_header('container', 'acl')] - header_value = loads(header_value) + header_value = json.loads(header_value) self.assertTrue('Owner' in header_value) self.assertTrue('Grant' in header_value)