X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=catalog%2Fpackages%2Fviews%2Fvnf_package_artifact_views.py;h=dde758531140af044b05e64499c507f502e261ba;hb=06bfcce3f57176e6b428e43e8e411e245a5fa75e;hp=0de968296b7479aeaa95345d848d9ecfee19ddc6;hpb=5fd2ae6a4517980ce0f89247bb354220748ae67b;p=modeling%2Fetsicatalog.git diff --git a/catalog/packages/views/vnf_package_artifact_views.py b/catalog/packages/views/vnf_package_artifact_views.py index 0de9682..dde7585 100644 --- a/catalog/packages/views/vnf_package_artifact_views.py +++ b/catalog/packages/views/vnf_package_artifact_views.py @@ -14,14 +14,16 @@ import logging +from django.http import FileResponse from drf_yasg.utils import swagger_auto_schema +from drf_yasg import openapi from rest_framework import status from rest_framework.views import APIView -from django.http import FileResponse -from catalog.packages.serializers.response import ProblemDetailsSerializer from catalog.packages.biz.vnf_pkg_artifacts import FetchVnfPkgArtifact +from catalog.packages.const import TAG_VNF_PACKAGE_API from .common import view_safe_call_with_log +from catalog.swagger.views import EtsiCatalogFileAutoSchema logger = logging.getLogger(__name__) @@ -38,10 +40,16 @@ VALID_FILTERS = [ class FetchVnfPkgmArtifactsView(APIView): @swagger_auto_schema( + auto_schema=EtsiCatalogFileAutoSchema, + tags=[TAG_VNF_PACKAGE_API], responses={ - status.HTTP_200_OK: "HTTP_200_OK", - status.HTTP_404_NOT_FOUND: ProblemDetailsSerializer(), - status.HTTP_500_INTERNAL_SERVER_ERROR: ProblemDetailsSerializer() + status.HTTP_200_OK: openapi.Response("Return the artifact file", + schema=openapi.Schema(format=openapi.FORMAT_BINARY, + type=openapi.TYPE_STRING)), + status.HTTP_404_NOT_FOUND: openapi.Response("Artifact not found", + schema=openapi.Schema(type=openapi.TYPE_STRING)), + status.HTTP_500_INTERNAL_SERVER_ERROR: openapi.Response("Internal error", + schema=openapi.Schema(type=openapi.TYPE_STRING)) } ) @view_safe_call_with_log(logger=logger)