wds-client 0.7.0__py3-none-any.whl → 0.9.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 (58) hide show
  1. wds_client/__init__.py +8 -10
  2. wds_client/api/__init__.py +1 -2
  3. wds_client/api/capabilities_api.py +237 -102
  4. wds_client/api/cloning_api.py +782 -329
  5. wds_client/api/general_wds_information_api.py +463 -191
  6. wds_client/api/import_api.py +288 -127
  7. wds_client/api/instances_api.py +783 -333
  8. wds_client/api/job_api.py +518 -215
  9. wds_client/api/records_api.py +2512 -1089
  10. wds_client/api/schema_api.py +1450 -626
  11. wds_client/api_client.py +414 -310
  12. wds_client/api_response.py +21 -0
  13. wds_client/configuration.py +110 -53
  14. wds_client/exceptions.py +99 -20
  15. wds_client/models/__init__.py +4 -8
  16. wds_client/models/app.py +68 -125
  17. wds_client/models/attribute_data_type.py +31 -94
  18. wds_client/models/attribute_schema.py +71 -157
  19. wds_client/models/attribute_schema_update.py +69 -127
  20. wds_client/models/backup_job.py +96 -298
  21. wds_client/models/backup_response.py +70 -157
  22. wds_client/models/backup_restore_request.py +68 -129
  23. wds_client/models/batch_operation.py +83 -137
  24. wds_client/models/batch_record_request.py +70 -160
  25. wds_client/models/batch_response.py +68 -127
  26. wds_client/models/build.py +79 -207
  27. wds_client/models/capabilities.py +83 -103
  28. wds_client/models/clone_job.py +96 -298
  29. wds_client/models/clone_response.py +68 -129
  30. wds_client/models/commit.py +69 -125
  31. wds_client/models/error_response.py +78 -222
  32. wds_client/models/generic_job.py +102 -334
  33. wds_client/models/git.py +76 -129
  34. wds_client/models/import_request.py +77 -165
  35. wds_client/models/job.py +87 -243
  36. wds_client/models/job_v1.py +97 -277
  37. wds_client/models/record_query_response.py +86 -162
  38. wds_client/models/record_request.py +60 -96
  39. wds_client/models/record_response.py +70 -160
  40. wds_client/models/record_type_schema.py +84 -191
  41. wds_client/models/search_filter.py +60 -95
  42. wds_client/models/search_request.py +84 -220
  43. wds_client/models/search_sort_direction.py +17 -80
  44. wds_client/models/status_response.py +68 -125
  45. wds_client/models/tsv_upload_response.py +68 -127
  46. wds_client/models/version_response.py +86 -155
  47. wds_client/py.typed +0 -0
  48. wds_client/rest.py +136 -170
  49. wds_client-0.9.0.dist-info/METADATA +17 -0
  50. wds_client-0.9.0.dist-info/RECORD +52 -0
  51. {wds_client-0.7.0.dist-info → wds_client-0.9.0.dist-info}/WHEEL +1 -1
  52. wds_client/models/backup_job_all_of.py +0 -148
  53. wds_client/models/clone_job_all_of.py +0 -148
  54. wds_client/models/generic_job_all_of.py +0 -150
  55. wds_client/models/inline_object.py +0 -123
  56. wds_client-0.7.0.dist-info/METADATA +0 -16
  57. wds_client-0.7.0.dist-info/RECORD +0 -54
  58. {wds_client-0.7.0.dist-info → wds_client-0.9.0.dist-info}/top_level.txt +0 -0
wds_client/rest.py CHANGED
@@ -3,57 +3,66 @@
3
3
  """
4
4
  Workspace Data Service
5
5
 
6
- This page lists current APIs. As of v0.2, all APIs are subject to change without notice. # noqa: E501
6
+ This page lists current APIs. All v0.2 APIs are subject to change without notice. Changelog at [https://github.com/DataBiosphere/terra-workspace-data-service/releases](https://github.com/DataBiosphere/terra-workspace-data-service/releases)
7
7
 
8
8
  The version of the OpenAPI document: v0.2
9
- Generated by: https://openapi-generator.tech
10
- """
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
10
 
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
12
13
 
