huaweicloudsdkdcs 3.1.148__py2.py3-none-any.whl → 3.1.149__py2.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.

Potentially problematic release.


This version of huaweicloudsdkdcs might be problematic. Click here for more details.

Files changed (40) hide show
  1. huaweicloudsdkdcs/v2/__init__.py +29 -0
  2. huaweicloudsdkdcs/v2/dcs_async_client.py +604 -0
  3. huaweicloudsdkdcs/v2/dcs_client.py +604 -0
  4. huaweicloudsdkdcs/v2/model/__init__.py +29 -0
  5. huaweicloudsdkdcs/v2/model/band_width.py +144 -0
  6. huaweicloudsdkdcs/v2/model/create_instance_body.py +3 -3
  7. huaweicloudsdkdcs/v2/model/create_offline_key_analysis_request.py +139 -0
  8. huaweicloudsdkdcs/v2/model/create_offline_key_analysis_request_body.py +143 -0
  9. huaweicloudsdkdcs/v2/model/create_offline_key_analysis_response.py +116 -0
  10. huaweicloudsdkdcs/v2/model/delete_offline_key_analysis_task_request.py +142 -0
  11. huaweicloudsdkdcs/v2/model/delete_offline_key_analysis_task_response.py +116 -0
  12. huaweicloudsdkdcs/v2/model/dims_info.py +144 -0
  13. huaweicloudsdkdcs/v2/model/download_hot_key_request.py +142 -0
  14. huaweicloudsdkdcs/v2/model/download_hot_key_response.py +85 -0
  15. huaweicloudsdkdcs/v2/model/key_space.py +202 -0
  16. huaweicloudsdkdcs/v2/model/key_type_byte.py +144 -0
  17. huaweicloudsdkdcs/v2/model/key_type_num.py +144 -0
  18. huaweicloudsdkdcs/v2/model/largest_key.py +202 -0
  19. huaweicloudsdkdcs/v2/model/largest_key_prefix.py +202 -0
  20. huaweicloudsdkdcs/v2/model/list_offline_key_analysis_task_request.py +201 -0
  21. huaweicloudsdkdcs/v2/model/list_offline_key_analysis_task_response.py +174 -0
  22. huaweicloudsdkdcs/v2/model/migrate_az_request.py +139 -0
  23. huaweicloudsdkdcs/v2/model/migrate_az_request_body.py +144 -0
  24. huaweicloudsdkdcs/v2/model/migrate_az_response.py +85 -0
  25. huaweicloudsdkdcs/v2/model/offline_key_analysis_record.py +231 -0
  26. huaweicloudsdkdcs/v2/model/rename_command_resp.py +119 -3
  27. huaweicloudsdkdcs/v2/model/rollback_exchange_instance_ip_request.py +114 -0
  28. huaweicloudsdkdcs/v2/model/rollback_exchange_instance_ip_response.py +85 -0
  29. huaweicloudsdkdcs/v2/model/show_instance_topology_request.py +114 -0
  30. huaweicloudsdkdcs/v2/model/show_instance_topology_response.py +290 -0
  31. huaweicloudsdkdcs/v2/model/show_offline_key_analysis_task_request.py +142 -0
  32. huaweicloudsdkdcs/v2/model/show_offline_key_analysis_task_response.py +580 -0
  33. huaweicloudsdkdcs/v2/model/topology_info.py +538 -0
  34. huaweicloudsdkdcs/v2/model/update_ip_whitelist_async_request.py +139 -0
  35. huaweicloudsdkdcs/v2/model/update_ip_whitelist_async_response.py +116 -0
  36. {huaweicloudsdkdcs-3.1.148.dist-info → huaweicloudsdkdcs-3.1.149.dist-info}/METADATA +2 -2
  37. {huaweicloudsdkdcs-3.1.148.dist-info → huaweicloudsdkdcs-3.1.149.dist-info}/RECORD +40 -11
  38. {huaweicloudsdkdcs-3.1.148.dist-info → huaweicloudsdkdcs-3.1.149.dist-info}/LICENSE +0 -0
  39. {huaweicloudsdkdcs-3.1.148.dist-info → huaweicloudsdkdcs-3.1.149.dist-info}/WHEEL +0 -0
  40. {huaweicloudsdkdcs-3.1.148.dist-info → huaweicloudsdkdcs-3.1.149.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,202 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
6
+
7
+
8
+ class LargestKey:
9
+
10
+ """
11
+ Attributes:
12
+ openapi_types (dict): The key is attribute name
13
+ and the value is attribute type.
14
+ attribute_map (dict): The key is attribute name
15
+ and the value is json key in definition.
16
+ """
17
+ sensitive_list = []
18
+
19
+ openapi_types = {
20
+ 'key': 'str',
21
+ 'type': 'str',
22
+ 'bytes': 'int',
23
+ 'num_of_elem': 'int'
24
+ }
25
+
26
+ attribute_map = {
27
+ 'key': 'key',
28
+ 'type': 'type',
29
+ 'bytes': 'bytes',
30
+ 'num_of_elem': 'num_of_elem'
31
+ }
32
+
33
+ def __init__(self, key=None, type=None, bytes=None, num_of_elem=None):
34
+ r"""LargestKey
35
+
36
+ The model defined in huaweicloud sdk
37
+
38
+ :param key: **参数解释**: Key名称。 **取值范围**: 不涉及。
39
+ :type key: str
40
+ :param type: **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
41
+ :type type: str
42
+ :param bytes: **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
43
+ :type bytes: int
44
+ :param num_of_elem: **参数解释**: 元素数量或元素大小(String类型为元素大小,单位:Bytes。非String类型为元素数量)。 **取值范围**: 不涉及。
45
+ :type num_of_elem: int
46
+ """
47
+
48
+
49
+
50
+ self._key = None
51
+ self._type = None
52
+ self._bytes = None
53
+ self._num_of_elem = None
54
+ self.discriminator = None
55
+
56
+ if key is not None:
57
+ self.key = key
58
+ if type is not None:
59
+ self.type = type
60
+ if bytes is not None:
61
+ self.bytes = bytes
62
+ if num_of_elem is not None:
63
+ self.num_of_elem = num_of_elem
64
+
65
+ @property
66
+ def key(self):
67
+ r"""Gets the key of this LargestKey.
68
+
69
+ **参数解释**: Key名称。 **取值范围**: 不涉及。
70
+
71
+ :return: The key of this LargestKey.
72
+ :rtype: str
73
+ """
74
+ return self._key
75
+
76
+ @key.setter
77
+ def key(self, key):
78
+ r"""Sets the key of this LargestKey.
79
+
80
+ **参数解释**: Key名称。 **取值范围**: 不涉及。
81
+
82
+ :param key: The key of this LargestKey.
83
+ :type key: str
84
+ """
85
+ self._key = key
86
+
87
+ @property
88
+ def type(self):
89
+ r"""Gets the type of this LargestKey.
90
+
91
+ **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
92
+
93
+ :return: The type of this LargestKey.
94
+ :rtype: str
95
+ """
96
+ return self._type
97
+
98
+ @type.setter
99
+ def type(self, type):
100
+ r"""Sets the type of this LargestKey.
101
+
102
+ **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
103
+
104
+ :param type: The type of this LargestKey.
105
+ :type type: str
106
+ """
107
+ self._type = type
108
+
109
+ @property
110
+ def bytes(self):
111
+ r"""Gets the bytes of this LargestKey.
112
+
113
+ **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
114
+
115
+ :return: The bytes of this LargestKey.
116
+ :rtype: int
117
+ """
118
+ return self._bytes
119
+
120
+ @bytes.setter
121
+ def bytes(self, bytes):
122
+ r"""Sets the bytes of this LargestKey.
123
+
124
+ **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
125
+
126
+ :param bytes: The bytes of this LargestKey.
127
+ :type bytes: int
128
+ """
129
+ self._bytes = bytes
130
+
131
+ @property
132
+ def num_of_elem(self):
133
+ r"""Gets the num_of_elem of this LargestKey.
134
+
135
+ **参数解释**: 元素数量或元素大小(String类型为元素大小,单位:Bytes。非String类型为元素数量)。 **取值范围**: 不涉及。
136
+
137
+ :return: The num_of_elem of this LargestKey.
138
+ :rtype: int
139
+ """
140
+ return self._num_of_elem
141
+
142
+ @num_of_elem.setter
143
+ def num_of_elem(self, num_of_elem):
144
+ r"""Sets the num_of_elem of this LargestKey.
145
+
146
+ **参数解释**: 元素数量或元素大小(String类型为元素大小,单位:Bytes。非String类型为元素数量)。 **取值范围**: 不涉及。
147
+
148
+ :param num_of_elem: The num_of_elem of this LargestKey.
149
+ :type num_of_elem: int
150
+ """
151
+ self._num_of_elem = num_of_elem
152
+
153
+ def to_dict(self):
154
+ """Returns the model properties as a dict"""
155
+ result = {}
156
+
157
+ for attr, _ in six.iteritems(self.openapi_types):
158
+ value = getattr(self, attr)
159
+ if isinstance(value, list):
160
+ result[attr] = list(map(
161
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
162
+ value
163
+ ))
164
+ elif hasattr(value, "to_dict"):
165
+ result[attr] = value.to_dict()
166
+ elif isinstance(value, dict):
167
+ result[attr] = dict(map(
168
+ lambda item: (item[0], item[1].to_dict())
169
+ if hasattr(item[1], "to_dict") else item,
170
+ value.items()
171
+ ))
172
+ else:
173
+ if attr in self.sensitive_list:
174
+ result[attr] = "****"
175
+ else:
176
+ result[attr] = value
177
+
178
+ return result
179
+
180
+ def to_str(self):
181
+ """Returns the string representation of the model"""
182
+ import simplejson as json
183
+ if six.PY2:
184
+ import sys
185
+ reload(sys)
186
+ sys.setdefaultencoding("utf-8")
187
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
188
+
189
+ def __repr__(self):
190
+ """For `print`"""
191
+ return self.to_str()
192
+
193
+ def __eq__(self, other):
194
+ """Returns true if both objects are equal"""
195
+ if not isinstance(other, LargestKey):
196
+ return False
197
+
198
+ return self.__dict__ == other.__dict__
199
+
200
+ def __ne__(self, other):
201
+ """Returns true if both objects are not equal"""
202
+ return not self == other
@@ -0,0 +1,202 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
6
+
7
+
8
+ class LargestKeyPrefix:
9
+
10
+ """
11
+ Attributes:
12
+ openapi_types (dict): The key is attribute name
13
+ and the value is attribute type.
14
+ attribute_map (dict): The key is attribute name
15
+ and the value is json key in definition.
16
+ """
17
+ sensitive_list = []
18
+
19
+ openapi_types = {
20
+ 'key_prefix': 'str',
21
+ 'type': 'str',
22
+ 'bytes': 'int',
23
+ 'num': 'int'
24
+ }
25
+
26
+ attribute_map = {
27
+ 'key_prefix': 'key_prefix',
28
+ 'type': 'type',
29
+ 'bytes': 'bytes',
30
+ 'num': 'num'
31
+ }
32
+
33
+ def __init__(self, key_prefix=None, type=None, bytes=None, num=None):
34
+ r"""LargestKeyPrefix
35
+
36
+ The model defined in huaweicloud sdk
37
+
38
+ :param key_prefix: **参数解释**: 前缀名称。 **取值范围**: 不涉及。
39
+ :type key_prefix: str
40
+ :param type: **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
41
+ :type type: str
42
+ :param bytes: **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
43
+ :type bytes: int
44
+ :param num: **参数解释**: 相同前缀key的数量。 **取值范围**: 不涉及。
45
+ :type num: int
46
+ """
47
+
48
+
49
+
50
+ self._key_prefix = None
51
+ self._type = None
52
+ self._bytes = None
53
+ self._num = None
54
+ self.discriminator = None
55
+
56
+ if key_prefix is not None:
57
+ self.key_prefix = key_prefix
58
+ if type is not None:
59
+ self.type = type
60
+ if bytes is not None:
61
+ self.bytes = bytes
62
+ if num is not None:
63
+ self.num = num
64
+
65
+ @property
66
+ def key_prefix(self):
67
+ r"""Gets the key_prefix of this LargestKeyPrefix.
68
+
69
+ **参数解释**: 前缀名称。 **取值范围**: 不涉及。
70
+
71
+ :return: The key_prefix of this LargestKeyPrefix.
72
+ :rtype: str
73
+ """
74
+ return self._key_prefix
75
+
76
+ @key_prefix.setter
77
+ def key_prefix(self, key_prefix):
78
+ r"""Sets the key_prefix of this LargestKeyPrefix.
79
+
80
+ **参数解释**: 前缀名称。 **取值范围**: 不涉及。
81
+
82
+ :param key_prefix: The key_prefix of this LargestKeyPrefix.
83
+ :type key_prefix: str
84
+ """
85
+ self._key_prefix = key_prefix
86
+
87
+ @property
88
+ def type(self):
89
+ r"""Gets the type of this LargestKeyPrefix.
90
+
91
+ **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
92
+
93
+ :return: The type of this LargestKeyPrefix.
94
+ :rtype: str
95
+ """
96
+ return self._type
97
+
98
+ @type.setter
99
+ def type(self, type):
100
+ r"""Sets the type of this LargestKeyPrefix.
101
+
102
+ **参数解释**: Key的数据类型。 **取值范围**: string list set zset hash
103
+
104
+ :param type: The type of this LargestKeyPrefix.
105
+ :type type: str
106
+ """
107
+ self._type = type
108
+
109
+ @property
110
+ def bytes(self):
111
+ r"""Gets the bytes of this LargestKeyPrefix.
112
+
113
+ **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
114
+
115
+ :return: The bytes of this LargestKeyPrefix.
116
+ :rtype: int
117
+ """
118
+ return self._bytes
119
+
120
+ @bytes.setter
121
+ def bytes(self, bytes):
122
+ r"""Sets the bytes of this LargestKeyPrefix.
123
+
124
+ **参数解释**: Key的大小,单位:Bytes。 **取值范围**: 不涉及。
125
+
126
+ :param bytes: The bytes of this LargestKeyPrefix.
127
+ :type bytes: int
128
+ """
129
+ self._bytes = bytes
130
+
131
+ @property
132
+ def num(self):
133
+ r"""Gets the num of this LargestKeyPrefix.
134
+
135
+ **参数解释**: 相同前缀key的数量。 **取值范围**: 不涉及。
136
+
137
+ :return: The num of this LargestKeyPrefix.
138
+ :rtype: int
139
+ """
140
+ return self._num
141
+
142
+ @num.setter
143
+ def num(self, num):
144
+ r"""Sets the num of this LargestKeyPrefix.
145
+
146
+ **参数解释**: 相同前缀key的数量。 **取值范围**: 不涉及。
147
+
148
+ :param num: The num of this LargestKeyPrefix.
149
+ :type num: int
150
+ """
151
+ self._num = num
152
+
153
+ def to_dict(self):
154
+ """Returns the model properties as a dict"""
155
+ result = {}
156
+
157
+ for attr, _ in six.iteritems(self.openapi_types):
158
+ value = getattr(self, attr)
159
+ if isinstance(value, list):
160
+ result[attr] = list(map(
161
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
162
+ value
163
+ ))
164
+ elif hasattr(value, "to_dict"):
165
+ result[attr] = value.to_dict()
166
+ elif isinstance(value, dict):
167
+ result[attr] = dict(map(
168
+ lambda item: (item[0], item[1].to_dict())
169
+ if hasattr(item[1], "to_dict") else item,
170
+ value.items()
171
+ ))
172
+ else:
173
+ if attr in self.sensitive_list:
174
+ result[attr] = "****"
175
+ else:
176
+ result[attr] = value
177
+
178
+ return result
179
+
180
+ def to_str(self):
181
+ """Returns the string representation of the model"""
182
+ import simplejson as json
183
+ if six.PY2:
184
+ import sys
185
+ reload(sys)
186
+ sys.setdefaultencoding("utf-8")
187
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
188
+
189
+ def __repr__(self):
190
+ """For `print`"""
191
+ return self.to_str()
192
+
193
+ def __eq__(self, other):
194
+ """Returns true if both objects are equal"""
195
+ if not isinstance(other, LargestKeyPrefix):
196
+ return False
197
+
198
+ return self.__dict__ == other.__dict__
199
+
200
+ def __ne__(self, other):
201
+ """Returns true if both objects are not equal"""
202
+ return not self == other
@@ -0,0 +1,201 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
6
+
7
+
8
+ class ListOfflineKeyAnalysisTaskRequest:
9
+
10
+ """
11
+ Attributes:
12
+ openapi_types (dict): The key is attribute name
13
+ and the value is attribute type.
14
+ attribute_map (dict): The key is attribute name
15
+ and the value is json key in definition.
16
+ """
17
+ sensitive_list = []
18
+
19
+ openapi_types = {
20
+ 'instance_id': 'str',
21
+ 'offset': 'int',
22
+ 'limit': 'int',
23
+ 'status': 'str'
24
+ }
25
+
26
+ attribute_map = {
27
+ 'instance_id': 'instance_id',
28
+ 'offset': 'offset',
29
+ 'limit': 'limit',
30
+ 'status': 'status'
31
+ }
32
+
33
+ def __init__(self, instance_id=None, offset=None, limit=None, status=None):
34
+ r"""ListOfflineKeyAnalysisTaskRequest
35
+
36
+ The model defined in huaweicloud sdk
37
+
38
+ :param instance_id: **参数解释**: 实例ID。可通过DCS控制台进入实例详情界面查看。 **约束限制**: 不涉及。 **取值范围**: 不涉及。 **默认取值**: 不涉及。
39
+ :type instance_id: str
40
+ :param offset: **参数解释**: 偏移量,表示从此偏移量开始查询。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 0
41
+ :type offset: int
42
+ :param limit: **参数解释**: 每页显示的条目数量。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 10
43
+ :type limit: int
44
+ :param status: **参数解释**: 离线分析的任务状态。 **约束限制**: 不涉及。 **取值范围**: waiting:任务等待中。 running:任务进行中。 success:任务执行成功。 failed:任务执行失败。 **默认取值**: 不涉及。
45
+ :type status: str
46
+ """
47
+
48
+
49
+
50
+ self._instance_id = None
51
+ self._offset = None
52
+ self._limit = None
53
+ self._status = None
54
+ self.discriminator = None
55
+
56
+ self.instance_id = instance_id
57
+ if offset is not None:
58
+ self.offset = offset
59
+ if limit is not None:
60
+ self.limit = limit
61
+ if status is not None:
62
+ self.status = status
63
+
64
+ @property
65
+ def instance_id(self):
66
+ r"""Gets the instance_id of this ListOfflineKeyAnalysisTaskRequest.
67
+
68
+ **参数解释**: 实例ID。可通过DCS控制台进入实例详情界面查看。 **约束限制**: 不涉及。 **取值范围**: 不涉及。 **默认取值**: 不涉及。
69
+
70
+ :return: The instance_id of this ListOfflineKeyAnalysisTaskRequest.
71
+ :rtype: str
72
+ """
73
+ return self._instance_id
74
+
75
+ @instance_id.setter
76
+ def instance_id(self, instance_id):
77
+ r"""Sets the instance_id of this ListOfflineKeyAnalysisTaskRequest.
78
+
79
+ **参数解释**: 实例ID。可通过DCS控制台进入实例详情界面查看。 **约束限制**: 不涉及。 **取值范围**: 不涉及。 **默认取值**: 不涉及。
80
+
81
+ :param instance_id: The instance_id of this ListOfflineKeyAnalysisTaskRequest.
82
+ :type instance_id: str
83
+ """
84
+ self._instance_id = instance_id
85
+
86
+ @property
87
+ def offset(self):
88
+ r"""Gets the offset of this ListOfflineKeyAnalysisTaskRequest.
89
+
90
+ **参数解释**: 偏移量,表示从此偏移量开始查询。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 0
91
+
92
+ :return: The offset of this ListOfflineKeyAnalysisTaskRequest.
93
+ :rtype: int
94
+ """
95
+ return self._offset
96
+
97
+ @offset.setter
98
+ def offset(self, offset):
99
+ r"""Sets the offset of this ListOfflineKeyAnalysisTaskRequest.
100
+
101
+ **参数解释**: 偏移量,表示从此偏移量开始查询。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 0
102
+
103
+ :param offset: The offset of this ListOfflineKeyAnalysisTaskRequest.
104
+ :type offset: int
105
+ """
106
+ self._offset = offset
107
+
108
+ @property
109
+ def limit(self):
110
+ r"""Gets the limit of this ListOfflineKeyAnalysisTaskRequest.
111
+
112
+ **参数解释**: 每页显示的条目数量。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 10
113
+
114
+ :return: The limit of this ListOfflineKeyAnalysisTaskRequest.
115
+ :rtype: int
116
+ """
117
+ return self._limit
118
+
119
+ @limit.setter
120
+ def limit(self, limit):
121
+ r"""Sets the limit of this ListOfflineKeyAnalysisTaskRequest.
122
+
123
+ **参数解释**: 每页显示的条目数量。 **约束限制**: 不涉及。 **取值范围**: 大于等于0。 **默认取值**: 10
124
+
125
+ :param limit: The limit of this ListOfflineKeyAnalysisTaskRequest.
126
+ :type limit: int
127
+ """
128
+ self._limit = limit
129
+
130
+ @property
131
+ def status(self):
132
+ r"""Gets the status of this ListOfflineKeyAnalysisTaskRequest.
133
+
134
+ **参数解释**: 离线分析的任务状态。 **约束限制**: 不涉及。 **取值范围**: waiting:任务等待中。 running:任务进行中。 success:任务执行成功。 failed:任务执行失败。 **默认取值**: 不涉及。
135
+
136
+ :return: The status of this ListOfflineKeyAnalysisTaskRequest.
137
+ :rtype: str
138
+ """
139
+ return self._status
140
+
141
+ @status.setter
142
+ def status(self, status):
143
+ r"""Sets the status of this ListOfflineKeyAnalysisTaskRequest.
144
+
145
+ **参数解释**: 离线分析的任务状态。 **约束限制**: 不涉及。 **取值范围**: waiting:任务等待中。 running:任务进行中。 success:任务执行成功。 failed:任务执行失败。 **默认取值**: 不涉及。
146
+
147
+ :param status: The status of this ListOfflineKeyAnalysisTaskRequest.
148
+ :type status: str
149
+ """
150
+ self._status = status
151
+
152
+ def to_dict(self):
153
+ """Returns the model properties as a dict"""
154
+ result = {}
155
+
156
+ for attr, _ in six.iteritems(self.openapi_types):
157
+ value = getattr(self, attr)
158
+ if isinstance(value, list):
159
+ result[attr] = list(map(
160
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
161
+ value
162
+ ))
163
+ elif hasattr(value, "to_dict"):
164
+ result[attr] = value.to_dict()
165
+ elif isinstance(value, dict):
166
+ result[attr] = dict(map(
167
+ lambda item: (item[0], item[1].to_dict())
168
+ if hasattr(item[1], "to_dict") else item,
169
+ value.items()
170
+ ))
171
+ else:
172
+ if attr in self.sensitive_list:
173
+ result[attr] = "****"
174
+ else:
175
+ result[attr] = value
176
+
177
+ return result
178
+
179
+ def to_str(self):
180
+ """Returns the string representation of the model"""
181
+ import simplejson as json
182
+ if six.PY2:
183
+ import sys
184
+ reload(sys)
185
+ sys.setdefaultencoding("utf-8")
186
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
187
+
188
+ def __repr__(self):
189
+ """For `print`"""
190
+ return self.to_str()
191
+
192
+ def __eq__(self, other):
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, ListOfflineKeyAnalysisTaskRequest):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other):
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other