diff options
| author | Jenkins <jenkins@review.openstack.org> | 2011-12-26 22:53:26 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2011-12-26 22:53:26 +0000 |
| commit | cff2ddcbd532ed54d60dbfbdbb7720f4634487b9 (patch) | |
| tree | c22be926054ef130dfacff0883ff9416a5e51235 /nova/api | |
| parent | db7414235e14545cacf3701b85bf4b5cbb8b925a (diff) | |
| parent | 5682d2a27b252c1aca294eb8a0749ff3fbb13b26 (diff) | |
| download | nova-cff2ddcbd532ed54d60dbfbdbb7720f4634487b9.tar.gz nova-cff2ddcbd532ed54d60dbfbdbb7720f4634487b9.tar.xz nova-cff2ddcbd532ed54d60dbfbdbb7720f4634487b9.zip | |
Merge "Convering /users to admin extension"
Diffstat (limited to 'nova/api')
| -rw-r--r-- | nova/api/openstack/v2/__init__.py | 5 | ||||
| -rw-r--r-- | nova/api/openstack/v2/contrib/users.py (renamed from nova/api/openstack/v2/users.py) | 27 |
2 files changed, 21 insertions, 11 deletions
diff --git a/nova/api/openstack/v2/__init__.py b/nova/api/openstack/v2/__init__.py index 1d3830b05..1dadd7bef 100644 --- a/nova/api/openstack/v2/__init__.py +++ b/nova/api/openstack/v2/__init__.py @@ -33,7 +33,6 @@ from nova.api.openstack.v2 import ips from nova.api.openstack.v2 import limits from nova.api.openstack.v2 import servers from nova.api.openstack.v2 import server_metadata -from nova.api.openstack.v2 import users from nova.api.openstack.v2 import versions from nova.api.openstack.v2 import zones from nova.api.openstack import wsgi @@ -134,10 +133,6 @@ class APIRouter(base_wsgi.Router): if FLAGS.allow_admin_api: LOG.debug(_("Including admin operations in API.")) - mapper.resource("user", "users", - controller=users.create_resource(), - collection={'detail': 'GET'}) - mapper.resource("zone", "zones", controller=zones.create_resource(), collection={'detail': 'GET', diff --git a/nova/api/openstack/v2/users.py b/nova/api/openstack/v2/contrib/users.py index 9dba79e03..b9bdd75e4 100644 --- a/nova/api/openstack/v2/users.py +++ b/nova/api/openstack/v2/contrib/users.py @@ -16,6 +16,7 @@ from webob import exc from nova.api.openstack import common +from nova.api.openstack.v2 import extensions from nova.api.openstack import wsgi from nova.api.openstack import xmlutil from nova.auth import manager @@ -129,11 +130,25 @@ class UserXMLSerializer(xmlutil.XMLTemplateSerializer): return UserTemplate() -def create_resource(): - body_serializers = { - 'application/xml': UserXMLSerializer(), - } +class Users(extensions.ExtensionDescriptor): + """Allow admins to acces user information""" - serializer = wsgi.ResponseSerializer(body_serializers) + name = "Users" + alias = "os-users" + namespace = "http://docs.openstack.org/compute/ext/users/api/v1.1" + updated = "2011-08-08T00:00:00+00:00" + admin_only = True - return wsgi.Resource(Controller(), serializer=serializer) + def get_resources(self): + body_serializers = { + 'application/xml': UserXMLSerializer(), + } + serializer = wsgi.ResponseSerializer(body_serializers) + + coll_actions = {'detail': 'GET'} + res = extensions.ResourceExtension('users', + Controller(), + serializer=serializer, + collection_actions=coll_actions) + + return [res] |