13
- from __future__ import absolute_import
14
14
 
15
15
  import io
16
16
  import json
17
- import logging
18
17
  import re
19
18
  import ssl
20
19
 
21
- import certifi
22
- # python 2 and python 3 compatibility library
23
- import six
24
- from six.moves.urllib.parse import urlencode
25
20
  import urllib3
26
21
 
27
22
  from wds_client.exceptions import ApiException, ApiValueError
28
23
 
24
+ SUPPORTED_SOCKS_PROXIES = {"socks5", "socks5h", "socks4", "socks4a"}
25
+ RESTResponseType = urllib3.HTTPResponse
26
+
29
27
 
30
- logger = logging.getLogger(__name__)
28
+ def is_socks_proxy_url(url):
29
+ if url is None:
30
+ return False
31
+ split_section = url.split("://")
32
+ if len(split_section) < 2:
33
+ return False
34
+ else:
35
+ return split_section[0].lower() in SUPPORTED_SOCKS_PROXIES
31
36
 
32
37
 
33
38
  class RESTResponse(io.IOBase):
34
39
 
35
- def __init__(self, resp):
36
- self.urllib3_response = resp
40
+ def __init__(self, resp) -> None:
41
+ self.response = resp
37
42
  self.status = resp.status
38
43
  self.reason = resp.reason
39
- self.data = resp.data
44
+ self.data = None
45
+
46
+ def read(self):
47
+ if self.data is None:
48
+ self.data = self.response.data
49
+ return self.data
40
50
 
41
51
  def getheaders(self):
42
52
  """Returns a dictionary of the response headers."""
43
- return self.urllib3_response.getheaders()
53
+ return self.response.headers
44
54
 
45
55
  def getheader(self, name, default=None):
46
56
  """Returns a given response header."""
47
- return self.urllib3_response.getheader(name, default)
57
+ return self.response.headers.get(name, default)
48
58
 
49
59
 
50
- class RESTClientObject(object):
60
+ class RESTClientObject:
51
61
 
52
- def __init__(self, configuration, pools_size=4, maxsize=None):
62
+ def __init__(self, configuration) -> None:
53
63
  # urllib3.PoolManager will pass all kw parameters to connectionpool
54
64
  # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/poolmanager.py#L75 # noqa: E501
55
65
  # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/connectionpool.py#L680 # noqa: E501
56
- # maxsize is the number of requests to host that are allowed in parallel # noqa: E501
57
66
  # Custom SSL certificates and client certificates: http://urllib3.readthedocs.io/en/latest/advanced-usage.html # noqa: E501
58
67
 
59
68
  # cert_reqs
@@ -62,74 +71,79 @@ class RESTClientObject(object):
62
71
  else:
63
72
  cert_reqs = ssl.CERT_NONE
64
73
 
65
- # ca_certs
66
- if configuration.ssl_ca_cert:
67
- ca_certs = configuration.ssl_ca_cert
68
- else:
69
- # if not set certificate file, use Mozilla's root certificates.
70
- ca_certs = certifi.where()
71
-
72
- addition_pool_args = {}
74
+ pool_args = {
75
+ "cert_reqs": cert_reqs,
76
+ "ca_certs": configuration.ssl_ca_cert,
77
+ "cert_file": configuration.cert_file,
78
+ "key_file": configuration.key_file,
79
+ }
73
80
  if configuration.assert_hostname is not None:
74
- addition_pool_args['assert_hostname'] = configuration.assert_hostname # noqa: E501
81
+ pool_args['assert_hostname'] = (
82
+ configuration.assert_hostname
83
+ )
75
84
 
76
85
  if configuration.retries is not None:
77
- addition_pool_args['retries'] = configuration.retries
86
+ pool_args['retries'] = configuration.retries
78
87
 
79
- if maxsize is None:
80
- if configuration.connection_pool_maxsize is not None:
81
- maxsize = configuration.connection_pool_maxsize
82
- else:
83
- maxsize = 4
88
+ if configuration.tls_server_name:
89
+ pool_args['server_hostname'] = configuration.tls_server_name
90
+
91
+
92
+ if configuration.socket_options is not None:
93
+ pool_args['socket_options'] = configuration.socket_options
94
+
95
+ if configuration.connection_pool_maxsize is not None:
96
+ pool_args['maxsize'] = configuration.connection_pool_maxsize
84
97
 
