summaryrefslogtreecommitdiffstats
path: root/nova/api
diff options
context:
space:
mode:
authorNaveed Massjouni <naveedm9@gmail.com>2011-05-18 03:51:25 -0400
committerNaveed Massjouni <naveedm9@gmail.com>2011-05-18 03:51:25 -0400
commit6c151bfbfeb728d6e38f777640d483c1e344113d (patch)
tree4cc80cb1a76abf2c26f729c57e60c82029540c96 /nova/api
parentd24f59a251173826817e5f5c53a4f54dfe927f2d (diff)
Removed all utils.import_object(FLAGS.image_service) and replaced with
utils.get_default_image_service().
Diffstat (limited to 'nova/api')
-rw-r--r--nova/api/openstack/image_metadata.py2
-rw-r--r--nova/api/openstack/images.py5
-rw-r--r--nova/api/openstack/servers.py22
-rw-r--r--nova/api/openstack/views/servers.py10
4 files changed, 19 insertions, 20 deletions
diff --git a/nova/api/openstack/image_metadata.py b/nova/api/openstack/image_metadata.py
index 1eccc0174..f6913ffc6 100644
--- a/nova/api/openstack/image_metadata.py
+++ b/nova/api/openstack/image_metadata.py
@@ -32,7 +32,7 @@ class Controller(common.OpenstackController):
"""The image metadata API controller for the Openstack API"""
def __init__(self):
- self.image_service = utils.import_object(FLAGS.image_service)
+ self.image_service = utils.get_default_image_service()
super(Controller, self).__init__()
def _get_metadata(self, context, image_id, image=None):
diff --git a/nova/api/openstack/images.py b/nova/api/openstack/images.py
index 8d796c284..8a90b4c4d 100644
--- a/nova/api/openstack/images.py
+++ b/nova/api/openstack/images.py
@@ -47,11 +47,10 @@ class Controller(common.OpenstackController):
:param compute_service: `nova.compute.api:API`
:param image_service: `nova.image.service:BaseImageService`
- """
- _default_service = utils.import_object(flags.FLAGS.image_service)
+ """
self._compute_service = compute_service or compute.API()
- self._image_service = image_service or _default_service
+ self._image_service = image_service or utils.get_default_image_service()
def index(self, req):
"""Return an index listing of images available to the request.
diff --git a/nova/api/openstack/servers.py b/nova/api/openstack/servers.py
index bf0f56373..4e8574994 100644
--- a/nova/api/openstack/servers.py
+++ b/nova/api/openstack/servers.py
@@ -64,7 +64,6 @@ class Controller(common.OpenstackController):
def __init__(self):
self.compute_api = compute.API()
- self._image_service = utils.import_object(FLAGS.image_service)
super(Controller, self).__init__()
def index(self, req):
@@ -75,7 +74,7 @@ class Controller(common.OpenstackController):
""" Returns a list of server details for a given user """
return self._items(req, is_detail=True)
- def _image_id_from_req_data(self, data):
+ def _image_ref_from_req_data(self, data):
raise NotImplementedError()
def _flavor_id_from_req_data(self, data):
@@ -140,13 +139,13 @@ class Controller(common.OpenstackController):
key_name = key_pair['name']
key_data = key_pair['public_key']
- requested_image_id = self._image_id_from_req_data(env)
+ image_ref = self._image_ref_from_req_data(env)
try:
- (image_service, service_image_id) = utils.get_image_service(
- requested_image_id)
+ (image_service, image_id) = utils.get_image_service( image_ref)
- image_id = common.get_image_id_from_image_hash(image_service,
- context, requested_image_id)
+ #TODO: need to assert image exists a better way
+ #image_id = common.get_image_id_from_image_hash(image_service,
+ #context, image_ref)
except:
msg = _("Can not find requested image")
return faults.Fault(exc.HTTPBadRequest(msg))
@@ -188,7 +187,7 @@ class Controller(common.OpenstackController):
self._handle_quota_error(error)
inst['instance_type'] = inst_type
- inst['image_id'] = requested_image_id
+ inst['image_id'] = image_ref
builder = self._get_view_builder(req)
server = builder.build(inst, is_detail=True)
@@ -596,7 +595,7 @@ class Controller(common.OpenstackController):
class ControllerV10(Controller):
- def _image_id_from_req_data(self, data):
+ def _image_ref_from_req_data(self, data):
return data['server']['imageId']
def _flavor_id_from_req_data(self, data):
@@ -639,9 +638,8 @@ class ControllerV10(Controller):
class ControllerV11(Controller):
- def _image_id_from_req_data(self, data):
- href = data['server']['imageRef']
- return common.get_id_from_href(href)
+ def _image_ref_from_req_data(self, data):
+ return data['server']['imageRef']
def _flavor_id_from_req_data(self, data):
href = data['server']['flavorRef']
diff --git a/nova/api/openstack/views/servers.py b/nova/api/openstack/views/servers.py
index 0be468edc..70a942594 100644
--- a/nova/api/openstack/views/servers.py
+++ b/nova/api/openstack/views/servers.py
@@ -113,7 +113,7 @@ class ViewBuilderV10(ViewBuilder):
def _build_image(self, response, inst):
if 'image_id' in dict(inst):
- response['imageId'] = inst['image_id']
+ response['imageId'] = int(inst['image_id'])
def _build_flavor(self, response, inst):
if 'instance_type' in dict(inst):
@@ -130,9 +130,11 @@ class ViewBuilderV11(ViewBuilder):
self.base_url = base_url
def _build_image(self, response, inst):
- if "image_id" in dict(inst):
- image_id = inst.get("image_id")
- response["imageRef"] = self.image_builder.generate_href(image_id)
+ if 'image_id' in dict(inst):
+ image_id = inst['image_id']
+ if utils.is_int(image_id):
+ image_id = int(image_id)
+ response['imageRef'] = image_id
def _build_flavor(self, response, inst):
if "instance_type" in dict(inst):