Py4HEAppE 1.0.0__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 (183) hide show
  1. __init__.py +1 -0
  2. py4heappe/__init__.py +1 -0
  3. py4heappe/cli/__init__.py +1 -0
  4. py4heappe/cli/auth.py +153 -0
  5. py4heappe/cli/command_template.py +370 -0
  6. py4heappe/cli/configuration.py +65 -0
  7. py4heappe/cli/information.py +163 -0
  8. py4heappe/cli/job_management.py +211 -0
  9. py4heappe/cli/report.py +173 -0
  10. py4heappe/core/__init__.py +167 -0
  11. py4heappe/core/api/__init__.py +12 -0
  12. py4heappe/core/api/cluster_information_api.py +308 -0
  13. py4heappe/core/api/data_transfer_api.py +405 -0
  14. py4heappe/core/api/file_transfer_api.py +498 -0
  15. py4heappe/core/api/job_management_api.py +866 -0
  16. py4heappe/core/api/job_reporting_api.py +692 -0
  17. py4heappe/core/api/management_api.py +2540 -0
  18. py4heappe/core/api/user_and_limitation_management_api.py +676 -0
  19. py4heappe/core/api_client.py +632 -0
  20. py4heappe/core/base/__init__.py +1 -0
  21. py4heappe/core/base/exceptions.py +41 -0
  22. py4heappe/core/base/logger.py +11 -0
  23. py4heappe/core/base/utils.py +43 -0
  24. py4heappe/core/configuration.py +247 -0
  25. py4heappe/core/models/__init__.py +155 -0
  26. py4heappe/core/models/adaptor_user.py +398 -0
  27. py4heappe/core/models/adaptor_user_group.py +268 -0
  28. py4heappe/core/models/adaptor_user_role.py +242 -0
  29. py4heappe/core/models/adaptor_user_role_ext.py +138 -0
  30. py4heappe/core/models/adaptor_user_role_type.py +95 -0
  31. py4heappe/core/models/adaptor_user_type.py +91 -0
  32. py4heappe/core/models/adaptor_user_user_group_role.py +320 -0
  33. py4heappe/core/models/allocated_nodes_ips_model.py +136 -0
  34. py4heappe/core/models/authenticate_lexis_token_model.py +110 -0
  35. py4heappe/core/models/authenticate_user_digital_signature_model.py +110 -0
  36. py4heappe/core/models/authenticate_user_open_id_model.py +110 -0
  37. py4heappe/core/models/authenticate_user_open_id_open_stack_model.py +136 -0
  38. py4heappe/core/models/authenticate_user_password_model.py +110 -0
  39. py4heappe/core/models/authentication_credentials.py +110 -0
  40. py4heappe/core/models/bad_request_result.py +110 -0
  41. py4heappe/core/models/cancel_job_model.py +136 -0
  42. py4heappe/core/models/cluster.py +478 -0
  43. py4heappe/core/models/cluster_authentication_credentials.py +375 -0
  44. py4heappe/core/models/cluster_authentication_credentials_auth_type.py +97 -0
  45. py4heappe/core/models/cluster_connection_protocol.py +91 -0
  46. py4heappe/core/models/cluster_detailed_report_ext.py +214 -0
  47. py4heappe/core/models/cluster_ext.py +188 -0
  48. py4heappe/core/models/cluster_init_report_ext.py +136 -0
  49. py4heappe/core/models/cluster_node_type.py +528 -0
  50. py4heappe/core/models/cluster_node_type_detailed_report_ext.py +240 -0
  51. py4heappe/core/models/cluster_node_type_ext.py +292 -0
  52. py4heappe/core/models/cluster_node_type_for_task_ext.py +188 -0
  53. py4heappe/core/models/cluster_node_type_report_ext.py +214 -0
  54. py4heappe/core/models/cluster_node_type_requested_group.py +136 -0
  55. py4heappe/core/models/cluster_node_type_resource_usage_ext.py +292 -0
  56. py4heappe/core/models/cluster_node_usage_ext.py +318 -0
  57. py4heappe/core/models/cluster_project.py +347 -0
  58. py4heappe/core/models/cluster_project_credential.py +294 -0
  59. py4heappe/core/models/cluster_proxy_connection.py +243 -0
  60. py4heappe/core/models/cluster_proxy_connection_ext.py +214 -0
  61. py4heappe/core/models/cluster_report_ext.py +215 -0
  62. py4heappe/core/models/command_template.py +557 -0
  63. py4heappe/core/models/command_template_ext.py +240 -0
  64. py4heappe/core/models/command_template_parameter.py +347 -0
  65. py4heappe/core/models/command_template_parameter_ext.py +136 -0
  66. py4heappe/core/models/command_template_parameter_value_ext.py +136 -0
  67. py4heappe/core/models/contact.py +269 -0
  68. py4heappe/core/models/copy_job_data_from_temp_model.py +162 -0
  69. py4heappe/core/models/copy_job_data_to_temp_model.py +162 -0
  70. py4heappe/core/models/create_command_inner_template_parameter_model.py +162 -0
  71. py4heappe/core/models/create_command_template_from_generic_model.py +292 -0
  72. py4heappe/core/models/create_command_template_model.py +318 -0
  73. py4heappe/core/models/create_command_template_parameter_model.py +214 -0
  74. py4heappe/core/models/create_job_by_project_model.py +136 -0
  75. py4heappe/core/models/create_project_assignment_to_cluster_model.py +188 -0
  76. py4heappe/core/models/create_project_model.py +318 -0
  77. py4heappe/core/models/create_secure_shell_key_model.py +162 -0
  78. py4heappe/core/models/create_secure_shell_key_model_obsolete.py +188 -0
  79. py4heappe/core/models/current_cluster_node_usage_model.py +136 -0
  80. py4heappe/core/models/current_info_for_job_model.py +136 -0
  81. py4heappe/core/models/data_transfer_method_ext.py +188 -0
  82. py4heappe/core/models/delete_job_model.py +136 -0
  83. py4heappe/core/models/deployment_type_ext.py +91 -0
  84. py4heappe/core/models/digital_signature_credentials_ext.py +162 -0
  85. py4heappe/core/models/download_file_from_cluster_model.py +162 -0
  86. py4heappe/core/models/download_parts_of_job_files_from_cluster_model.py +162 -0
  87. py4heappe/core/models/end_data_transfer_model.py +136 -0
  88. py4heappe/core/models/end_file_transfer_model.py +162 -0
  89. py4heappe/core/models/environment_variable_ext.py +136 -0
  90. py4heappe/core/models/extended_command_template_ext.py +370 -0
  91. py4heappe/core/models/extended_command_template_parameter_ext.py +188 -0
  92. py4heappe/core/models/extended_project_info_ext.py +318 -0
  93. py4heappe/core/models/file_information_ext.py +136 -0
  94. py4heappe/core/models/file_transfer_cipher_type.py +94 -0
  95. py4heappe/core/models/file_transfer_cipher_type_ext.py +93 -0
  96. py4heappe/core/models/file_transfer_key_credentials_ext.py +240 -0
  97. py4heappe/core/models/file_transfer_method.py +294 -0
  98. py4heappe/core/models/file_transfer_method_ext.py +240 -0
  99. py4heappe/core/models/file_transfer_protocol.py +91 -0
  100. py4heappe/core/models/file_transfer_protocol_ext.py +91 -0
  101. py4heappe/core/models/get_command_template_parameters_name_model.py +188 -0
  102. py4heappe/core/models/get_current_usage_and_limitations_for_current_user_model.py +110 -0
  103. py4heappe/core/models/get_data_transfer_method_model.py +188 -0
  104. py4heappe/core/models/get_file_transfer_method_model.py +136 -0
  105. py4heappe/core/models/http_get_to_job_node_model.py +241 -0
  106. py4heappe/core/models/http_header_ext.py +136 -0
  107. py4heappe/core/models/http_post_to_job_node_model.py +267 -0
  108. py4heappe/core/models/initialize_cluster_script_directory_model.py +162 -0
  109. py4heappe/core/models/instance_information_ext.py +344 -0
  110. py4heappe/core/models/job_detailed_report_ext.py +318 -0
  111. py4heappe/core/models/job_file_content_ext.py +214 -0
  112. py4heappe/core/models/job_report_ext.py +188 -0
  113. py4heappe/core/models/job_specification_by_project_ext.py +448 -0
  114. py4heappe/core/models/job_specification_ext.py +448 -0
  115. py4heappe/core/models/job_state_aggregation_report_ext.py +162 -0
  116. py4heappe/core/models/job_state_ext.py +96 -0
  117. py4heappe/core/models/lexis_credentials_ext.py +137 -0
  118. py4heappe/core/models/list_changed_files_for_job_model.py +136 -0
  119. py4heappe/core/models/list_jobs_for_current_user_model.py +110 -0
  120. py4heappe/core/models/modify_command_template_from_generic_model.py +292 -0
  121. py4heappe/core/models/modify_command_template_model.py +292 -0
  122. py4heappe/core/models/modify_command_template_parameter_model.py +214 -0
  123. py4heappe/core/models/modify_project_assignment_to_cluster_model.py +188 -0
  124. py4heappe/core/models/modify_project_model.py +292 -0
  125. py4heappe/core/models/node_used_cores_and_limitation_ext.py +110 -0
  126. py4heappe/core/models/open_id_credentials_ext.py +137 -0
  127. py4heappe/core/models/open_stack_application_credentials_ext.py +136 -0
  128. py4heappe/core/models/password_credentials_ext.py +136 -0
  129. py4heappe/core/models/problem_details.py +89 -0
  130. py4heappe/core/models/project.py +482 -0
  131. py4heappe/core/models/project_contact.py +215 -0
  132. py4heappe/core/models/project_detailed_report_ext.py +292 -0
  133. py4heappe/core/models/project_ext.py +266 -0
  134. py4heappe/core/models/project_for_task_ext.py +214 -0
  135. py4heappe/core/models/project_list_report_ext.py +214 -0
  136. py4heappe/core/models/project_reference_ext.py +137 -0
  137. py4heappe/core/models/project_report_ext.py +240 -0
  138. py4heappe/core/models/project_resource_usage_ext.py +266 -0
  139. py4heappe/core/models/proxy_type.py +91 -0
  140. py4heappe/core/models/proxy_type_ext.py +91 -0
  141. py4heappe/core/models/public_key_ext.py +188 -0
  142. py4heappe/core/models/recreate_secure_shell_key_model.py +214 -0
  143. py4heappe/core/models/regenerate_secure_shell_key_model.py +188 -0
  144. py4heappe/core/models/regenerate_secure_shell_key_model_obsolete.py +188 -0
  145. py4heappe/core/models/remove_command_template_model.py +136 -0
  146. py4heappe/core/models/remove_command_template_parameter_model.py +136 -0
  147. py4heappe/core/models/remove_project_assignment_to_cluster_model.py +162 -0
  148. py4heappe/core/models/remove_project_model.py +136 -0
  149. py4heappe/core/models/remove_secure_shell_key_model.py +162 -0
  150. py4heappe/core/models/remove_secure_shell_key_model_obsolete.py +162 -0
  151. py4heappe/core/models/resource_allocation_type_ext.py +91 -0
  152. py4heappe/core/models/resource_limitation_ext.py +136 -0
  153. py4heappe/core/models/resource_usage_ext.py +163 -0
  154. py4heappe/core/models/scheduler_type.py +92 -0
  155. py4heappe/core/models/ssh_key_user_credentials_model.py +136 -0
  156. py4heappe/core/models/submit_job_model.py +136 -0
  157. py4heappe/core/models/submitted_job_info_ext.py +318 -0
  158. py4heappe/core/models/submitted_task_info_ext.py +370 -0
  159. py4heappe/core/models/synchronizable_files_ext.py +92 -0
  160. py4heappe/core/models/task_detailed_report_ext.py +318 -0
  161. py4heappe/core/models/task_file_offset_ext.py +162 -0
  162. py4heappe/core/models/task_paralization_parameter_ext.py +162 -0
  163. py4heappe/core/models/task_priority_ext.py +97 -0
  164. py4heappe/core/models/task_report_ext.py +266 -0
  165. py4heappe/core/models/task_specification_ext.py +682 -0
  166. py4heappe/core/models/task_state_ext.py +95 -0
  167. py4heappe/core/models/test_cluster_access_for_account_model.py +162 -0
  168. py4heappe/core/models/test_cluster_access_for_account_model_obsolete.py +162 -0
  169. py4heappe/core/models/unauthorized_result.py +110 -0
  170. py4heappe/core/models/usage_type.py +90 -0
  171. py4heappe/core/models/usage_type_ext.py +90 -0
  172. py4heappe/core/models/user_group_detailed_report_ext.py +240 -0
  173. py4heappe/core/models/user_group_list_report_ext.py +240 -0
  174. py4heappe/core/models/user_group_report_ext.py +240 -0
  175. py4heappe/core/models/version_information_ext.py +162 -0
  176. py4heappe/core/rest.py +311 -0
  177. py4heappe-1.0.0.dist-info/METADATA +147 -0
  178. py4heappe-1.0.0.dist-info/RECORD +183 -0
  179. py4heappe-1.0.0.dist-info/WHEEL +5 -0
  180. py4heappe-1.0.0.dist-info/entry_points.txt +2 -0
  181. py4heappe-1.0.0.dist-info/licenses/LICENSE +20 -0
  182. py4heappe-1.0.0.dist-info/top_level.txt +3 -0
  183. py4heappe_cli.py +22 -0