85
98
  # https pool manager
99
+ self.pool_manager: urllib3.PoolManager
100
+
86
101
  if configuration.proxy:
87
- self.pool_manager = urllib3.ProxyManager(
88
- num_pools=pools_size,
89
- maxsize=maxsize,
90
- cert_reqs=cert_reqs,
91
- ca_certs=ca_certs,
92
- cert_file=configuration.cert_file,
93
- key_file=configuration.key_file,
94
- proxy_url=configuration.proxy,
95
- proxy_headers=configuration.proxy_headers,
96
- **addition_pool_args
97
- )
102
+ if is_socks_proxy_url(configuration.proxy):
103
+ from urllib3.contrib.socks import SOCKSProxyManager
104
+ pool_args["proxy_url"] = configuration.proxy
105
+ pool_args["headers"] = configuration.proxy_headers
106
+ self.pool_manager = SOCKSProxyManager(**pool_args)
107
+ else:
108
+ pool_args["proxy_url"] = configuration.proxy
109
+ pool_args["proxy_headers"] = configuration.proxy_headers
110
+ self.pool_manager = urllib3.ProxyManager(**pool_args)
98
111
  else:
99
- self.pool_manager = urllib3.PoolManager(
100
- num_pools=pools_size,
101
- maxsize=maxsize,
102
- cert_reqs=cert_reqs,
103
- ca_certs=ca_certs,
104
- cert_file=configuration.cert_file,
105
- key_file=configuration.key_file,
106
- **addition_pool_args
107
- )
108
-
109
- def request(self, method, url, query_params=None, headers=None,
110
- body=None, post_params=None, _preload_content=True,
111
- _request_timeout=None):
112
+ self.pool_manager = urllib3.PoolManager(**pool_args)
113
+
114
+ def request(
115
+ self,
116
+ method,
117
+ url,
118
+ headers=None,
119
+ body=None,
120
+ post_params=None,
121
+ _request_timeout=None
122
+ ):
112
123
  """Perform requests.
113
124
 
114
125
  :param method: http request method
115
126
  :param url: http request url
116
- :param query_params: query parameters in the url
117
127
  :param headers: http request headers
118
128
  :param body: request json body, for `application/json`
119
129
  :param post_params: request post parameters,
120
130
  `application/x-www-form-urlencoded`
121
131
  and `multipart/form-data`
122
- :param _preload_content: if False, the urllib3.HTTPResponse object will
123
- be returned without reading/decoding response
124
- data. Default is True.
125
132
  :param _request_timeout: timeout setting for this request. If one
126
133
  number provided, it will be total request
127
134
  timeout. It can also be a pair (tuple) of
128
135
  (connection, read) timeouts.
129
136
  """
130
137
  method = method.upper()
131
- assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT',
132
- 'PATCH', 'OPTIONS']
138
+ assert method in [
139
+ 'GET',
140
+ 'HEAD',
141
+ 'DELETE',
142
+ 'POST',
143
+ 'PUT',
144
+ 'PATCH',
145
+ 'OPTIONS'
146
+ ]
133
147
 
134
148
  if post_params and body:
135
149
  raise ApiValueError(
@@ -141,60 +155,83 @@ class RESTClientObject(object):
141
155
 
142
156
  timeout = None
143
157
  if _request_timeout:
144
- if isinstance(_request_timeout, (int, ) if six.PY3 else (int, long)): # noqa: E501,F821
158
+ if isinstance(_request_timeout, (int, float)):
145
159
  timeout = urllib3.Timeout(total=_request_timeout)
146
- elif (isinstance(_request_timeout, tuple) and
147
- len(_request_timeout) == 2):
160
+ elif (
161
+ isinstance(_request_timeout, tuple)
162
+ and len(_request_timeout) == 2
163
+ ):
148
164
  timeout = urllib3.Timeout(
149
- connect=_request_timeout[0], read=_request_timeout[1])
150
-
151
- if 'Content-Type' not in headers:
152
- headers['Content-Type'] = 'application/json'
165
+ connect=_request_timeout[0],
166
+ read=_request_timeout[1]
167
+ )
153
168
 
