Fix serialization bug of nslcm
[vfc/nfvo/lcm.git] / lcm / ns / serializers / response.py
1 # Copyright (c) 2019, CMCC Technologies Co., Ltd.
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 from rest_framework import serializers
16
17
18 # class ProblemDetailsSerializer(serializers.Serializer):
19 #     type = serializers.CharField(help_text="Type", required=False, allow_null=True)
20 #     title = serializers.CharField(help_text="Title", required=False, allow_null=True)
21 #     status = serializers.IntegerField(help_text="Status", required=True)
22 #     detail = serializers.CharField(help_text="Detail", required=True, allow_null=True)
23 #     instance = serializers.CharField(help_text="Instance", required=False, allow_null=True)
24 #     additional_details = serializers.ListField(
25 #         help_text="Any number of additional attributes, as defined in a specification or by an"
26 #                   " implementation.", required=False, allow_null=True)
27
28
29 class ProblemDetailsSerializer(serializers.Serializer):
30     type = serializers.CharField(
31         help_text="A URI reference according to IETF RFC 3986 [5] that identifies the problem type.",
32         required=False,
33         allow_null=True,
34         allow_blank=True
35     )
36     title = serializers.CharField(
37         help_text="A short, human-readable summary of the problem type.",
38         required=False,
39         allow_null=True,
40         allow_blank=True
41     )
42     status = serializers.IntegerField(
43         help_text="The HTTP status code for this occurrence of the problem.",
44         required=True
45     )
46     detail = serializers.CharField(
47         help_text="A human-readable explanation specific to this occurrence of the problem.",
48         required=True
49     )
50     instance = serializers.CharField(
51         help_text="A URI reference that identifies the specific occurrence of the problem.",
52         required=False,
53         allow_null=True,
54         allow_blank=True
55     )
56     additional_details = serializers.ListField(
57         help_text="Any number of additional attributes, as defined in a specification or by an"
58                   " implementation.",
59         required=False,
60         allow_null=True
61     )