@@ -0,0 +1,240 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ HEAppE Web API
5
+
6
+ HEAppE middleware API v4.2.1 # noqa: E501
7
+
8
+ OpenAPI spec version: v4.2.1
9
+ Contact: support.heappe@it4i.cz
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+ import pprint
14
+ import re # noqa: F401
15
+
16
+ import six
17
+
18
+ class FileTransferKeyCredentialsExt(object):
19
+ """NOTE: This class is auto generated by the swagger code generator program.
20
+
21
+ Do not edit the class manually.
22
+ """
23
+ """
24
+ Attributes:
25
+ swagger_types (dict): The key is attribute name
26
+ and the value is attribute type.
27
+ attribute_map (dict): The key is attribute name
28
+ and the value is json key in definition.
29
+ """
30
+ swagger_types = {
31
+ 'username': 'str',
32
+ 'password': 'str',
33
+ 'cipher_type': 'FileTransferCipherTypeExt',
34
+ 'private_key': 'str',
35
+ 'public_key': 'str',
36
+ 'passphrase': 'str'
37
+ }
38
+
39
+ attribute_map = {
40
+ 'username': 'Username',
41
+ 'password': 'Password',
42
+ 'cipher_type': 'CipherType',
43
+ 'private_key': 'PrivateKey',
44
+ 'public_key': 'PublicKey',
45
+ 'passphrase': 'Passphrase'
46
+ }
47
+
48
+ def __init__(self, username=None, password=None, cipher_type=None, private_key=None, public_key=None, passphrase=None): # noqa: E501
49
+ """FileTransferKeyCredentialsExt - a model defined in Swagger""" # noqa: E501
50
+ self._username = None
51
+ self._password = None
52
+ self._cipher_type = None
53
+ self._private_key = None
54
+ self._public_key = None
55
+ self._passphrase = None
56
+ self.discriminator = None
57
+ if username is not None:
58
+ self.username = username
59
+ if password is not None:
60
+ self.password = password
61
+ if cipher_type is not None:
62
+ self.cipher_type = cipher_type
63
+ if private_key is not None:
64
+ self.private_key = private_key
65
+ if public_key is not None:
66
+ self.public_key = public_key
67
+ if passphrase is not None:
68
+ self.passphrase = passphrase
69
+
70
+ @property
71
+ def username(self):
72
+ """Gets the username of this FileTransferKeyCredentialsExt. # noqa: E501
73
+
74
+
75
+ :return: The username of this FileTransferKeyCredentialsExt. # noqa: E501
76
+ :rtype: str
77
+ """
78
+ return self._username
79
+
80
+ @username.setter
81
+ def username(self, username):
82
+ """Sets the username of this FileTransferKeyCredentialsExt.
83
+
84
+
85
+ :param username: The username of this FileTransferKeyCredentialsExt. # noqa: E501
86
+ :type: str
87
+ """
88
+
89
+ self._username = username
90
+
91
+ @property
92
+ def password(self):
93
+ """Gets the password of this FileTransferKeyCredentialsExt. # noqa: E501
94
+
95
+
96
+ :return: The password of this FileTransferKeyCredentialsExt. # noqa: E501
97
+ :rtype: str
98
+ """
99
+ return self._password
100
+
101
+ @password.setter
102
+ def password(self, password):
103
+ """Sets the password of this FileTransferKeyCredentialsExt.
104
+
105
+
106
+ :param password: The password of this FileTransferKeyCredentialsExt. # noqa: E501
107
+ :type: str
108
+ """
109
+
110
+ self._password = password
111
+
112
+ @property
113
+ def cipher_type(self):
114
+ """Gets the cipher_type of this FileTransferKeyCredentialsExt. # noqa: E501
115
+
116
+
117
+ :return: The cipher_type of this FileTransferKeyCredentialsExt. # noqa: E501
118
+ :rtype: FileTransferCipherTypeExt
119
+ """
120
+ return self._cipher_type
121
+
122
+ @cipher_type.setter
123
+ def cipher_type(self, cipher_type):
124
+ """Sets the cipher_type of this FileTransferKeyCredentialsExt.
125
+
126
+
127
+ :param cipher_type: The cipher_type of this FileTransferKeyCredentialsExt. # noqa: E501
128
+ :type: FileTransferCipherTypeExt
129
+ """
130
+
131
+ self._cipher_type = cipher_type
132
+
133
+ @property
134
+ def private_key(self):
135
+ """Gets the private_key of this FileTransferKeyCredentialsExt. # noqa: E501
136
+
137
+
138
+ :return: The private_key of this FileTransferKeyCredentialsExt. # noqa: E501
139
+ :rtype: str
140
+ """
141
+ return self._private_key
142
+
143
+ @private_key.setter
144
+ def private_key(self, private_key):
145
+ """Sets the private_key of this FileTransferKeyCredentialsExt.
146
+
147
+
148
+ :param private_key: The private_key of this FileTransferKeyCredentialsExt. # noqa: E501
149
+ :type: str
150
+ """
151
+
152
+ self._private_key = private_key
153
+
154
+ @property
155
+ def public_key(self):
156
+ """Gets the public_key of this FileTransferKeyCredentialsExt. # noqa: E501
157
+
158
+
159
+ :return: The public_key of this FileTransferKeyCredentialsExt. # noqa: E501
160
+ :rtype: str
161
+ """
162
+ return self._public_key
163
+
164
+ @public_key.setter
165
+ def public_key(self, public_key):
166
+ """Sets the public_key of this FileTransferKeyCredentialsExt.
167
+
168
+
169
+ :param public_key: The public_key of this FileTransferKeyCredentialsExt. # noqa: E501
170
+ :type: str
171
+ """
172
+
173
+ self._public_key = public_key
174
+
175
+ @property
176
+ def passphrase(self):
177
+ """Gets the passphrase of this FileTransferKeyCredentialsExt. # noqa: E501
178
+
179
+
180
+ :return: The passphrase of this FileTransferKeyCredentialsExt. # noqa: E501
181
+ :rtype: str
182
+ """
183
+ return self._passphrase
184
+
185
+ @passphrase.setter
186
+ def passphrase(self, passphrase):
187
+ """Sets the passphrase of this FileTransferKeyCredentialsExt.
188
+
189
+
190
+ :param passphrase: The passphrase of this FileTransferKeyCredentialsExt. # noqa: E501
191
+ :type: str
192
+ """
193
+
194
+ self._passphrase = passphrase
195
+
196
+ def to_dict(self):
197
+ """Returns the model properties as a dict"""
198
+ result = {}
199
+
200
+ for attr, _ in six.iteritems(self.swagger_types):
201
+ value = getattr(self, attr)
202
+ if isinstance(value, list):
203
+ result[attr] = list(map(
204
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
205
+ value
206
+ ))
207
+ elif hasattr(value, "to_dict"):
208
+ result[attr] = value.to_dict()
209
+ elif isinstance(value, dict):
210
+ result[attr] = dict(map(
211
+ lambda item: (item[0], item[1].to_dict())
212
+ if hasattr(item[1], "to_dict") else item,
213
+ value.items()
214
+ ))
215
+ else:
216
+ result[attr] = value
217
+ if issubclass(FileTransferKeyCredentialsExt, dict):
218
+ for key, value in self.items():
219
+ result[key] = value
220
+
221
+ return result
222
+
223
+ def to_str(self):
224
+ """Returns the string representation of the model"""
225
+ return pprint.pformat(self.to_dict())
226
+
227
+ def __repr__(self):
228
+ """For `print` and `pprint`"""
229
+ return self.to_str()
230
+
231
+ def __eq__(self, other):
232
+ """Returns true if both objects are equal"""
233
+ if not isinstance(other, FileTransferKeyCredentialsExt):
234
+ return False
235
+
236
+ return self.__dict__ == other.__dict__
237
+
238
+ def __ne__(self, other):
239
+ """Returns true if both objects are not equal"""
240
+ return not self == other
@@ -0,0 +1,294 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ HEAppE Web API
5
+
6
+ HEAppE middleware API v4.2.1 # noqa: E501
7
+
8
+ OpenAPI spec version: v4.2.1
9
+ Contact: support.heappe@it4i.cz
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+ import pprint
14
+ import re # noqa: F401
15
+
16
+ import six
17
+
18
+ class FileTransferMethod(object):
19
+ """NOTE: This class is auto generated by the swagger code generator program.
20
+
21
+ Do not edit the class manually.
22
+ """
23
+ """
24
+ Attributes:
25
+ swagger_types (dict): The key is attribute name
26
+ and the value is attribute type.
27
+ attribute_map (dict): The key is attribute name
28
+ and the value is json key in definition.
29
+ """
30
+ swagger_types = {
31
+ 'id': 'int',
32
+ 'server_hostname': 'str',
33
+ 'protocol': 'FileTransferProtocol',
34
+ 'port': 'int',
35
+ 'cluster_id': 'int',
36
+ 'cluster': 'Cluster',
37
+ 'shared_base_path': 'str',
38
+ 'credentials': 'AuthenticationCredentials'
39
+ }
40
+
41
+ attribute_map = {
42
+ 'id': 'Id',
43
+ 'server_hostname': 'ServerHostname',
44
+ 'protocol': 'Protocol',
45
+ 'port': 'Port',
46
+ 'cluster_id': 'ClusterId',
47
+ 'cluster': 'Cluster',
48
+ 'shared_base_path': 'SharedBasePath',
49
+ 'credentials': 'Credentials'
50
+ }
51
+
52
+ def __init__(self, id=None, server_hostname=None, protocol=None, port=None, cluster_id=None, cluster=None, shared_base_path=None, credentials=None): # noqa: E501
53
+ """FileTransferMethod - a model defined in Swagger""" # noqa: E501
54
+ self._id = None
55
+ self._server_hostname = None
56
+ self._protocol = None
57
+ self._port = None
58
+ self._cluster_id = None
59
+ self._cluster = None
60
+ self._shared_base_path = None
61
+ self._credentials = None
62
+ self.discriminator = None
63
+ if id is not None:
64
+ self.id = id
65
+ self.server_hostname = server_hostname
66
+ if protocol is not None:
67
+ self.protocol = protocol
68
+ if port is not None:
69
+ self.port = port
70
+ if cluster_id is not None:
71
+ self.cluster_id = cluster_id
72
+ self.cluster = cluster
73
+ if shared_base_path is not None:
74
+ self.shared_base_path = shared_base_path
75
+ if credentials is not None:
76
+ self.credentials = credentials
77
+
78
+ @property
79
+ def id(self):
80
+ """Gets the id of this FileTransferMethod. # noqa: E501
81
+
82
+
83
+ :return: The id of this FileTransferMethod. # noqa: E501
84
+ :rtype: int
85
+ """
86
+ return self._id
87
+
88
+ @id.setter
89
+ def id(self, id):
90
+ """Sets the id of this FileTransferMethod.
91
+
92
+
93
+ :param id: The id of this FileTransferMethod. # noqa: E501
94
+ :type: int
95
+ """
96
+
97
+ self._id = id
98
+
99
+ @property
100
+ def server_hostname(self):
101
+ """Gets the server_hostname of this FileTransferMethod. # noqa: E501
102
+
103
+
104
+ :return: The server_hostname of this FileTransferMethod. # noqa: E501
105
+ :rtype: str
106
+ """
107
+ return self._server_hostname
108
+
109
+ @server_hostname.setter
110
+ def server_hostname(self, server_hostname):
111
+ """Sets the server_hostname of this FileTransferMethod.
112
+
113
+
114
+ :param server_hostname: The server_hostname of this FileTransferMethod. # noqa: E501
115
+ :type: str
116
+ """
117
+ if server_hostname is None:
118
+ raise ValueError("Invalid value for `server_hostname`, must not be `None`") # noqa: E501
119
+
120
+ self._server_hostname = server_hostname
121
+
122
+ @property
123
+ def protocol(self):
124
+ """Gets the protocol of this FileTransferMethod. # noqa: E501
125
+
126
+
127
+ :return: The protocol of this FileTransferMethod. # noqa: E501
128
+ :rtype: FileTransferProtocol
129
+ """
130
+ return self._protocol
131
+
132
+ @protocol.setter
133
+ def protocol(self, protocol):
134
+ """Sets the protocol of this FileTransferMethod.
135
+
136
+
137
+ :param protocol: The protocol of this FileTransferMethod. # noqa: E501
138
+ :type: FileTransferProtocol
139
+ """
140
+
141
+ self._protocol = protocol
142
+
143
+ @property
144
+ def port(self):
145
+ """Gets the port of this FileTransferMethod. # noqa: E501
146
+
147
+
148
+ :return: The port of this FileTransferMethod. # noqa: E501
149
+ :rtype: int
150
+ """
151
+ return self._port
152
+
153
+ @port.setter
154
+ def port(self, port):
155
+ """Sets the port of this FileTransferMethod.
156
+
157
+
158
+ :param port: The port of this FileTransferMethod. # noqa: E501
159
+ :type: int
160
+ """
161
+
162
+ self._port = port
163
+
164
+ @property
165
+ def cluster_id(self):
166
+ """Gets the cluster_id of this FileTransferMethod. # noqa: E501
167
+
168
+
169
+ :return: The cluster_id of this FileTransferMethod. # noqa: E501
170
+ :rtype: int
171
+ """
172
+ return self._cluster_id
173
+
174
+ @cluster_id.setter
175
+ def cluster_id(self, cluster_id):
176
+ """Sets the cluster_id of this FileTransferMethod.
177
+
178
+
179
+ :param cluster_id: The cluster_id of this FileTransferMethod. # noqa: E501
180
+ :type: int
181
+ """
182
+
183
+ self._cluster_id = cluster_id
184
+
185
+ @property
186
+ def cluster(self):
187
+ """Gets the cluster of this FileTransferMethod. # noqa: E501
188
+
189
+
190
+ :return: The cluster of this FileTransferMethod. # noqa: E501
191
+ :rtype: Cluster
192
+ """
193
+ return self._cluster
194
+
195
+ @cluster.setter
196
+ def cluster(self, cluster):
197
+ """Sets the cluster of this FileTransferMethod.
198
+
199
+
200
+ :param cluster: The cluster of this FileTransferMethod. # noqa: E501
201
+ :type: Cluster
202
+ """
203
+ if cluster is None:
204
+ raise ValueError("Invalid value for `cluster`, must not be `None`") # noqa: E501
205
+
206
+ self._cluster = cluster
207
+
208
+ @property
209
+ def shared_base_path(self):
210
+ """Gets the shared_base_path of this FileTransferMethod. # noqa: E501
211
+
212
+
213
+ :return: The shared_base_path of this FileTransferMethod. # noqa: E501
214
+ :rtype: str
215
+ """
216
+ return self._shared_base_path
217
+
218
+ @shared_base_path.setter
219
+ def shared_base_path(self, shared_base_path):
220
+ """Sets the shared_base_path of this FileTransferMethod.
221
+
222
+
223
+ :param shared_base_path: The shared_base_path of this FileTransferMethod. # noqa: E501
224
+ :type: str
225
+ """
226
+
227
+ self._shared_base_path = shared_base_path
228
+
229
+ @property
230
+ def credentials(self):
231
+ """Gets the credentials of this FileTransferMethod. # noqa: E501
232
+
233
+
234
+ :return: The credentials of this FileTransferMethod. # noqa: E501
235
+ :rtype: AuthenticationCredentials
236
+ """
237
+ return self._credentials
238
+
239
+ @credentials.setter
240
+ def credentials(self, credentials):
241
+ """Sets the credentials of this FileTransferMethod.
242
+
243
+
244
+ :param credentials: The credentials of this FileTransferMethod. # noqa: E501
245
+ :type: AuthenticationCredentials
246
+ """
247
+
248
+ self._credentials = credentials
249
+
250
+ def to_dict(self):
251
+ """Returns the model properties as a dict"""
252
+ result = {}
253
+
254
+ for attr, _ in six.iteritems(self.swagger_types):
255
+ value = getattr(self, attr)
256
+ if isinstance(value, list):
257
+ result[attr] = list(map(
258
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
259
+ value
260
+ ))
261
+ elif hasattr(value, "to_dict"):
262
+ result[attr] = value.to_dict()
263
+ elif isinstance(value, dict):
264
+ result[attr] = dict(map(
265
+ lambda item: (item[0], item[1].to_dict())
266
+ if hasattr(item[1], "to_dict") else item,
267
+ value.items()
268
+ ))
269
+ else:
270
+ result[attr] = value
271
+ if issubclass(FileTransferMethod, dict):
272
+ for key, value in self.items():
273
+ result[key] = value
274
+
275
+ return result
276
+
277
+ def to_str(self):
278
+ """Returns the string representation of the model"""
279
+ return pprint.pformat(self.to_dict())
280
+
281
+ def __repr__(self):
282
+ """For `print` and `pprint`"""
283
+ return self.to_str()
284
+
285
+ def __eq__(self, other):
286
+ """Returns true if both objects are equal"""
287
+ if not isinstance(other, FileTransferMethod):
288
+ return False
289
+
290
+ return self.__dict__ == other.__dict__
291
+
292
+ def __ne__(self, other):
293
+ """Returns true if both objects are not equal"""
294
+ return not self == other