huaweicloudsdkeihealth 3.1.107__py2.py3-none-any.whl → 3.1.109__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.
Files changed (57) hide show
  1. huaweicloudsdkeihealth/v1/__init__.py +31 -0
  2. huaweicloudsdkeihealth/v1/eihealth_async_client.py +543 -0
  3. huaweicloudsdkeihealth/v1/eihealth_client.py +543 -0
  4. huaweicloudsdkeihealth/v1/model/__init__.py +31 -0
  5. huaweicloudsdkeihealth/v1/model/base_model.py +142 -0
  6. huaweicloudsdkeihealth/v1/model/base_model_dto.py +231 -0
  7. huaweicloudsdkeihealth/v1/model/bind_site_dto.py +3 -3
  8. huaweicloudsdkeihealth/v1/model/cpi_receptor.py +226 -0
  9. huaweicloudsdkeihealth/v1/model/create_admet_job_req.py +61 -3
  10. huaweicloudsdkeihealth/v1/model/create_cpi_job_req.py +166 -0
  11. huaweicloudsdkeihealth/v1/model/create_cpi_job_request.py +139 -0
  12. huaweicloudsdkeihealth/v1/model/create_cpi_job_response.py +145 -0
  13. huaweicloudsdkeihealth/v1/model/create_dock_job_req.py +32 -3
  14. huaweicloudsdkeihealth/v1/model/create_drug_ligand_interaction2d_svg_req.py +32 -3
  15. huaweicloudsdkeihealth/v1/model/create_gen_job_req.py +338 -0
  16. huaweicloudsdkeihealth/v1/model/create_gen_job_request.py +139 -0
  17. huaweicloudsdkeihealth/v1/model/create_gen_job_response.py +145 -0
  18. huaweicloudsdkeihealth/v1/model/create_ligand_preview_task_req.py +32 -3
  19. huaweicloudsdkeihealth/v1/model/create_model_req.py +32 -3
  20. huaweicloudsdkeihealth/v1/model/create_optm_job_req.py +30 -1
  21. huaweicloudsdkeihealth/v1/model/create_target_opt_job_req.py +184 -0
  22. huaweicloudsdkeihealth/v1/model/create_target_opt_job_request.py +139 -0
  23. huaweicloudsdkeihealth/v1/model/create_target_opt_job_response.py +145 -0
  24. huaweicloudsdkeihealth/v1/model/fasta_receptor.py +197 -0
  25. huaweicloudsdkeihealth/v1/model/interaction.py +166 -0
  26. huaweicloudsdkeihealth/v1/model/interaction_constraint_dto.py +167 -0
  27. huaweicloudsdkeihealth/v1/model/interaction_type.py +91 -0
  28. huaweicloudsdkeihealth/v1/model/list_base_model_request.py +202 -0
  29. huaweicloudsdkeihealth/v1/model/list_base_model_response.py +145 -0
  30. huaweicloudsdkeihealth/v1/model/list_drug_model_request.py +35 -6
  31. huaweicloudsdkeihealth/v1/model/md_param.py +169 -0
  32. huaweicloudsdkeihealth/v1/model/md_step_param.py +202 -0
  33. huaweicloudsdkeihealth/v1/model/model_dto.py +61 -3
  34. huaweicloudsdkeihealth/v1/model/pocket_fragment.py +30 -1
  35. huaweicloudsdkeihealth/v1/model/run_fasta_preprocess_req.py +168 -0
  36. huaweicloudsdkeihealth/v1/model/run_fasta_preprocess_request.py +139 -0
  37. huaweicloudsdkeihealth/v1/model/run_fasta_preprocess_response.py +145 -0
  38. huaweicloudsdkeihealth/v1/model/show_admet_job_response.py +57 -3
  39. huaweicloudsdkeihealth/v1/model/show_cpi_job_request.py +142 -0
  40. huaweicloudsdkeihealth/v1/model/show_cpi_job_response.py +170 -0
  41. huaweicloudsdkeihealth/v1/model/show_docking_job_response.py +30 -1
  42. huaweicloudsdkeihealth/v1/model/show_gen_job_request.py +142 -0
  43. huaweicloudsdkeihealth/v1/model/show_gen_job_response.py +365 -0
  44. huaweicloudsdkeihealth/v1/model/show_optm_job_response.py +26 -1
  45. huaweicloudsdkeihealth/v1/model/show_target_opt_job_request.py +142 -0
  46. huaweicloudsdkeihealth/v1/model/show_target_opt_job_response.py +187 -0
  47. huaweicloudsdkeihealth/v1/model/strong_constraint_dto.py +28 -3
  48. huaweicloudsdkeihealth/v1/model/strong_constraint_type.py +1 -0
  49. huaweicloudsdkeihealth/v1/model/target_opt_ligand.py +139 -0
  50. huaweicloudsdkeihealth/v1/model/target_opt_receptor.py +255 -0
  51. huaweicloudsdkeihealth/v1/model/weak_constraint_dto.py +28 -3
  52. huaweicloudsdkeihealth/v1/model/weak_constraint_type.py +1 -0
  53. {huaweicloudsdkeihealth-3.1.107.dist-info → huaweicloudsdkeihealth-3.1.109.dist-info}/METADATA +2 -2
  54. {huaweicloudsdkeihealth-3.1.107.dist-info → huaweicloudsdkeihealth-3.1.109.dist-info}/RECORD +57 -26
  55. {huaweicloudsdkeihealth-3.1.107.dist-info → huaweicloudsdkeihealth-3.1.109.dist-info}/WHEEL +1 -1
  56. {huaweicloudsdkeihealth-3.1.107.dist-info → huaweicloudsdkeihealth-3.1.109.dist-info}/LICENSE +0 -0
  57. {huaweicloudsdkeihealth-3.1.107.dist-info → huaweicloudsdkeihealth-3.1.109.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,139 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
6
+
7
+
8
+ class CreateGenJobRequest:
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
+ 'eihealth_project_id': 'str',
21
+ 'body': 'CreateGenJobReq'
22
+ }
23
+
24
+ attribute_map = {
25
+ 'eihealth_project_id': 'eihealth_project_id',
26
+ 'body': 'body'
27
+ }
28
+
29
+ def __init__(self, eihealth_project_id=None, body=None):
30
+ """CreateGenJobRequest
31
+
32
+ The model defined in huaweicloud sdk
33
+
34
+ :param eihealth_project_id: 平台项目ID。
35
+ :type eihealth_project_id: str
36
+ :param body: Body of the CreateGenJobRequest
37
+ :type body: :class:`huaweicloudsdkeihealth.v1.CreateGenJobReq`
38
+ """
39
+
40
+
41
+
42
+ self._eihealth_project_id = None
43
+ self._body = None
44
+ self.discriminator = None
45
+
46
+ self.eihealth_project_id = eihealth_project_id
47
+ if body is not None:
48
+ self.body = body
49
+
50
+ @property
51
+ def eihealth_project_id(self):
52
+ """Gets the eihealth_project_id of this CreateGenJobRequest.
53
+
54
+ 平台项目ID。
55
+
56
+ :return: The eihealth_project_id of this CreateGenJobRequest.
57
+ :rtype: str
58
+ """
59
+ return self._eihealth_project_id
60
+
61
+ @eihealth_project_id.setter
62
+ def eihealth_project_id(self, eihealth_project_id):
63
+ """Sets the eihealth_project_id of this CreateGenJobRequest.
64
+
65
+ 平台项目ID。
66
+
67
+ :param eihealth_project_id: The eihealth_project_id of this CreateGenJobRequest.
68
+ :type eihealth_project_id: str
69
+ """
70
+ self._eihealth_project_id = eihealth_project_id
71
+
72
+ @property
73
+ def body(self):
74
+ """Gets the body of this CreateGenJobRequest.
75
+
76
+ :return: The body of this CreateGenJobRequest.
77
+ :rtype: :class:`huaweicloudsdkeihealth.v1.CreateGenJobReq`
78
+ """
79
+ return self._body
80
+
81
+ @body.setter
82
+ def body(self, body):
83
+ """Sets the body of this CreateGenJobRequest.
84
+
85
+ :param body: The body of this CreateGenJobRequest.
86
+ :type body: :class:`huaweicloudsdkeihealth.v1.CreateGenJobReq`
87
+ """
88
+ self._body = body
89
+
90
+ def to_dict(self):
91
+ """Returns the model properties as a dict"""
92
+ result = {}
93
+
94
+ for attr, _ in six.iteritems(self.openapi_types):
95
+ value = getattr(self, attr)
96
+ if isinstance(value, list):
97
+ result[attr] = list(map(
98
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
99
+ value
100
+ ))
101
+ elif hasattr(value, "to_dict"):
102
+ result[attr] = value.to_dict()
103
+ elif isinstance(value, dict):
104
+ result[attr] = dict(map(
105
+ lambda item: (item[0], item[1].to_dict())
106
+ if hasattr(item[1], "to_dict") else item,
107
+ value.items()
108
+ ))
109
+ else:
110
+ if attr in self.sensitive_list:
111
+ result[attr] = "****"
112
+ else:
113
+ result[attr] = value
114
+
115
+ return result
116
+
117
+ def to_str(self):
118
+ """Returns the string representation of the model"""
119
+ import simplejson as json
120
+ if six.PY2:
121
+ import sys
122
+ reload(sys)
123
+ sys.setdefaultencoding("utf-8")
124
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
125
+
126
+ def __repr__(self):
127
+ """For `print`"""
128
+ return self.to_str()
129
+
130
+ def __eq__(self, other):
131
+ """Returns true if both objects are equal"""
132
+ if not isinstance(other, CreateGenJobRequest):
133
+ return False
134
+
135
+ return self.__dict__ == other.__dict__
136
+
137
+ def __ne__(self, other):
138
+ """Returns true if both objects are not equal"""
139
+ return not self == other
@@ -0,0 +1,145 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.sdk_response import SdkResponse
6
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
7
+
8
+
9
+ class CreateGenJobResponse(SdkResponse):
10
+
11
+ """
12
+ Attributes:
13
+ openapi_types (dict): The key is attribute name
14
+ and the value is attribute type.
15
+ attribute_map (dict): The key is attribute name
16
+ and the value is json key in definition.
17
+ """
18
+ sensitive_list = []
19
+
20
+ openapi_types = {
21
+ 'id': 'str',
22
+ 'limit_concurrency': 'int'
23
+ }
24
+
25
+ attribute_map = {
26
+ 'id': 'id',
27
+ 'limit_concurrency': 'limit_concurrency'
28
+ }
29
+
30
+ def __init__(self, id=None, limit_concurrency=None):
31
+ """CreateGenJobResponse
32
+
33
+ The model defined in huaweicloud sdk
34
+
35
+ :param id: 作业id
36
+ :type id: str
37
+ :param limit_concurrency: 限制的并发量
38
+ :type limit_concurrency: int
39
+ """
40
+
41
+ super(CreateGenJobResponse, self).__init__()
42
+
43
+ self._id = None
44
+ self._limit_concurrency = None
45
+ self.discriminator = None
46
+
47
+ if id is not None:
48
+ self.id = id
49
+ if limit_concurrency is not None:
50
+ self.limit_concurrency = limit_concurrency
51
+
52
+ @property
53
+ def id(self):
54
+ """Gets the id of this CreateGenJobResponse.
55
+
56
+ 作业id
57
+
58
+ :return: The id of this CreateGenJobResponse.
59
+ :rtype: str
60
+ """
61
+ return self._id
62
+
63
+ @id.setter
64
+ def id(self, id):
65
+ """Sets the id of this CreateGenJobResponse.
66
+
67
+ 作业id
68
+
69
+ :param id: The id of this CreateGenJobResponse.
70
+ :type id: str
71
+ """
72
+ self._id = id
73
+
74
+ @property
75
+ def limit_concurrency(self):
76
+ """Gets the limit_concurrency of this CreateGenJobResponse.
77
+
78
+ 限制的并发量
79
+
80
+ :return: The limit_concurrency of this CreateGenJobResponse.
81
+ :rtype: int
82
+ """
83
+ return self._limit_concurrency
84
+
85
+ @limit_concurrency.setter
86
+ def limit_concurrency(self, limit_concurrency):
87
+ """Sets the limit_concurrency of this CreateGenJobResponse.
88
+
89
+ 限制的并发量
90
+
91
+ :param limit_concurrency: The limit_concurrency of this CreateGenJobResponse.
92
+ :type limit_concurrency: int
93
+ """
94
+ self._limit_concurrency = limit_concurrency
95
+
96
+ def to_dict(self):
97
+ """Returns the model properties as a dict"""
98
+ result = {}
99
+
100
+ for attr, _ in six.iteritems(self.openapi_types):
101
+ value = getattr(self, attr)
102
+ if isinstance(value, list):
103
+ result[attr] = list(map(
104
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
105
+ value
106
+ ))
107
+ elif hasattr(value, "to_dict"):
108
+ result[attr] = value.to_dict()
109
+ elif isinstance(value, dict):
110
+ result[attr] = dict(map(
111
+ lambda item: (item[0], item[1].to_dict())
112
+ if hasattr(item[1], "to_dict") else item,
113
+ value.items()
114
+ ))
115
+ else:
116
+ if attr in self.sensitive_list:
117
+ result[attr] = "****"
118
+ else:
119
+ result[attr] = value
120
+
121
+ return result
122
+
123
+ def to_str(self):
124
+ """Returns the string representation of the model"""
125
+ import simplejson as json
126
+ if six.PY2:
127
+ import sys
128
+ reload(sys)
129
+ sys.setdefaultencoding("utf-8")
130
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
131
+
132
+ def __repr__(self):
133
+ """For `print`"""
134
+ return self.to_str()
135
+
136
+ def __eq__(self, other):
137
+ """Returns true if both objects are equal"""
138
+ if not isinstance(other, CreateGenJobResponse):
139
+ return False
140
+
141
+ return self.__dict__ == other.__dict__
142
+
143
+ def __ne__(self, other):
144
+ """Returns true if both objects are not equal"""
145
+ return not self == other
@@ -19,16 +19,18 @@ class CreateLigandPreviewTaskReq:
19
19
  openapi_types = {
20
20
  'ligand_file': 'DrugFile',
21
21
  'preview_count': 'int',
22
- 'count_limit': 'int'
22
+ 'count_limit': 'int',
23
+ 'generate_3d': 'bool'
23
24
  }
