summaryrefslogtreecommitdiffstats
path: root/newton/newton/extensions
diff options
context:
space:
mode:
authorHuang Haibin <haibin.huang@intel.com>2018-03-08 22:05:26 +0800
committerHuang Haibin <haibin.huang@intel.com>2018-03-10 00:38:17 +0800
commit51fde27c2a12f525e94ecd3a83238a46215d9392 (patch)
tree4b9b72d4048209d410c0f9bc8a25a9561f3fcfa0 /newton/newton/extensions
parentc701ab185721e50cca3d432220361aaa723358cc (diff)
newton use share library
Change-Id: I0ed8ced042862edf8afa87fec3b457d019e811b4 Issue-ID: MULTICLOUD-138 Signed-off-by: Huang Haibin <haibin.huang@intel.com>
Diffstat (limited to 'newton/newton/extensions')
-rw-r--r--newton/newton/extensions/tests/test_epacaps.py6
-rw-r--r--newton/newton/extensions/tests/test_extensions.py2
-rw-r--r--newton/newton/extensions/views/epacaps.py44
-rw-r--r--newton/newton/extensions/views/extensions.py58
4 files changed, 15 insertions, 95 deletions
diff --git a/newton/newton/extensions/tests/test_epacaps.py b/newton/newton/extensions/tests/test_epacaps.py
index 35604165..0588f773 100644
--- a/newton/newton/extensions/tests/test_epacaps.py
+++ b/newton/newton/extensions/tests/test_epacaps.py
@@ -19,9 +19,9 @@ from django.test import Client
from rest_framework import status
import unittest
-from newton.requests.tests import test_base
-from newton.requests.tests import mock_info
-from newton.requests.views.util import VimDriverUtils
+from newton_base.tests import test_base
+from newton_base.tests import mock_info
+from newton_base.util import VimDriverUtils
class TestEpaCaps(unittest.TestCase):
diff --git a/newton/newton/extensions/tests/test_extensions.py b/newton/newton/extensions/tests/test_extensions.py
index 7b92b61e..ebdb2168 100644
--- a/newton/newton/extensions/tests/test_extensions.py
+++ b/newton/newton/extensions/tests/test_extensions.py
@@ -16,7 +16,7 @@ from django.test import Client
from rest_framework import status
import unittest
-from newton.requests.tests import test_base
+from newton_base.tests import test_base
class TestExtensions(unittest.TestCase):
diff --git a/newton/newton/extensions/views/epacaps.py b/newton/newton/extensions/views/epacaps.py
index de5a24bf..77542b31 100644
--- a/newton/newton/extensions/views/epacaps.py
+++ b/newton/newton/extensions/views/epacaps.py
@@ -16,48 +16,18 @@ import logging
import json
import traceback
-from keystoneauth1.exceptions import HttpError
-from rest_framework import status
-from rest_framework.response import Response
-from rest_framework.views import APIView
+from django.conf import settings
-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 newton_base.extensions import epacaps as newton_epacaps
logger = logging.getLogger(__name__)
+DEBUG=True
+
-class EpaCaps(APIView):
+class EpaCaps(newton_epacaps.EpaCaps):
def __init__(self):
- self.proxy_prefix = config.MULTICLOUD_PREFIX
+ self.proxy_prefix = settings.MULTICLOUD_PREFIX
self._logger = logger
-
- def get(self, request, vimid=""):
- logger.debug("EpaCaps--get::data> %s" % request.data)
- logger.debug("EpaCaps--get::vimid> %s"
- % vimid)
- try:
-
- vim = VimDriverUtils.get_vim_info(vimid)
- caps_json = json.loads(vim['cloud_epa_caps'])
-
- cloud_owner, cloud_region_id = extsys.decode_vim_id(vimid)
- content = {
- "cloud-owner":cloud_owner,
- "cloud-region-id":cloud_region_id,
- "vimid":vimid,
- "cloud-epa-caps": caps_json,
- }
- 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)
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