5e804a737f0c57ab21b8f507006281fd93893b11
[vfc/gvnfm/vnflcm.git] / lcm / lcm / samples / views.py
1 # Copyright 2017 ZTE Corporation.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #         http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14
15 import logging
16
17 from drf_yasg.utils import swagger_auto_schema
18 from rest_framework import status
19 from rest_framework.views import APIView
20 from rest_framework.response import Response
21 from .resources import ResCreateThread, ResDeleteThread
22
23 logger = logging.getLogger(__name__)
24
25
26 class SampleList(APIView):
27     @swagger_auto_schema(
28         responses={
29             status.HTTP_200_OK: 'Successfully'})
30     def get(self, request, format=None):
31         logger.debug("get")
32         return Response({"status": "active"})
33
34
35 class ResourceList(APIView):
36     @swagger_auto_schema(
37         responses={
38             status.HTTP_204_NO_CONTENT: 'Successfully'})
39     def post(self, request, action_type):
40         logger.debug("ResourceList post(%s): %s", action_type, request.data)
41         if action_type == "inst":
42             ResCreateThread(request.data).start()
43         else:
44             ResDeleteThread(request.data).start()
45         return Response(data=None, status=status.HTTP_204_NO_CONTENT)