24
25
 
25
26
  attribute_map = {
26
27
  'ligand_file': 'ligand_file',
27
28
  'preview_count': 'preview_count',
28
- 'count_limit': 'count_limit'
29
+ 'count_limit': 'count_limit',
30
+ 'generate_3d': 'generate_3d'
29
31
  }
30
32
 
31
- def __init__(self, ligand_file=None, preview_count=None, count_limit=None):
33
+ def __init__(self, ligand_file=None, preview_count=None, count_limit=None, generate_3d=None):
32
34
  """CreateLigandPreviewTaskReq
33
35
 
34
36
  The model defined in huaweicloud sdk
@@ -39,6 +41,8 @@ class CreateLigandPreviewTaskReq:
39
41
  :type preview_count: int
40
42
  :param count_limit: 计数上限,若分子数量大于计数上限,则终止计数并在结果中标明计数不完整(has_more=true),计数数量应不小于preview_count
41
43
  :type count_limit: int
44
+ :param generate_3d: 是否生成3D构象,默认为true
45
+ :type generate_3d: bool
42
46
  """
43
47
 
44
48
 
@@ -46,6 +50,7 @@ class CreateLigandPreviewTaskReq:
46
50
  self._ligand_file = None
47
51
  self._preview_count = None
48
52
  self._count_limit = None
