Merge "Remove XML support from some extension v3 API plugins"

This commit is contained in:
Jenkins
2014-01-30 19:48:28 +00:00
committed by Gerrit Code Review
4 changed files with 1 additions and 129 deletions

View File

@@ -16,7 +16,7 @@
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
ALIAS = "os-extended-server-attributes"
authorize = extensions.soft_extension_authorizer('compute', 'v3:' + ALIAS)
@@ -39,8 +39,6 @@ class ExtendedServerAttributesController(wsgi.Controller):
def show(self, req, resp_obj, id):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedServerAttributeTemplate())
server = resp_obj.obj['server']
db_instance = req.get_db_instance(server['id'])
# server['id'] is guaranteed to be in the cache due to
@@ -51,9 +49,6 @@ class ExtendedServerAttributesController(wsgi.Controller):
def detail(self, req, resp_obj):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedServerAttributesTemplate())
servers = list(resp_obj.obj['servers'])
for server in servers:
db_instance = req.get_db_instance(server['id'])
@@ -78,31 +73,3 @@ class ExtendedServerAttributes(extensions.V3APIExtensionBase):
def get_resources(self):
return []
def make_server(elem):
elem.set('{%s}instance_name' % ExtendedServerAttributes.namespace,
'%s:instance_name' % ExtendedServerAttributes.alias)
elem.set('{%s}host' % ExtendedServerAttributes.namespace,
'%s:host' % ExtendedServerAttributes.alias)
elem.set('{%s}hypervisor_hostname' % ExtendedServerAttributes.namespace,
'%s:hypervisor_hostname' % ExtendedServerAttributes.alias)
class ExtendedServerAttributeTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('server', selector='server')
make_server(root)
alias = ExtendedServerAttributes.alias
namespace = ExtendedServerAttributes.namespace
return xmlutil.SlaveTemplate(root, 1, nsmap={alias: namespace})
class ExtendedServerAttributesTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('servers')
elem = xmlutil.SubTemplateElement(root, 'server', selector='servers')
make_server(elem)
alias = ExtendedServerAttributes.alias
namespace = ExtendedServerAttributes.namespace
return xmlutil.SlaveTemplate(root, 1, nsmap={alias: namespace})

View File

@@ -16,7 +16,6 @@
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
from nova import compute
ALIAS = "os-extended-status"
@@ -37,8 +36,6 @@ class ExtendedStatusController(wsgi.Controller):
def show(self, req, resp_obj, id):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedStatusTemplate())
server = resp_obj.obj['server']
db_instance = req.get_db_instance(server['id'])
# server['id'] is guaranteed to be in the cache due to
@@ -49,8 +46,6 @@ class ExtendedStatusController(wsgi.Controller):
def detail(self, req, resp_obj):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedStatusesTemplate())
servers = list(resp_obj.obj['servers'])
for server in servers:
db_instance = req.get_db_instance(server['id'])
@@ -75,31 +70,3 @@ class ExtendedStatus(extensions.V3APIExtensionBase):
def get_resources(self):
return []
def make_server(elem):
elem.set('{%s}task_state' % ExtendedStatus.namespace,
'%s:task_state' % ExtendedStatus.alias)
elem.set('{%s}power_state' % ExtendedStatus.namespace,
'%s:power_state' % ExtendedStatus.alias)
elem.set('{%s}vm_state' % ExtendedStatus.namespace,
'%s:vm_state' % ExtendedStatus.alias)
elem.set('{%s}locked_by' % ExtendedStatus.namespace,
'%s:locked_by' % ExtendedStatus.alias)
class ExtendedStatusTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('server', selector='server')
make_server(root)
return xmlutil.SlaveTemplate(root, 1, nsmap={
ExtendedStatus.alias: ExtendedStatus.namespace})
class ExtendedStatusesTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('servers')
elem = xmlutil.SubTemplateElement(root, 'server', selector='servers')
make_server(elem)
return xmlutil.SlaveTemplate(root, 1, nsmap={
ExtendedStatus.alias: ExtendedStatus.namespace})

View File

@@ -22,7 +22,6 @@ from nova.api.openstack import common
from nova.api.openstack.compute.schemas.v3 import extended_volumes_schema
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
from nova.api import validation
from nova import compute
from nova import exception
@@ -109,8 +108,6 @@ class ExtendedVolumesController(wsgi.Controller):
def show(self, req, resp_obj, id):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedVolumesServerTemplate())
server = resp_obj.obj['server']
db_instance = req.get_db_instance(server['id'])
# server['id'] is guaranteed to be in the cache due to
@@ -121,8 +118,6 @@ class ExtendedVolumesController(wsgi.Controller):
def detail(self, req, resp_obj):
context = req.environ['nova.context']
if authorize(context):
# Attach our slave template to the response object
resp_obj.attach(xml=ExtendedVolumesServersTemplate())
servers = list(resp_obj.obj['servers'])
for server in servers:
db_instance = req.get_db_instance(server['id'])
@@ -239,27 +234,3 @@ class ExtendedVolumes(extensions.V3APIExtensionBase):
def get_resources(self):
return []
def make_server(elem):
volumes = xmlutil.SubTemplateElement(
elem, '{%s}volume_attached' % ExtendedVolumes.namespace,
selector='%s:volumes_attached' % ExtendedVolumes.alias)
volumes.set('id')
class ExtendedVolumesServerTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('server', selector='server')
make_server(root)
return xmlutil.SlaveTemplate(root, 1, nsmap={
ExtendedVolumes.alias: ExtendedVolumes.namespace})
class ExtendedVolumesServersTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('servers')
elem = xmlutil.SubTemplateElement(root, 'server', selector='servers')
make_server(elem)
return xmlutil.SlaveTemplate(root, 1, nsmap={
ExtendedVolumes.alias: ExtendedVolumes.namespace})

View File

@@ -17,8 +17,6 @@
import webob.exc
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
from nova.openstack.common.gettextutils import _
from nova.openstack.common import log as logging
@@ -26,35 +24,6 @@ from nova.openstack.common import log as logging
LOG = logging.getLogger(__name__)
def make_ext(elem):
elem.set('name')
elem.set('namespace')
elem.set('alias')
elem.set('version')
desc = xmlutil.SubTemplateElement(elem, 'description')
desc.text = 'description'
ext_nsmap = {None: xmlutil.XMLNS_COMMON_V10, 'atom': xmlutil.XMLNS_ATOM}
class ExtensionTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('extension', selector='extension')
make_ext(root)
return xmlutil.MasterTemplate(root, 1, nsmap=ext_nsmap)
class ExtensionsTemplate(xmlutil.TemplateBuilder):
def construct(self):
root = xmlutil.TemplateElement('extensions')
elem = xmlutil.SubTemplateElement(root, 'extension',
selector='extensions')
make_ext(elem)
return xmlutil.MasterTemplate(root, 1, nsmap=ext_nsmap)
class ExtensionInfoController(object):
def __init__(self, extension_info):
@@ -84,7 +53,6 @@ class ExtensionInfoController(object):
return discoverable_extensions
@extensions.expected_errors(())
@wsgi.serializers(xml=ExtensionsTemplate)
def index(self, req):
context = req.environ['nova.context']
@@ -97,7 +65,6 @@ class ExtensionInfoController(object):
return dict(extensions=extensions)
@extensions.expected_errors(404)
@wsgi.serializers(xml=ExtensionTemplate)
def show(self, req, id):
context = req.environ['nova.context']
try: