baiducloud-python-sdk-dns 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. baiducloud_python_sdk_dns/__init__.py +5 -0
  2. baiducloud_python_sdk_dns/api/__init__.py +0 -0
  3. baiducloud_python_sdk_dns/api/dns_client.py +534 -0
  4. baiducloud_python_sdk_dns/models/__init__.py +31 -0
  5. baiducloud_python_sdk_dns/models/add_domain_name_request.py +66 -0
  6. baiducloud_python_sdk_dns/models/add_line_group_request.py +74 -0
  7. baiducloud_python_sdk_dns/models/add_parsing_records_request.py +122 -0
  8. baiducloud_python_sdk_dns/models/billing.py +68 -0
  9. baiducloud_python_sdk_dns/models/billing_for_renew.py +60 -0
  10. baiducloud_python_sdk_dns/models/delete_line_group_request.py +64 -0
  11. baiducloud_python_sdk_dns/models/delete_parsing_records_request.py +70 -0
  12. baiducloud_python_sdk_dns/models/domain_name_renewal_request.py +79 -0
  13. baiducloud_python_sdk_dns/models/line.py +90 -0
  14. baiducloud_python_sdk_dns/models/modify_parsing_records_request.py +120 -0
  15. baiducloud_python_sdk_dns/models/modify_the_parsing_record_status_request.py +76 -0
  16. baiducloud_python_sdk_dns/models/public_record.py +133 -0
  17. baiducloud_python_sdk_dns/models/public_zone.py +110 -0
  18. baiducloud_python_sdk_dns/models/purchase_a_paid_domain_name_request.py +83 -0
  19. baiducloud_python_sdk_dns/models/query_and_parse_record_list_request.py +82 -0
  20. baiducloud_python_sdk_dns/models/query_and_parse_record_list_response.py +94 -0
  21. baiducloud_python_sdk_dns/models/query_domain_name_list_request.py +70 -0
  22. baiducloud_python_sdk_dns/models/query_domain_name_list_response.py +94 -0
  23. baiducloud_python_sdk_dns/models/query_the_list_of_line_groups_request.py +64 -0
  24. baiducloud_python_sdk_dns/models/query_the_list_of_line_groups_response.py +94 -0
  25. baiducloud_python_sdk_dns/models/remove_domain_name_request.py +64 -0
  26. baiducloud_python_sdk_dns/models/reservation.py +58 -0
  27. baiducloud_python_sdk_dns/models/tag_model.py +66 -0
  28. baiducloud_python_sdk_dns/models/update_line_group_request.py +80 -0
  29. baiducloud_python_sdk_dns/models/upgrade_the_free_domain_name_to_the_universal_version_request.py +81 -0
  30. baiducloud_python_sdk_dns-0.0.1.dist-info/LICENSE +177 -0
  31. baiducloud_python_sdk_dns-0.0.1.dist-info/METADATA +76 -0
  32. baiducloud_python_sdk_dns-0.0.1.dist-info/RECORD +34 -0
  33. baiducloud_python_sdk_dns-0.0.1.dist-info/WHEEL +5 -0
  34. baiducloud_python_sdk_dns-0.0.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,120 @@
1
+ """
2
+ Request entity for ModifyParsingRecordsRequest information.
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+
7
+
8
+ class ModifyParsingRecordsRequest(AbstractModel):
9
+ """
10
+ Request entity for ModifyParsingRecordsRequest operation.
11
+
12
+ This class encapsulates all parameters for the API request.
13
+ """
14
+
15
+ def __init__(
16
+ self, zone_name, record_id, rr, type, value, client_token=None, ttl=None, description=None, priority=None
17
+ ):
18
+ """
19
+ Initialize ModifyParsingRecordsRequest request entity.
20
+
21
+ :param zone_name: zone_name parameter
22
+ :type zone_name: str (required)
23
+
24
+ :param record_id: record_id parameter
25
+ :type record_id: str (required)
26
+
27
+ :param client_token: client_token parameter
28
+ :type client_token: str (optional)
29
+
30
+ :param rr: 主机记录,例如“www”,记录值和zone的name长度加在一起不能超过255字符。
31
+ :type rr: str (required)
32
+
33
+ :param type: 解析记录类型,包含:“A”, “CNAME”, “MX”, “TXT”, “NS”, “AAAA”, “SRV”。
34
+ :type type: str (required)
35
+
36
+ :param value: value parameter
37
+ :type value: str (required)
38
+
39
+ :param ttl: 解析记录在本地DNS服务器的缓存时间(单位:秒),基础版默认300秒,普惠版默认120秒,企业版默认1秒,取值为正整数。
40
+ :type ttl: int (optional)
41
+
42
+ :param description: 描述,长度不超过255个字符。
43
+ :type description: str (optional)
44
+
45
+ :param priority: MX记录的优先级,取值范围:[0,50]。记录类型为MX记录时,此参数必选。
46
+ :type priority: int (optional)
47
+ """
48
+ super().__init__()
49
+ self.zone_name = zone_name
50
+ self.record_id = record_id
51
+ self.client_token = client_token
52
+ self.rr = rr
53
+ self.type = type
54
+ self.value = value
55
+ self.ttl = ttl
56
+ self.description = description
57
+ self.priority = priority
58
+
59
+ def to_dict(self):
60
+ """
61
+ Convert the request entity to a dictionary representation.
62
+
63
+ Nested model objects are recursively converted to dictionaries.
64
+
65
+ :return: Dictionary representation of the request
66
+ :rtype: dict
67
+ """
68
+ _map = super().to_dict()
69
+ if _map is not None:
70
+ return _map
71
+ result = dict()
72
+ if self.rr is not None:
73
+ result['rr'] = self.rr
74
+ if self.type is not None:
75
+ result['type'] = self.type
76
+ if self.value is not None:
77
+ result['value'] = self.value
78
+ if self.ttl is not None:
79
+ result['ttl'] = self.ttl
80
+ if self.description is not None:
81
+ result['description'] = self.description
82
+ if self.priority is not None:
83
+ result['priority'] = self.priority
84
+ return result
85
+
86
+ def from_dict(self, m):
87
+ """
88
+ Populate the request entity from a dictionary.
89
+
90
+ Nested dictionaries are recursively converted to model objects.
91
+
92
+ :param m: Dictionary containing request data
93
+ :type m: dict
94
+
95
+ :return: Self reference for method chaining
96
+ :rtype: ModifyParsingRecordsRequest
97
+
98
+ :raises TypeError: If input is not a dictionary or field type mismatch
99
+ :raises ValueError: If nested model conversion fails
100
+ """
101
+ m = m or dict()
102
+ if m.get('zoneName') is not None:
103
+ self.zone_name = m.get('zoneName')
104
+ if m.get('recordId') is not None:
105
+ self.record_id = m.get('recordId')
106
+ if m.get('clientToken') is not None:
107
+ self.client_token = m.get('clientToken')
108
+ if m.get('rr') is not None:
109
+ self.rr = m.get('rr')
110
+ if m.get('type') is not None:
111
+ self.type = m.get('type')
112
+ if m.get('value') is not None:
113
+ self.value = m.get('value')
114
+ if m.get('ttl') is not None:
115
+ self.ttl = m.get('ttl')
116
+ if m.get('description') is not None:
117
+ self.description = m.get('description')
118
+ if m.get('priority') is not None:
119
+ self.priority = m.get('priority')
120
+ return self
@@ -0,0 +1,76 @@
1
+ """
2
+ Request entity for ModifyTheParsingRecordStatusRequest information.
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+
7
+
8
+ class ModifyTheParsingRecordStatusRequest(AbstractModel):
9
+ """
10
+ Request entity for ModifyTheParsingRecordStatusRequest operation.
11
+
12
+ This class encapsulates all parameters for the API request.
13
+ """
14
+
15
+ def __init__(self, zone_name, record_id, action, client_token=None):
16
+ """
17
+ Initialize ModifyTheParsingRecordStatusRequest request entity.
18
+
19
+ :param zone_name: zone_name parameter
20
+ :type zone_name: str (required)
21
+
22
+ :param record_id: record_id parameter
23
+ :type record_id: str (required)
24
+
25
+ :param action: action parameter
26
+ :type action: str (required)
27
+
28
+ :param client_token: client_token parameter
29
+ :type client_token: str (optional)
30
+ """
31
+ super().__init__()
32
+ self.zone_name = zone_name
33
+ self.record_id = record_id
34
+ self.action = action
35
+ self.client_token = client_token
36
+
37
+ def to_dict(self):
38
+ """
39
+ Convert the request entity to a dictionary representation.
40
+
41
+ Nested model objects are recursively converted to dictionaries.
42
+
43
+ :return: Dictionary representation of the request
44
+ :rtype: dict
45
+ """
46
+ _map = super().to_dict()
47
+ if _map is not None:
48
+ return _map
49
+ result = dict()
50
+ return result
51
+
52
+ def from_dict(self, m):
53
+ """
54
+ Populate the request entity from a dictionary.
55
+
56
+ Nested dictionaries are recursively converted to model objects.
57
+
58
+ :param m: Dictionary containing request data
59
+ :type m: dict
60
+
61
+ :return: Self reference for method chaining
62
+ :rtype: ModifyTheParsingRecordStatusRequest
63
+
64
+ :raises TypeError: If input is not a dictionary or field type mismatch
65
+ :raises ValueError: If nested model conversion fails
66
+ """
67
+ m = m or dict()
68
+ if m.get('zoneName') is not None:
69
+ self.zone_name = m.get('zoneName')
70
+ if m.get('recordId') is not None:
71
+ self.record_id = m.get('recordId')
72
+ if m.get('action') is not None:
73
+ self.action = m.get('action')
74
+ if m.get('clientToken') is not None:
75
+ self.client_token = m.get('clientToken')
76
+ return self
@@ -0,0 +1,133 @@
1
+ """
2
+ PublicRecord information
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+
7
+
8
+ class PublicRecord(AbstractModel):
9
+ """
10
+ PublicRecord
11
+ """
12
+
13
+ def __init__(
14
+ self,
15
+ id=None,
16
+ rr=None,
17
+ status=None,
18
+ type=None,
19
+ value=None,
20
+ ttl=None,
21
+ line=None,
22
+ description=None,
23
+ priority=None,
24
+ ):
25
+ """
26
+ Initialize PublicRecord instance.
27
+
28
+ :param id: 解析记录id。
29
+ :type id: str (optional)
30
+
31
+ :param rr: 主机记录。
32
+ :type rr: str (optional)
33
+
34
+ :param status: 域名状态,包含:正常(running)、暂停中(stopped)、服务异常(failed)。
35
+ :type status: str (optional)
36
+
37
+ :param type: 解析记录类型,包含:“A”,“CNAME”,“MX”,“TXT”,“NS”,“AAAA”,“SRV”。
38
+ :type type: str (optional)
39
+
40
+ :param value: value attribute
41
+ :type value: str (optional)
42
+
43
+ :param ttl: 解析记录在本地DNS服务器的缓存时间(单位:秒),基础版默认300秒,普惠版默认120秒,企业版默认1秒。取值为正整数。
44
+ :type ttl: int (optional)
45
+
46
+ :param line: line attribute
47
+ :type line: str (optional)
48
+
49
+ :param description: 描述,长度不超过255个字符。
50
+ :type description: str (optional)
51
+
52
+ :param priority: MX记录的优先级,取值范围:[0,50]。记录类型为MX记录时返回。
53
+ :type priority: int (optional)
54
+ """
55
+ super().__init__()
56
+ self.id = id
57
+ self.rr = rr
58
+ self.status = status
59
+ self.type = type
60
+ self.value = value
61
+ self.ttl = ttl
62
+ self.line = line
63
+ self.description = description
64
+ self.priority = priority
65
+
66
+ def to_dict(self):
67
+ """
68
+ Convert the model instance to a dictionary representation.
69
+
70
+ Nested model objects are recursively converted to dictionaries.
71
+
72
+ :return: Dictionary representation of the model
73
+ :rtype: dict
74
+ """
75
+ _map = super().to_dict()
76
+ if _map is not None:
77
+ return _map
78
+ result = dict()
79
+ if self.id is not None:
80
+ result['id'] = self.id
81
+ if self.rr is not None:
82
+ result['rr'] = self.rr
83
+ if self.status is not None:
84
+ result['status'] = self.status
85
+ if self.type is not None:
86
+ result['type'] = self.type
87
+ if self.value is not None:
88
+ result['value'] = self.value
89
+ if self.ttl is not None:
90
+ result['ttl'] = self.ttl
91
+ if self.line is not None:
92
+ result['line'] = self.line
93
+ if self.description is not None:
94
+ result['description'] = self.description
95
+ if self.priority is not None:
96
+ result['priority'] = self.priority
97
+ return result
98
+
99
+ def from_dict(self, m):
100
+ """
101
+ Populate the model instance from a dictionary.
102
+
103
+ Nested dictionaries are recursively converted to model objects.
104
+
105
+ :param m: Dictionary containing model data
106
+ :type m: dict
107
+
108
+ :return: Self reference for method chaining
109
+ :rtype: PublicRecord
110
+
111
+ :raises TypeError: If input is not a dictionary type
112
+ :raises ValueError: If nested model conversion fails
113
+ """
114
+ m = m or dict()
115
+ if m.get('id') is not None:
116
+ self.id = m.get('id')
117
+ if m.get('rr') is not None:
118
+ self.rr = m.get('rr')
119
+ if m.get('status') is not None:
120
+ self.status = m.get('status')
121
+ if m.get('type') is not None:
122
+ self.type = m.get('type')
123
+ if m.get('value') is not None:
124
+ self.value = m.get('value')
125
+ if m.get('ttl') is not None:
126
+ self.ttl = m.get('ttl')
127
+ if m.get('line') is not None:
128
+ self.line = m.get('line')
129
+ if m.get('description') is not None:
130
+ self.description = m.get('description')
131
+ if m.get('priority') is not None:
132
+ self.priority = m.get('priority')
133
+ return self
@@ -0,0 +1,110 @@
1
+ """
2
+ PublicZone information
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+
7
+ from baiducloud_python_sdk_dns.models.tag_model import TagModel
8
+
9
+
10
+ class PublicZone(AbstractModel):
11
+ """
12
+ PublicZone
13
+ """
14
+
15
+ def __init__(
16
+ self, id=None, name=None, status=None, product_version=None, create_time=None, expire_time=None, tags=None
17
+ ):
18
+ """
19
+ Initialize PublicZone instance.
20
+
21
+ :param id: zone的id。
22
+ :type id: str (optional)
23
+
24
+ :param name: 域名名称。
25
+ :type name: str (optional)
26
+
27
+ :param status: status attribute
28
+ :type status: str (optional)
29
+
30
+ :param product_version: 产品版本,包含:基础版(free)、普惠版(discount)、企业版(flagship)。
31
+ :type product_version: str (optional)
32
+
33
+ :param create_time: 创建时间(北京时间),比如:“2022-04-28 17:05:45”。
34
+ :type create_time: str (optional)
35
+
36
+ :param expire_time: 到期时间(北京时间),比如:“2023-04-28 17:05:44”。
37
+ :type expire_time: str (optional)
38
+
39
+ :param tags: 标签键值对列表。
40
+ :type tags: List[TagModel] (optional)
41
+ """
42
+ super().__init__()
43
+ self.id = id
44
+ self.name = name
45
+ self.status = status
46
+ self.product_version = product_version
47
+ self.create_time = create_time
48
+ self.expire_time = expire_time
49
+ self.tags = tags
50
+
51
+ def to_dict(self):
52
+ """
53
+ Convert the model instance to a dictionary representation.
54
+
55
+ Nested model objects are recursively converted to dictionaries.
56
+
57
+ :return: Dictionary representation of the model
58
+ :rtype: dict
59
+ """
60
+ _map = super().to_dict()
61
+ if _map is not None:
62
+ return _map
63
+ result = dict()
64
+ if self.id is not None:
65
+ result['id'] = self.id
66
+ if self.name is not None:
67
+ result['name'] = self.name
68
+ if self.status is not None:
69
+ result['status'] = self.status
70
+ if self.product_version is not None:
71
+ result['productVersion'] = self.product_version
72
+ if self.create_time is not None:
73
+ result['createTime'] = self.create_time
74
+ if self.expire_time is not None:
75
+ result['expireTime'] = self.expire_time
76
+ if self.tags is not None:
77
+ result['tags'] = [i.to_dict() for i in self.tags]
78
+ return result
79
+
80
+ def from_dict(self, m):
81
+ """
82
+ Populate the model instance from a dictionary.
83
+
84
+ Nested dictionaries are recursively converted to model objects.
85
+
86
+ :param m: Dictionary containing model data
87
+ :type m: dict
88
+
89
+ :return: Self reference for method chaining
90
+ :rtype: PublicZone
91
+
92
+ :raises TypeError: If input is not a dictionary type
93
+ :raises ValueError: If nested model conversion fails
94
+ """
95
+ m = m or dict()
96
+ if m.get('id') is not None:
97
+ self.id = m.get('id')
98
+ if m.get('name') is not None:
99
+ self.name = m.get('name')
100
+ if m.get('status') is not None:
101
+ self.status = m.get('status')
102
+ if m.get('productVersion') is not None:
103
+ self.product_version = m.get('productVersion')
104
+ if m.get('createTime') is not None:
105
+ self.create_time = m.get('createTime')
106
+ if m.get('expireTime') is not None:
107
+ self.expire_time = m.get('expireTime')
108
+ if m.get('tags') is not None:
109
+ self.tags = [TagModel().from_dict(i) for i in m.get('tags')]
110
+ return self
@@ -0,0 +1,83 @@
1
+ """
2
+ Request entity for PurchaseAPaidDomainNameRequest information.
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+ from baiducloud_python_sdk_dns.models.billing import Billing
7
+
8
+
9
+ class PurchaseAPaidDomainNameRequest(AbstractModel):
10
+ """
11
+ Request entity for PurchaseAPaidDomainNameRequest operation.
12
+
13
+ This class encapsulates all parameters for the API request.
14
+ """
15
+
16
+ def __init__(self, names, product_version, billing, client_token=None):
17
+ """
18
+ Initialize PurchaseAPaidDomainNameRequest request entity.
19
+
20
+ :param client_token: client_token parameter
21
+ :type client_token: str (optional)
22
+
23
+ :param names: 域名的名称。
24
+ :type names: List[str] (required)
25
+
26
+ :param product_version: 购买的产品版本,包含:普惠版(“discount”)、企业版(“flagship”)。
27
+ :type product_version: str (required)
28
+
29
+ :param billing: 计费信息。
30
+ :type billing: Billing (required)
31
+ """
32
+ super().__init__()
33
+ self.client_token = client_token
34
+ self.names = names
35
+ self.product_version = product_version
36
+ self.billing = billing
37
+
38
+ def to_dict(self):
39
+ """
40
+ Convert the request entity to a dictionary representation.
41
+
42
+ Nested model objects are recursively converted to dictionaries.
43
+
44
+ :return: Dictionary representation of the request
45
+ :rtype: dict
46
+ """
47
+ _map = super().to_dict()
48
+ if _map is not None:
49
+ return _map
50
+ result = dict()
51
+ if self.names is not None:
52
+ result['names'] = self.names
53
+ if self.product_version is not None:
54
+ result['productVersion'] = self.product_version
55
+ if self.billing is not None:
56
+ result['billing'] = self.billing.to_dict()
57
+ return result
58
+
59
+ def from_dict(self, m):
60
+ """
61
+ Populate the request entity from a dictionary.
62
+
63
+ Nested dictionaries are recursively converted to model objects.
64
+
65
+ :param m: Dictionary containing request data
66
+ :type m: dict
67
+
68
+ :return: Self reference for method chaining
69
+ :rtype: PurchaseAPaidDomainNameRequest
70
+
71
+ :raises TypeError: If input is not a dictionary or field type mismatch
72
+ :raises ValueError: If nested model conversion fails
73
+ """
74
+ m = m or dict()
75
+ if m.get('clientToken') is not None:
76
+ self.client_token = m.get('clientToken')
77
+ if m.get('names') is not None:
78
+ self.names = m.get('names')
79
+ if m.get('productVersion') is not None:
80
+ self.product_version = m.get('productVersion')
81
+ if m.get('billing') is not None:
82
+ self.billing = Billing().from_dict(m.get('billing'))
83
+ return self
@@ -0,0 +1,82 @@
1
+ """
2
+ Request entity for QueryAndParseRecordListRequest information.
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.abstract_model import AbstractModel
6
+
7
+
8
+ class QueryAndParseRecordListRequest(AbstractModel):
9
+ """
10
+ Request entity for QueryAndParseRecordListRequest operation.
11
+
12
+ This class encapsulates all parameters for the API request.
13
+ """
14
+
15
+ def __init__(self, zone_name, rr=None, id=None, marker=None, max_keys=None):
16
+ """
17
+ Initialize QueryAndParseRecordListRequest request entity.
18
+
19
+ :param zone_name: zone_name parameter
20
+ :type zone_name: str (required)
21
+
22
+ :param rr: rr parameter
23
+ :type rr: str (optional)
24
+
25
+ :param id: id parameter
26
+ :type id: str (optional)
27
+
28
+ :param marker: marker parameter
29
+ :type marker: str (optional)
30
+
31
+ :param max_keys: max_keys parameter
32
+ :type max_keys: int (optional)
33
+ """
34
+ super().__init__()
35
+ self.zone_name = zone_name
36
+ self.rr = rr
37
+ self.id = id
38
+ self.marker = marker
39
+ self.max_keys = max_keys
40
+
41
+ def to_dict(self):
42
+ """
43
+ Convert the request entity to a dictionary representation.
44
+
45
+ Nested model objects are recursively converted to dictionaries.
46
+
47
+ :return: Dictionary representation of the request
48
+ :rtype: dict
49
+ """
50
+ _map = super().to_dict()
51
+ if _map is not None:
52
+ return _map
53
+ result = dict()
54
+ return result
55
+
56
+ def from_dict(self, m):
57
+ """
58
+ Populate the request entity from a dictionary.
59
+
60
+ Nested dictionaries are recursively converted to model objects.
61
+
62
+ :param m: Dictionary containing request data
63
+ :type m: dict
64
+
65
+ :return: Self reference for method chaining
66
+ :rtype: QueryAndParseRecordListRequest
67
+
68
+ :raises TypeError: If input is not a dictionary or field type mismatch
69
+ :raises ValueError: If nested model conversion fails
70
+ """
71
+ m = m or dict()
72
+ if m.get('zoneName') is not None:
73
+ self.zone_name = m.get('zoneName')
74
+ if m.get('rr') is not None:
75
+ self.rr = m.get('rr')
76
+ if m.get('id') is not None:
77
+ self.id = m.get('id')
78
+ if m.get('marker') is not None:
79
+ self.marker = m.get('marker')
80
+ if m.get('maxKeys') is not None:
81
+ self.max_keys = m.get('maxKeys')
82
+ return self
@@ -0,0 +1,94 @@
1
+ """
2
+ Request entity for QueryAndParseRecordListResponse information.
3
+ """
4
+
5
+ from baiducloud_python_sdk_core.bce_response import BceResponse
6
+ from baiducloud_python_sdk_dns.models.public_record import PublicRecord
7
+
8
+
9
+ class QueryAndParseRecordListResponse(BceResponse):
10
+ """
11
+ QueryAndParseRecordListResponse
12
+ """
13
+
14
+ def __init__(self, marker=None, is_truncated=None, next_marker=None, max_keys=None, records=None):
15
+ """
16
+ Initialize QueryAndParseRecordListResponse response.
17
+
18
+ :param marker: 标记查询的起始位置。
19
+ :type marker: str (optional)
20
+
21
+ :param is_truncated: true表示后面还有数据,false表示已经是最后一页。
22
+ :type is_truncated: bool (optional)
23
+
24
+ :param next_marker: 获取下一页所需要传递的marker值。当isTruncated为false时,该域不出现。
25
+ :type next_marker: str (optional)
26
+
27
+ :param max_keys: 每页包含的最大数量。
28
+ :type max_keys: int (optional)
29
+
30
+ :param records: 包含查询结果的解析记录列表。
31
+ :type records: List[PublicRecord] (optional)
32
+ """
33
+ super().__init__()
34
+ self.marker = marker
35
+ self.is_truncated = is_truncated
36
+ self.next_marker = next_marker
37
+ self.max_keys = max_keys
38
+ self.records = records
39
+
40
+ def to_dict(self):
41
+ """
42
+ Convert the response instance to a dictionary representation.
43
+
44
+ Includes metadata from the parent BceResponse class.
45
+ Nested model objects are recursively converted to dictionaries.
46
+
47
+ :return: Dictionary representation of the response
48
+ :rtype: dict
49
+ """
50
+ _map = super().to_dict()
51
+ if _map is not None:
52
+ return _map
53
+ result = dict()
54
+ if self.metadata is not None:
55
+ result['metadata'] = dict(self.metadata)
56
+ if self.marker is not None:
57
+ result['marker'] = self.marker
58
+ if self.is_truncated is not None:
59
+ result['isTruncated'] = self.is_truncated
60
+ if self.next_marker is not None:
61
+ result['nextMarker'] = self.next_marker
62
+ if self.max_keys is not None:
63
+ result['maxKeys'] = self.max_keys
64
+ if self.records is not None:
65
+ result['records'] = [i.to_dict() for i in self.records]
66
+ return result
67
+
68
+ def from_dict(self, m):
69
+ """
70
+ Populate the response instance from a dictionary.
71
+
72
+ Nested dictionaries are recursively converted to model objects.
73
+
74
+ :param m: Dictionary containing response data
75
+ :type m: dict
76
+
77
+ :return: Self reference for method chaining
78
+ :rtype: QueryAndParseRecordListResponse
79
+
80
+ :raises TypeError: If input is not a dictionary or field type mismatch
81
+ :raises ValueError: If nested model conversion fails
82
+ """
83
+ m = m or dict()
84
+ if m.get('marker') is not None:
85
+ self.marker = m.get('marker')
86
+ if m.get('isTruncated') is not None:
87
+ self.is_truncated = m.get('isTruncated')
88
+ if m.get('nextMarker') is not None:
89
+ self.next_marker = m.get('nextMarker')
90
+ if m.get('maxKeys') is not None:
91
+ self.max_keys = m.get('maxKeys')
92
+ if m.get('records') is not None:
93
+ self.records = [PublicRecord().from_dict(i) for i in m.get('records')]
94
+ return self