53
+ self._generate_3d = None
49
54
  self.discriminator = None
50
55
 
51
56
  self.ligand_file = ligand_file
@@ -53,6 +58,8 @@ class CreateLigandPreviewTaskReq:
53
58
  self.preview_count = preview_count
54
59
  if count_limit is not None:
55
60
  self.count_limit = count_limit
61
+ if generate_3d is not None:
62
+ self.generate_3d = generate_3d
56
63
 
57
64
  @property
58
65
  def ligand_file(self):
@@ -116,6 +123,28 @@ class CreateLigandPreviewTaskReq:
116
123
  """
117
124
  self._count_limit = count_limit
118
125
 
126
+ @property
127
+ def generate_3d(self):
128
+ """Gets the generate_3d of this CreateLigandPreviewTaskReq.
129
+
130
+ 是否生成3D构象,默认为true
131
+
132
+ :return: The generate_3d of this CreateLigandPreviewTaskReq.
133
+ :rtype: bool
134
+ """
135
+ return self._generate_3d
136
+
137
+ @generate_3d.setter
138
+ def generate_3d(self, generate_3d):
139
+ """Sets the generate_3d of this CreateLigandPreviewTaskReq.
140
+
141
+ 是否生成3D构象,默认为true
142
+
143
+ :param generate_3d: The generate_3d of this CreateLigandPreviewTaskReq.
144
+ :type generate_3d: bool
145
+ """
146
+ self._generate_3d = generate_3d
147
+
119
148
  def to_dict(self):
120
149
  """Returns the model properties as a dict"""
121
150
  result = {}
@@ -21,7 +21,8 @@ class CreateModelReq:
21
21
  'description': 'str',
22
22
  'type': 'ModelType',
23
23
  'file': 'ModelFile',
24
- 'shareable': 'bool'
24
+ 'shareable': 'bool',
25
+ 'base_model_id': 'str'
25
26
  }
26
27
 
27
28
  attribute_map = {
@@ -29,10 +30,11 @@ class CreateModelReq:
29
30
  'description': 'description',
30
31
  'type': 'type',
31
32
  'file': 'file',
32
- 'shareable': 'shareable'
33
+ 'shareable': 'shareable',
34
+ 'base_model_id': 'base_model_id'
33
35
  }
34
36
 
35
- def __init__(self, name=None, description=None, type=None, file=None, shareable=None):
37
+ def __init__(self, name=None, description=None, type=None, file=None, shareable=None, base_model_id=None):
36
38
  """CreateModelReq
