summaryrefslogtreecommitdiffstats
path: root/newton/newton/extensions/views/extensions.py
diff options
context:
space:
mode:
Diffstat (limited to 'newton/newton/extensions/views/extensions.py')
-rw-r--r--newton/newton/extensions/views/extensions.py58
1 files changed, 4 insertions, 54 deletions
diff --git a/newton/newton/extensions/views/extensions.py b/newton/newton/extensions/views/extensions.py
index 321b86fc..851bc7ea 100644
--- a/newton/newton/extensions/views/extensions.py
+++ b/newton/newton/extensions/views/extensions.py
@@ -13,66 +13,16 @@
# limitations under the License.
import logging
-import json
-import traceback
-from django.core.cache import cache
-
-from keystoneauth1 import access
-from keystoneauth1.access import service_catalog
-from keystoneauth1.exceptions import HttpError
-from rest_framework import status
-from rest_framework.response import Response
-from rest_framework.views import APIView
-
-from newton.pub.config import config
-from newton.pub.exceptions import VimDriverNewtonException
-from newton.requests.views.util import VimDriverUtils
-from newton.pub.msapi import extsys
+from django.conf import settings
+from newton_base.extensions import extensions as newton_extensions
logger = logging.getLogger(__name__)
DEBUG=True
-
-class Extensions(APIView):
+class Extensions(newton_extensions.Extensions):
def __init__(self):
- self.proxy_prefix = config.MULTICLOUD_PREFIX
self._logger = logger
-
- def get(self, request, vimid=""):
- logger.debug("Extensions--get::data> %s" % request.data)
- logger.debug("Extensions--get::vimid> %s"
- % vimid)
- try:
- cloud_owner, cloud_region_id = extsys.decode_vim_id(vimid)
- registered_extensions = \
- [
- {
- "alias": "epa-caps",
- "description": "Multiple network support",
- "name": "EPACapsQuery",
- "url": self.proxy_prefix + "/%s/extensions/epa-caps" \
- % (vimid),
- "spec": ""
- }
- ]
-
- content = {
- "cloud-owner":cloud_owner,
- "cloud-region-id":cloud_region_id,
- "vimid":vimid,
- "extensions": registered_extensions
- }
- return Response(data=content, status=status.HTTP_200_OK)
-
- except VimDriverNewtonException as e:
- return Response(data={'error': e.content}, status=e.status_code)
- except HttpError as e:
- logger.error("HttpError: status:%s, response:%s" % (e.http_status, e.response.json()))
- return Response(data=e.response.json(), status=e.http_status)
- except Exception as e:
- logger.error(traceback.format_exc())
- return Response(data={'error': str(e)},
- status=status.HTTP_500_INTERNAL_SERVER_ERROR)
+ self.proxy_prefix = settings.MULTICLOUD_PREFIX