summaryrefslogtreecommitdiffstats
path: root/keystone/common
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-06-28 21:19:33 +0000
committerGerrit Code Review <review@openstack.org>2012-06-28 21:19:33 +0000
commit8cd73c75cec35d4df49891ee4c36102b4c8d96ff (patch)
tree69e3b0c65a1cda4239402db0c3cbc154130230e6 /keystone/common
parent43ee35ad58deb479f36374f2132da60a8d3649df (diff)
parentcb747079d037c163349bd09814690682ae22a302 (diff)
Merge "Keystone should use openstack.common.jsonutils"
Diffstat (limited to 'keystone/common')
-rw-r--r--keystone/common/policy.py9
-rw-r--r--keystone/common/sql/core.py14
-rw-r--r--keystone/common/wsgi.py4
3 files changed, 13 insertions, 14 deletions
diff --git a/keystone/common/policy.py b/keystone/common/policy.py
index b90f98cb..ee0c0b8a 100644
--- a/keystone/common/policy.py
+++ b/keystone/common/policy.py
@@ -17,10 +17,11 @@
"""Common Policy Engine Implementation"""
-import json
import urllib
import urllib2
+from keystone.openstack.common import jsonutils
+
class NotAuthorized(Exception):
pass
@@ -109,7 +110,7 @@ class Brain(object):
@classmethod
def load_json(cls, data, default_rule=None):
"""Init a brain using json instead of a rules dictionary."""
- rules_dict = json.loads(data)
+ rules_dict = jsonutils.loads(data)
return cls(rules=rules_dict, default_rule=default_rule)
def __init__(self, rules=None, default_rule=None):
@@ -203,8 +204,8 @@ class HttpBrain(Brain):
"""
url = match % target_dict
- data = {'target': json.dumps(target_dict),
- 'credentials': json.dumps(cred_dict)}
+ data = {'target': jsonutils.dumps(target_dict),
+ 'credentials': jsonutils.dumps(cred_dict)}
post_data = urllib.urlencode(data)
f = urllib2.urlopen(url, post_data)
return f.read() == "True"
diff --git a/keystone/common/sql/core.py b/keystone/common/sql/core.py
index 618994b0..bf256473 100644
--- a/keystone/common/sql/core.py
+++ b/keystone/common/sql/core.py
@@ -16,19 +16,17 @@
"""SQL backends for the various services."""
-
-import json
-
import sqlalchemy as sql
-from sqlalchemy import types as sql_types
+import sqlalchemy.engine.url
from sqlalchemy.exc import DisconnectionError
from sqlalchemy.ext import declarative
import sqlalchemy.orm
import sqlalchemy.pool
-import sqlalchemy.engine.url
+from sqlalchemy import types as sql_types
-from keystone import config
from keystone.common import logging
+from keystone import config
+from keystone.openstack.common import jsonutils
CONF = config.CONF
@@ -51,10 +49,10 @@ class JsonBlob(sql_types.TypeDecorator):
impl = sql.Text
def process_bind_param(self, value, dialect):
- return json.dumps(value)
+ return jsonutils.dumps(value)
def process_result_value(self, value, dialect):
- return json.loads(value)
+ return jsonutils.loads(value)
class DictBase(object):
diff --git a/keystone/common/wsgi.py b/keystone/common/wsgi.py
index 4aaf682d..e2606c53 100644
--- a/keystone/common/wsgi.py
+++ b/keystone/common/wsgi.py
@@ -20,7 +20,6 @@
"""Utility methods for working with WSGI servers."""
-import json
import sys
import eventlet.wsgi
@@ -33,6 +32,7 @@ import webob.exc
from keystone.common import logging
from keystone.common import utils
from keystone import exception
+from keystone.openstack.common import jsonutils
LOG = logging.getLogger(__name__)
@@ -499,7 +499,7 @@ def render_response(body=None, status=(200, 'OK'), headers=None):
('Vary', 'X-Auth-Token')]
if body is not None:
- resp.body = json.dumps(body, cls=utils.SmarterEncoder)
+ resp.body = jsonutils.dumps(body, cls=utils.SmarterEncoder)
return resp