37
39
 
38
40
  The model defined in huaweicloud sdk
@@ -47,6 +49,8 @@ class CreateModelReq:
47
49
  :type file: :class:`huaweicloudsdkeihealth.v1.ModelFile`
48
50
  :param shareable: 是否打开组织共享
49
51
  :type shareable: bool
52
+ :param base_model_id: 基模型id
53
+ :type base_model_id: str
50
54
  """
51
55
 
52
56
 
@@ -56,6 +60,7 @@ class CreateModelReq:
56
60
  self._type = None
57
61
  self._file = None
58
62
  self._shareable = None
63
+ self._base_model_id = None
59
64
  self.discriminator = None
60
65
 
61
66
  self.name = name
@@ -65,6 +70,8 @@ class CreateModelReq:
65
70
  self.file = file
66
71
  if shareable is not None:
67
72
  self.shareable = shareable
73
+ if base_model_id is not None:
74
+ self.base_model_id = base_model_id
68
75
 
69
76
  @property
70
77
  def name(self):
@@ -168,6 +175,28 @@ class CreateModelReq:
168
175
  """
169
176
  self._shareable = shareable
170
177
 
178
+ @property
179
+ def base_model_id(self):
180
+ """Gets the base_model_id of this CreateModelReq.
181
+
182
+ 基模型id
183
+
184
+ :return: The base_model_id of this CreateModelReq.
185
+ :rtype: str
186
+ """
187
+ return self._base_model_id
188
+
189
+ @base_model_id.setter
190
+ def base_model_id(self, base_model_id):
191
+ """Sets the base_model_id of this CreateModelReq.
192
+
193
+ 基模型id
194
+
195
+ :param base_model_id: The base_model_id of this CreateModelReq.
196
+ :type base_model_id: str
197
+ """
198
+ self._base_model_id = base_model_id
199
+
171
200
  def to_dict(self):
