aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfujinhua <fu.jinhua@zte.com.cn>2018-03-06 14:41:17 +0800
committerfujinhua <fu.jinhua@zte.com.cn>2018-03-06 14:41:17 +0800
commit6eb6242f4c2ffca859b83b05b0f4e32282ef73ef (patch)
treee2fe6be0725e9ac629a8bc08b5caaa5fb0b664ab
parentb6d066427248d2e9ae76773e9b6b094e0307d9d1 (diff)
Add vnf Grant swagger generate logic
Change-Id: I1eaa631bd196e737e47086e21c1ec4a92d1bd39d Issue-ID: VFC-779 Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
-rw-r--r--lcm/v2/views.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/lcm/v2/views.py b/lcm/v2/views.py
index 4b0a9499..19f6740a 100644
--- a/lcm/v2/views.py
+++ b/lcm/v2/views.py
@@ -12,15 +12,35 @@
# See the License for the specific language governing permissions and
# limitations under the License.
import logging
+import traceback
from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework import status
+from drf_yasg.utils import swagger_auto_schema
+
+from lcm.v2.serializers import GrantRequestSerializer
+from lcm.v2.serializers import GrantSerializer
logger = logging.getLogger(__name__)
class VnfGrantView(APIView):
+ @swagger_auto_schema(
+ request_body=GrantRequestSerializer(),
+ responses={
+ status.HTTP_201_CREATED: GrantSerializer(),
+ status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error"
+ }
+ )
def post(self, request):
logger.debug("VnfGrantView Post: %s" % request.data)
+ try:
+ req_serializer = GrantRequestSerializer(data=request.data)
+ if not req_serializer.is_valid():
+ raise Exception(req_serializer.errors)
+ except Exception as e:
+ logger.error(traceback.format_exc())
+ logger.error("Exception in VnfGrant: %s", e.message)
+ return Response(data={'error': e.message}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
return Response(data={}, status=status.HTTP_201_CREATED)