154
169
  try:
155
170
  # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
156
171
  if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
157
- if query_params:
158
- url += '?' + urlencode(query_params)
159
- if re.search('json', headers['Content-Type'], re.IGNORECASE):
172
+
173
+ # no content type provided or payload is json
174
+ content_type = headers.get('Content-Type')
175
+ if (
176
+ not content_type
177
+ or re.search('json', content_type, re.IGNORECASE)
178
+ ):
160
179
  request_body = None
161
180
  if body is not None:
162
181
  request_body = json.dumps(body)
163
182
  r = self.pool_manager.request(
164
- method, url,
183
+ method,
184
+ url,
165
185
  body=request_body,
166
- preload_content=_preload_content,
167
186
  timeout=timeout,
168
- headers=headers)
169
- elif headers['Content-Type'] == 'application/x-www-form-urlencoded': # noqa: E501
187
+ headers=headers,
188
+ preload_content=False
189
+ )
190
+ elif content_type == 'application/x-www-form-urlencoded':
170
191
  r = self.pool_manager.request(
171
- method, url,
192
+ method,
193
+ url,
172
194
  fields=post_params,
173
195
  encode_multipart=False,
174
- preload_content=_preload_content,
175
196
  timeout=timeout,
176
- headers=headers)
177
- elif headers['Content-Type'] == 'multipart/form-data':
197
+ headers=headers,
198
+ preload_content=False
199
+ )
200
+ elif content_type == 'multipart/form-data':
178
201
  # must del headers['Content-Type'], or the correct
179
202
  # Content-Type which generated by urllib3 will be
180
203
  # overwritten.
181
204
  del headers['Content-Type']
205
+ # Ensures that dict objects are serialized
206
+ post_params = [(a, json.dumps(b)) if isinstance(b, dict) else (a,b) for a, b in post_params]
182
207
  r = self.pool_manager.request(
183
- method, url,
208
+ method,
209
+ url,
184
210
  fields=post_params,
185
211
  encode_multipart=True,
186
- preload_content=_preload_content,
187
212
  timeout=timeout,
188
- headers=headers)
213
+ headers=headers,
214
+ preload_content=False
215
+ )
189
216
  # Pass a `string` parameter directly in the body to support
190
- # other content types than Json when `body` argument is
191
- # provided in serialized form
217
+ # other content types than JSON when `body` argument is
218
+ # provided in serialized form.
192
219
  elif isinstance(body, str) or isinstance(body, bytes):
193
- request_body = body
194
220
  r = self.pool_manager.request(
195
- method, url,
221
+ method,
222
+ url,
223
+ body=body,
224
+ timeout=timeout,
225
+ headers=headers,
226
+ preload_content=False
227
+ )
228
+ elif headers['Content-Type'] == 'text/plain' and isinstance(body, bool):
229
+ request_body = "true" if body else "false"
230
+ r = self.pool_manager.request(
231
+ method,
232
+ url,
196
233
  body=request_body,
197
- preload_content=_preload_content,
234
+ preload_content=False,
198
235
  timeout=timeout,
199
236
  headers=headers)
200
237
  else:
@@ -205,87 +242,16 @@ class RESTClientObject(object):
205
242
  raise ApiException(status=0, reason=msg)
206
243
  # For `GET`, `HEAD`
207
244
  else:
208
- r = self.pool_manager.request(method, url,
209
- fields=query_params,
210
- preload_content=_preload_content,
211
- timeout=timeout,
212
- headers=headers)
245
+ r = self.pool_manager.request(
246
+ method,
247
+ url,
248
+ fields={},
249
+ timeout=timeout,
250
+ headers=headers,
251
+ preload_content=False
252
+ )
213
253
  except urllib3.exceptions.SSLError as e:
214
- msg = "{0}\n{1}".format(type(e).__name__, str(e))
254
+ msg = "\n".join([type(e).__name__, str(e)])
215
255
  raise ApiException(status=0, reason=msg)