172
201
  """Returns the model properties as a dict"""
173
202
  result = {}
@@ -25,6 +25,7 @@ class CreateOptmJobReq:
25
25
  'weak_constraints': 'list[WeakConstraintDto]',
26
26
  'strong_constraints': 'list[StrongConstraintDto]',
27
27
  'sampler_mixin_weight': 'float',
28
+ 'base_model_id': 'str',
28
29
  'model_ids': 'list[str]',
29
30
  'num_trials': 'int'
30
31
  }
@@ -38,11 +39,12 @@ class CreateOptmJobReq:
38
39
  'weak_constraints': 'weak_constraints',
39
40
  'strong_constraints': 'strong_constraints',
40
41
  'sampler_mixin_weight': 'sampler_mixin_weight',
42
+ 'base_model_id': 'base_model_id',
41
43
  'model_ids': 'model_ids',
42
44
  'num_trials': 'num_trials'
43
45
  }
44
46
 
45
- def __init__(self, basic_info=None, smiles=None, molecule_file=None, binding_site=None, binding_sites=None, weak_constraints=None, strong_constraints=None, sampler_mixin_weight=None, model_ids=None, num_trials=None):
47
+ def __init__(self, basic_info=None, smiles=None, molecule_file=None, binding_site=None, binding_sites=None, weak_constraints=None, strong_constraints=None, sampler_mixin_weight=None, base_model_id=None, model_ids=None, num_trials=None):
46
48
  """CreateOptmJobReq
47
49
 
48
50
  The model defined in huaweicloud sdk
@@ -63,6 +65,8 @@ class CreateOptmJobReq:
63
65
  :type strong_constraints: list[:class:`huaweicloudsdkeihealth.v1.StrongConstraintDto`]
64
66
  :param sampler_mixin_weight: 初始化采样权重,参数范围(0.5, 1),不包含0.5和1,默认为0.6
65
67
  :type sampler_mixin_weight: float
68
+ :param base_model_id: 基模型id
69
+ :type base_model_id: str
66
70
  :param model_ids: 模型id列表
67
71
  :type model_ids: list[str]
68
72
  :param num_trials: 生成分子数量
@@ -79,6 +83,7 @@ class CreateOptmJobReq:
79
83
  self._weak_constraints = None
80
84
  self._strong_constraints = None
81
85
  self._sampler_mixin_weight = None
86
+ self._base_model_id = None
82
87
  self._model_ids = None
83
88
  self._num_trials = None
84
89
  self.discriminator = None
@@ -98,6 +103,8 @@ class CreateOptmJobReq:
98
103
  self.strong_constraints = strong_constraints
99
104
  if sampler_mixin_weight is not None:
100
105
  self.sampler_mixin_weight = sampler_mixin_weight
106
+ if base_model_id is not None:
107
+ self.base_model_id = base_model_id
101
108
  if model_ids is not None:
102
109
  self.model_ids = model_ids
103
110
  if num_trials is not None:
@@ -267,6 +274,28 @@ class CreateOptmJobReq:
267
274
  """
