summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin L. Mitchell <kevin.mitchell@rackspace.com>2011-11-22 12:25:21 -0600
committerKevin L. Mitchell <kevin.mitchell@rackspace.com>2011-11-22 12:25:21 -0600
commitb74dee50e72fa8e22b8731db6468513473db9253 (patch)
tree022f8f44b3e264f3a757b4699a55d01e256da137
parente35ed7ce06a7ac0280d6a36c881e75e307230f76 (diff)
Use XMLDictSerializer for resource extensions.
Patches around bug 852141 by using the XMLDictSerializer instead of the ExtensionsXMLSerializer for XML serialization of resource extensions. This will allow XML to be emitted, but does not correct the underlying problem: many existing resource extensions do not have defined XML serializers. (Additionally, existing serializers, including ExtensionsXMLSerializer, should be converted to templates.) Change-Id: If0fb0603920d04834368ed654f2a71d3e5300f7f
-rw-r--r--nova/api/openstack/v2/extensions.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/nova/api/openstack/v2/extensions.py b/nova/api/openstack/v2/extensions.py
index a5cf863ed..0e59c6d9f 100644
--- a/nova/api/openstack/v2/extensions.py
+++ b/nova/api/openstack/v2/extensions.py
@@ -276,7 +276,7 @@ class ExtensionMiddleware(base_wsgi.Middleware):
mapper = nova.api.openstack.v2.ProjectMapper()
serializer = wsgi.ResponseSerializer(
- {'application/xml': ExtensionsXMLSerializer()})
+ {'application/xml': wsgi.XMLDictSerializer()})
# extended resources
for resource in ext_mgr.get_resources():
LOG.debug(_('Extended resource: %s'),
@@ -371,8 +371,11 @@ class ExtensionManager(object):
def get_resources(self):
"""Returns a list of ResourceExtension objects."""
resources = []
+ serializer = wsgi.ResponseSerializer(
+ {'application/xml': ExtensionsXMLSerializer()})
resources.append(ResourceExtension('extensions',
- ExtensionsResource(self)))
+ ExtensionsResource(self),
+ serializer=serializer))
for ext in self.extensions.values():
try:
resources.extend(ext.get_resources())