216
256
 
217
- if _preload_content:
218
- r = RESTResponse(r)
219
-
220
- # log response body
221
- logger.debug("response body: %s", r.data)
222
-
223
- if not 200 <= r.status <= 299:
224
- raise ApiException(http_resp=r)
225
-
226
- return r
227
-
228
- def GET(self, url, headers=None, query_params=None, _preload_content=True,
229
- _request_timeout=None):
230
- return self.request("GET", url,
231
- headers=headers,
232
- _preload_content=_preload_content,
233
- _request_timeout=_request_timeout,
234
- query_params=query_params)
235
-
236
- def HEAD(self, url, headers=None, query_params=None, _preload_content=True,
237
- _request_timeout=None):
238
- return self.request("HEAD", url,
239
- headers=headers,
240
- _preload_content=_preload_content,
241
- _request_timeout=_request_timeout,
242
- query_params=query_params)
243
-
244
- def OPTIONS(self, url, headers=None, query_params=None, post_params=None,
245
- body=None, _preload_content=True, _request_timeout=None):
246
- return self.request("OPTIONS", url,
247
- headers=headers,
248
- query_params=query_params,
249
- post_params=post_params,
250
- _preload_content=_preload_content,
251
- _request_timeout=_request_timeout,
252
- body=body)
253
-
254
- def DELETE(self, url, headers=None, query_params=None, body=None,
255
- _preload_content=True, _request_timeout=None):
256
- return self.request("DELETE", url,
257
- headers=headers,
258
- query_params=query_params,
259
- _preload_content=_preload_content,
260
- _request_timeout=_request_timeout,
261
- body=body)
262
-
263
- def POST(self, url, headers=None, query_params=None, post_params=None,
264
- body=None, _preload_content=True, _request_timeout=None):
265
- return self.request("POST", url,
266
- headers=headers,
267
- query_params=query_params,
268
- post_params=post_params,
269
- _preload_content=_preload_content,
270
- _request_timeout=_request_timeout,
271
- body=body)
272
-
273
- def PUT(self, url, headers=None, query_params=None, post_params=None,
274
- body=None, _preload_content=True, _request_timeout=None):
275
- return self.request("PUT", url,
276
- headers=headers,
277
- query_params=query_params,
278
- post_params=post_params,
279
- _preload_content=_preload_content,
280
- _request_timeout=_request_timeout,
281
- body=body)
282
-
283
- def PATCH(self, url, headers=None, query_params=None, post_params=None,
284
- body=None, _preload_content=True, _request_timeout=None):
285
- return self.request("PATCH", url,
286
- headers=headers,
287
- query_params=query_params,
288
- post_params=post_params,
289
- _preload_content=_preload_content,
290
- _request_timeout=_request_timeout,
291
- body=body)
257
+ return RESTResponse(r)
@@ -0,0 +1,17 @@
1
+ Metadata-Version: 2.1
2
+ Name: wds-client
3
+ Version: 0.9.0
4
+ Summary: Workspace Data Service
5
+ Home-page:
6
+ Author: OpenAPI Generator community
7
+ Author-email: team@openapitools.org
8
+ License: BSD
9
+ Keywords: OpenAPI,OpenAPI-Generator,Workspace Data Service
10
+ Description-Content-Type: text/markdown
11
+ Requires-Dist: urllib3 <2.1.0,>=1.25.3
12
+ Requires-Dist: python-dateutil
13
+ Requires-Dist: pydantic >=2
14
+ Requires-Dist: typing-extensions >=4.7.1
15
+
16
+ This page lists current APIs. All v0.2 APIs are subject to change without notice. Changelog at [https://github.com/DataBiosphere/terra-workspace-data-service/releases](https://github.com/DataBiosphere/terra-workspace-data-service/releases)
17
+
@@ -0,0 +1,52 @@
1
+ wds_client/__init__.py,sha256=YlhpnJC7P9eAb6-k8rSp-WadAHYkiSLgiDVYpLJNkzQ,3257
2
+ wds_client/api_client.py,sha256=c4Q31pIwuErMWUuySTYsWOSaPsAiYqk0dZm8tu4tj3U,26461
3
+ wds_client/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
4
+ wds_client/configuration.py,sha256=IiosNugtZ54jyTstLvg-26AKpVT7dK5HnM2kfo9ONno,14875
5
+ wds_client/exceptions.py,sha256=674T2OrRc-tySXqf45i00iZdt3r6AS-RnWjBUgRxAvc,6122
6
+ wds_client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ wds_client/rest.py,sha256=Gbp9F8A2qoMDg4xrkCjSAG0FDHXUxcNB8oyfzJXxw4U,9554
8
+ wds_client/api/__init__.py,sha256=sOPGmC1nqF5yugy7QZrIgnqcpKKWmT8tSUQN7_35SM0,480
9
+ wds_client/api/capabilities_api.py,sha256=m9AZnzduVbIVGPyRQTSmBACIsqywo9ymvrWk8zoryBw,10266
10
+ wds_client/api/cloning_api.py,sha256=wJOguaDHU5OlhYXcp41glt-63cStau7pnuAUqm9MvZk,32266
11
+ wds_client/api/general_wds_information_api.py,sha256=LMtPAddLz4-8WTBVHy6DQFGVBD6EzWapI2Yzsn1k_tA,20130
12
+ wds_client/api/import_api.py,sha256=LPu_9Ar_dEjrIORzlxKzL8uSB_CYh9HJ3eb29Fjef_s,12867
13
+ wds_client/api/instances_api.py,sha256=svpIhbty5QGZrRHrEynmoC94auCqsnWNUgiXl9i1SZo,32621
14
+ wds_client/api/job_api.py,sha256=Iy5rns4-2peAU1gQ89InfJvvRw1v5ZxY1DKB50osfkI,21676
15
+ wds_client/api/records_api.py,sha256=hy2y__WW2TSVw5vJK0cw_ydXY3WyyXkgvjow_begBUU,106076
16
+ wds_client/api/schema_api.py,sha256=H0yxUeb2OzcqQ2LWiF9vrHNO1U-5PMmD6YQeeOmWnX4,60801
17
+ wds_client/models/__init__.py,sha256=IWiDjPW3dO2X2l8EuchR_g_A3_pqrSTcl_3kdL7_RLs,2317
18
+ wds_client/models/app.py,sha256=9aTIAS8vTOch8zKHBvZHuXumL0vYZBOO2g9Y8VKjPPw,2772
19
+ wds_client/models/attribute_data_type.py,sha256=R4kI1B2oH7pcyNYcIUElp5MmAMWGj0KY1AeQ5zo0lKk,1514
20
+ wds_client/models/attribute_schema.py,sha256=Lrrw5iTq9O56DbcCgAGgif500eO9-aaJ8FWHNM6pF7U,3091
21
+ wds_client/models/attribute_schema_update.py,sha256=1Sl2xb3C1kHcy5HDYPwVCArnp-GxLc8v1BxvpRi9w4w,2916
22
+ wds_client/models/backup_job.py,sha256=6zWlfaP9jXZdLL_uEqKokOImLQGOZ9Jkc5v82cE3M80,4065
23
+ wds_client/models/backup_response.py,sha256=3MGgJdNrBRIE8id2XKXa3TdPOcV3ZGNv8ZarzPhs-Vs,3054
24
+ wds_client/models/backup_restore_request.py,sha256=HEY8xAx5sWRYdagmpDXz_e0-xNTfS643HU-FYY4EJ9c,3117
25
+ wds_client/models/batch_operation.py,sha256=GhXM3DCHixekjDbvEhH9ZJIqf3wURETMHtqiOV7PiMg,3306
26
+ wds_client/models/batch_record_request.py,sha256=HcJXRlEbgR5VxaZsNzhEdgF--lOAQhWjuDDvYxQHj9s,3017
27
+ wds_client/models/batch_response.py,sha256=komy-MPBarmnkHgRIuAArzNRMCiswnnNcINC9PFU1wE,2791
28
+ wds_client/models/build.py,sha256=9VpoHN59SYEUBWKWFbmAnseiFX5-zyGA66nAjBWGI7s,3002
29
+ wds_client/models/capabilities.py,sha256=Vqh62U0ZX_tNaBnAvabkdOCzByLp49FHBToxOZ6j6u8,3270
30
+ wds_client/models/clone_job.py,sha256=Dt7imPtHrLgJbdWBbABjXo3ArZ4aJVRKEHgETiCTI1Y,4057
31
+ wds_client/models/clone_response.py,sha256=qrBpBfS-b3EmAszCdY7vzfMJj4zr36xvp5Zlj0fLjoM,2943
32
+ wds_client/models/commit.py,sha256=yE9OxZ_1kGnbD3U80QTBi8HOELfxd21Eb3-RraPqbsc,2720
33
+ wds_client/models/error_response.py,sha256=U1Fl24jQhD2gEEREBSemaUp8PHKO7XHJ4pSLmgnVxz0,3115
34
+ wds_client/models/generic_job.py,sha256=XCO9Ll3aFcuVEZtbhbGzJ-u-KqgA18JBjj7MGPOWGck,4385
35
+ wds_client/models/git.py,sha256=ylt-GWcCKsfZmWfBHQIT7EO5mHhLqQnnf8hANgUZcl0,2962
36
+ wds_client/models/import_request.py,sha256=r8Tph4ZXFfXpI3n1nlbqs7azgrdEynwlQYrn4RvufWw,3309
37
+ wds_client/models/job.py,sha256=vaqbX9i6Oe0plmCAD9hBbpSCysvSxAqWkkOTuRwCTBo,3499
38
+ wds_client/models/job_v1.py,sha256=txrmfTIW6VZ3NvRmtHSmxbJeU22SvesWzJYHVWMEHa8,3926
39
+ wds_client/models/record_query_response.py,sha256=MnWYml3zasmWKLaFObZmkkredGo_mpHRoPnMljzFr_M,3809
40
+ wds_client/models/record_request.py,sha256=c-jJuqOgogRM5HdR2HoafMnpIAdfCukysSBFCqnwCjM,2796
41
+ wds_client/models/record_response.py,sha256=ZniN8hDVM7QAEbhwbUnr5RXYpZJHqwFPxBlmlhorBDk,3001
42
+ wds_client/models/record_type_schema.py,sha256=WITuWzyFehg0sYNwhixeeCT7lODEZvEFnlDLVjxAugw,3752
43
+ wds_client/models/search_filter.py,sha256=x7DKOQEgJfYZ71b2AmBvvGLSnhZhycSKsjAIOr135ZY,2720
44
+ wds_client/models/search_request.py,sha256=adtHBdVRwEurvnCnoffT0fwfFzk_AAsE98mOAe7ItXo,3722
45
+ wds_client/models/search_sort_direction.py,sha256=fnqUYvbgXHQ5mESZnxDvcUZ5wi6i770fkqu00jtCATM,932
46
+ wds_client/models/status_response.py,sha256=A5i2yWShlaGVVyi1DGg1KsC8S4fyLbmxJmqLlMKmtH0,2768
47
+ wds_client/models/tsv_upload_response.py,sha256=yhj-3KEFzs-EYnaGZvsr6KgrK6wlYCZKVA7ObfZ2ECc,2807
48
+ wds_client/models/version_response.py,sha256=pQ9eukrGQPdLBwvPKN_ucFlMKff25oGywruwIdL918o,3516
49
+ wds_client-0.9.0.dist-info/METADATA,sha256=9fYJJ1bgWvRArbT_R3cik_-L__bp5r7qU1DZvxNROHA,674
50
+ wds_client-0.9.0.dist-info/WHEEL,sha256=cpQTJ5IWu9CdaPViMhC9YzF8gZuS5-vlfoFihTBC86A,91
51
+ wds_client-0.9.0.dist-info/top_level.txt,sha256=hU2h533r5-3FzApV8ps3zXmQJKy74SPT3sYR8-uZhp8,11
52
+ wds_client-0.9.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.43.0)
2
+ Generator: setuptools (70.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,148 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- Workspace Data Service
5
-
6
- This page lists current APIs. As of v0.2, all APIs are subject to change without notice. # noqa: E501
7
-
8
- The version of the OpenAPI document: v0.2
9
- Generated by: https://openapi-generator.tech
10
- """
11
-
12
-
13
- import pprint
14
- import re # noqa: F401
15
-
16
- import six
17
-
18
- from wds_client.configuration import Configuration
19
-
20
-
21
- class BackupJobAllOf(object):
22
- """NOTE: This class is auto generated by OpenAPI Generator.
23
- Ref: https://openapi-generator.tech
24
-
25
- Do not edit the class manually.
26
- """
27
-
28
- """
29
- Attributes:
30
- openapi_types (dict): The key is attribute name
31
- and the value is attribute type.
32
- attribute_map (dict): The key is attribute name
33
- and the value is json key in definition.
34
- """
35
- openapi_types = {
36
- 'input': 'object',
37
- 'result': 'BackupResponse'
38
- }
39
-
40
- attribute_map = {
41
- 'input': 'input',
42
- 'result': 'result'
43
- }
44
-
45
- def __init__(self, input=None, result=None, local_vars_configuration=None): # noqa: E501
46
- """BackupJobAllOf - a model defined in OpenAPI""" # noqa: E501
47
- if local_vars_configuration is None:
48
- local_vars_configuration = Configuration()
49
- self.local_vars_configuration = local_vars_configuration
50
-
51
- self._input = None
52
- self._result = None
53
- self.discriminator = None
54
-
55
- if input is not None:
56
- self.input = input
57
- if result is not None:
58
- self.result = result
59
-
60
- @property
61
- def input(self):
62
- """Gets the input of this BackupJobAllOf. # noqa: E501
63
-
64
- Input arguments; expected to be empty. # noqa: E501
65
-
66
- :return: The input of this BackupJobAllOf. # noqa: E501
67
- :rtype: object
68
- """
69
- return self._input
70
-
71
- @input.setter
72
- def input(self, input):
73
- """Sets the input of this BackupJobAllOf.
74
-
75
- Input arguments; expected to be empty. # noqa: E501
76
-
77
- :param input: The input of this BackupJobAllOf. # noqa: E501
78
- :type: object
79
- """
80
-
81
- self._input = input
82
-
83
- @property
84
- def result(self):
85
- """Gets the result of this BackupJobAllOf. # noqa: E501
86
-
87
-
88
- :return: The result of this BackupJobAllOf. # noqa: E501
89
- :rtype: BackupResponse
90
- """
91
- return self._result
92
-
93
- @result.setter
94
- def result(self, result):
95
- """Sets the result of this BackupJobAllOf.
96
-
97
-
98
- :param result: The result of this BackupJobAllOf. # noqa: E501
99
- :type: BackupResponse
100
- """
101
-
102
- self._result = result
103
-
104
- def to_dict(self):
105
- """Returns the model properties as a dict"""
106
- result = {}
107
-
108
- for attr, _ in six.iteritems(self.openapi_types):
109
- value = getattr(self, attr)
110
- if isinstance(value, list):
111
- result[attr] = list(map(
112
- lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
113
- value
114
- ))
115
- elif hasattr(value, "to_dict"):
116
- result[attr] = value.to_dict()
117
- elif isinstance(value, dict):
118
- result[attr] = dict(map(
119
- lambda item: (item[0], item[1].to_dict())
120
- if hasattr(item[1], "to_dict") else item,
121
- value.items()
122
- ))
123
- else:
124
- result[attr] = value
125
-
126
- return result
127
-
128
- def to_str(self):
129
- """Returns the string representation of the model"""
130
- return pprint.pformat(self.to_dict())
131
-
132
- def __repr__(self):
133
- """For `print` and `pprint`"""
134
- return self.to_str()
135
-
136
- def __eq__(self, other):
137
- """Returns true if both objects are equal"""
138
- if not isinstance(other, BackupJobAllOf):
139
- return False
140
-
141
- return self.to_dict() == other.to_dict()
142
-
143
- def __ne__(self, other):
144
- """Returns true if both objects are not equal"""
145
- if not isinstance(other, BackupJobAllOf):
146
- return True
147
-
148
- return self.to_dict() != other.to_dict()