268
275
  self._sampler_mixin_weight = sampler_mixin_weight
269
276
 
277
+ @property
278
+ def base_model_id(self):
279
+ """Gets the base_model_id of this CreateOptmJobReq.
280
+
281
+ 基模型id
282
+
283
+ :return: The base_model_id of this CreateOptmJobReq.
284
+ :rtype: str
285
+ """
286
+ return self._base_model_id
287
+
288
+ @base_model_id.setter
289
+ def base_model_id(self, base_model_id):
290
+ """Sets the base_model_id of this CreateOptmJobReq.
291
+
292
+ 基模型id
293
+
294
+ :param base_model_id: The base_model_id of this CreateOptmJobReq.
295
+ :type base_model_id: str
296
+ """
297
+ self._base_model_id = base_model_id
298
+
270
299
  @property
271
300
  def model_ids(self):
272
301
  """Gets the model_ids of this CreateOptmJobReq.
@@ -0,0 +1,184 @@
1
+ # coding: utf-8
2
+
3
+ import six
4
+
5
+ from huaweicloudsdkcore.utils.http_utils import sanitize_for_serialization
6
+
7
+
8
+ class CreateTargetOptJobReq:
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
+ 'basic_info': 'CreateDrugJobBasicInfo',
21
+ 'receptor': 'TargetOptReceptor',
22
+ 'ligand': 'TargetOptLigand',
23
+ 'md_params': 'MdParam'
24
+ }
25
+
26
+ attribute_map = {
27
+ 'basic_info': 'basic_info',
28
+ 'receptor': 'receptor',
29
+ 'ligand': 'ligand',
30
+ 'md_params': 'md_params'
31
+ }
32
+
33
+ def __init__(self, basic_info=None, receptor=None, ligand=None, md_params=None):
34
+ """CreateTargetOptJobReq
35
+
36
+ The model defined in huaweicloud sdk
37
+
38
+ :param basic_info:
39
+ :type basic_info: :class:`huaweicloudsdkeihealth.v1.CreateDrugJobBasicInfo`
40
+ :param receptor:
41
+ :type receptor: :class:`huaweicloudsdkeihealth.v1.TargetOptReceptor`
42
+ :param ligand:
43
+ :type ligand: :class:`huaweicloudsdkeihealth.v1.TargetOptLigand`
44
+ :param md_params:
45
+ :type md_params: :class:`huaweicloudsdkeihealth.v1.MdParam`
46
+ """
47
+
48
+
49
+
50
+ self._basic_info = None
51
+ self._receptor = None
52
+ self._ligand = None
53
+ self._md_params = None
54
+ self.discriminator = None
55
+
56
+ self.basic_info = basic_info
57
+ self.receptor = receptor
58
+ if ligand is not None:
59
+ self.ligand = ligand
60
+ if md_params is not None:
61
+ self.md_params = md_params
62
+
63
+ @property
64
+ def basic_info(self):
65
+ """Gets the basic_info of this CreateTargetOptJobReq.
66
+
67
+ :return: The basic_info of this CreateTargetOptJobReq.
68
+ :rtype: :class:`huaweicloudsdkeihealth.v1.CreateDrugJobBasicInfo`
69
+ """
70
+ return self._basic_info
71
+
72
+ @basic_info.setter
73
+ def basic_info(self, basic_info):
74
+ """Sets the basic_info of this CreateTargetOptJobReq.
75
+
76
+ :param basic_info: The basic_info of this CreateTargetOptJobReq.
77
+ :type basic_info: :class:`huaweicloudsdkeihealth.v1.CreateDrugJobBasicInfo`
78
+ """
79
+ self._basic_info = basic_info
80
+
81
+ @property
82
+ def receptor(self):
83
+ """Gets the receptor of this CreateTargetOptJobReq.
84
+
85
+ :return: The receptor of this CreateTargetOptJobReq.
86
+ :rtype: :class:`huaweicloudsdkeihealth.v1.TargetOptReceptor`
87
+ """
88
+ return self._receptor
89
+
90
+ @receptor.setter
91
+ def receptor(self, receptor):
92
+ """Sets the receptor of this CreateTargetOptJobReq.
93
+
94
+ :param receptor: The receptor of this CreateTargetOptJobReq.
95
+ :type receptor: :class:`huaweicloudsdkeihealth.v1.TargetOptReceptor`
96
+ """
97
+ self._receptor = receptor
98
+
99
+ @property
100
+ def ligand(self):
101
+ """Gets the ligand of this CreateTargetOptJobReq.
102
+
103
+ :return: The ligand of this CreateTargetOptJobReq.
104
+ :rtype: :class:`huaweicloudsdkeihealth.v1.TargetOptLigand`
105
+ """
106
+ return self._ligand
107
+
108
+ @ligand.setter
109
+ def ligand(self, ligand):
110
+ """Sets the ligand of this CreateTargetOptJobReq.
111
+
112
+ :param ligand: The ligand of this CreateTargetOptJobReq.
113
+ :type ligand: :class:`huaweicloudsdkeihealth.v1.TargetOptLigand`
114
+ """
115
+ self._ligand = ligand
116
+
117
+ @property
118
+ def md_params(self):
119
+ """Gets the md_params of this CreateTargetOptJobReq.
120
+
121
+ :return: The md_params of this CreateTargetOptJobReq.
122
+ :rtype: :class:`huaweicloudsdkeihealth.v1.MdParam`
123
+ """
124
+ return self._md_params
125
+
126
+ @md_params.setter
127
+ def md_params(self, md_params):
128
+ """Sets the md_params of this CreateTargetOptJobReq.
129
+
130
+ :param md_params: The md_params of this CreateTargetOptJobReq.
131
+ :type md_params: :class:`huaweicloudsdkeihealth.v1.MdParam`
132
+ """
133
+ self._md_params = md_params
134
+
135
+ def to_dict(self):
136
+ """Returns the model properties as a dict"""
137
+ result = {}
138
+
139
+ for attr, _ in six.iteritems(self.openapi_types):
140
+ value = getattr(self, attr)
141
+ if isinstance(value, list):
142
+ result[attr] = list(map(
143
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
144
+ value
145
+ ))
146
+ elif hasattr(value, "to_dict"):
147
+ result[attr] = value.to_dict()
148
+ elif isinstance(value, dict):
149
+ result[attr] = dict(map(
150
+ lambda item: (item[0], item[1].to_dict())
151
+ if hasattr(item[1], "to_dict") else item,
152
+ value.items()
153
+ ))
154
+ else:
155
+ if attr in self.sensitive_list:
156
+ result[attr] = "****"
157
+ else:
158
+ result[attr] = value
159
+
160
+ return result
161
+
162
+ def to_str(self):
163
+ """Returns the string representation of the model"""
164
+ import simplejson as json
165
+ if six.PY2:
166
+ import sys
167
+ reload(sys)
168
+ sys.setdefaultencoding("utf-8")
169
+ return json.dumps(sanitize_for_serialization(self), ensure_ascii=False)
170
+
171
+ def __repr__(self):
172
+ """For `print`"""
173
+ return self.to_str()
174
+
175
+ def __eq__(self, other):
176
+ """Returns true if both objects are equal"""
177
+ if not isinstance(other, CreateTargetOptJobReq):
178
+ return False
179
+
180
+ return self.__dict__ == other.__dict__
181
+
182
+ def __ne__(self, other):
183
+ """Returns true if both objects are not equal"""
184
+ return not self == other