summaryrefslogtreecommitdiffstats
path: root/share/newton_base/openoapi/image.py
diff options
context:
space:
mode:
Diffstat (limited to 'share/newton_base/openoapi/image.py')
-rw-r--r--share/newton_base/openoapi/image.py27
1 files changed, 24 insertions, 3 deletions
diff --git a/share/newton_base/openoapi/image.py b/share/newton_base/openoapi/image.py
index 7a18bdbd..e27d0190 100644
--- a/share/newton_base/openoapi/image.py
+++ b/share/newton_base/openoapi/image.py
@@ -24,6 +24,7 @@ from rest_framework.views import APIView
from common.exceptions import VimDriverNewtonException
from newton_base.util import VimDriverUtils
+from common.msapi import extsys
logger = logging.getLogger(__name__)
@@ -87,7 +88,7 @@ class Images(APIView):
try:
# prepare request resource to vim instance
query = VimDriverUtils.get_query_part(request)
- content, status_code = self.get_images(query, vimid, tenantid, imageid)
+ content, status_code = self._get_images(query, vimid, tenantid, imageid)
return Response(data=content, status=status_code)
except VimDriverNewtonException as e:
logger.error("response with status = %s" % e.status_code)
@@ -100,7 +101,7 @@ class Images(APIView):
return Response(data={'error': str(e)},
status=status.HTTP_500_INTERNAL_SERVER_ERROR)
- def get_images(self, query="", vimid="", tenantid="", imageid=""):
+ def _get_images(self, query="", vimid="", tenantid="", imageid=""):
logger.info("vimid, tenantid, imageid, query = %s,%s,%s,%s" % (vimid, tenantid, imageid, query))
# prepare request resource to vim instance
req_resouce = "v2/images"
@@ -149,7 +150,7 @@ class Images(APIView):
try:
#check if created already: check name
query = "name=%s" % request.data["name"]
- content, status_code = self.get_images(query, vimid, tenantid)
+ content, status_code = self._get_images(query, vimid, tenantid)
existed = False
if status_code == 200:
for image in content["images"]:
@@ -253,3 +254,23 @@ class Images(APIView):
logger.error(traceback.format_exc())
return Response(data={'error': str(e)},
status=status.HTTP_500_INTERNAL_SERVER_ERROR)
+
+class APIv1Images(Images):
+
+ def get(self, request, cloud_owner="", cloud_region_id="", tenantid="", imageid=""):
+ self._logger.info("%s, %s" % (cloud_owner, cloud_region_id))
+
+ vimid = extsys.encode_vim_id(cloud_owner, cloud_region_id)
+ return super(APIv1Images, self).get(request, vimid, tenantid, imageid)
+
+ def post(self, request, cloud_owner="", cloud_region_id="", tenantid="", imageid=""):
+ self._logger.info("%s, %s" % (cloud_owner, cloud_region_id))
+
+ vimid = extsys.encode_vim_id(cloud_owner, cloud_region_id)
+ return super(APIv1Images, self).post(request, vimid, tenantid, imageid)
+
+ def delete(self, request, cloud_owner="", cloud_region_id="", tenantid="", imageid=""):
+ self._logger.info("%s, %s" % (cloud_owner, cloud_region_id))
+
+ vimid = extsys.encode_vim_id(cloud_owner, cloud_region_id)
+ return super(APIv1Images, self).delete(request, vimid, tenantid, imageid)