1use conjure_http::endpoint;
2#[conjure_http::conjure_client(name = "UploadService")]
4pub trait UploadService<
5 #[request_writer]
6 O,
7 #[response_body]
8 I: Iterator<
9 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
10 >,
11> {
12 #[endpoint(
15 method = POST,
16 path = "/upload/v1/multipart-upload",
17 name = "initiateMultipartUpload",
18 accept = conjure_http::client::StdResponseDeserializer
19 )]
20 fn initiate_multipart_upload(
21 &self,
22 #[auth]
23 auth_: &conjure_object::BearerToken,
24 #[body(serializer = conjure_http::client::StdRequestSerializer)]
25 upload_request: &super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
26 ) -> Result<
27 super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
28 conjure_http::private::Error,
29 >;
30 #[endpoint(
32 method = GET,
33 path = "/upload/v1/multipart-upload/{uploadId}",
34 name = "listParts",
35 accept = conjure_http::client::conjure::CollectionResponseDeserializer
36 )]
37 fn list_parts(
38 &self,
39 #[auth]
40 auth_: &conjure_object::BearerToken,
41 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
42 upload_id: &str,
43 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
44 key: &str,
45 ) -> Result<
46 Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
47 conjure_http::private::Error,
48 >;
49 #[endpoint(
52 method = POST,
53 path = "/upload/v1/multipart-upload/{uploadId}",
54 name = "signPart",
55 accept = conjure_http::client::StdResponseDeserializer
56 )]
57 fn sign_part(
58 &self,
59 #[auth]
60 auth_: &conjure_object::BearerToken,
61 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
62 upload_id: &str,
63 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
64 key: &str,
65 #[query(
66 name = "partNumber",
67 encoder = conjure_http::client::conjure::PlainEncoder
68 )]
69 part_number: i32,
70 ) -> Result<
71 super::super::super::super::objects::ingest::api::SignPartResponse,
72 conjure_http::private::Error,
73 >;
74 #[endpoint(
78 method = POST,
79 path = "/upload/v1/multipart-upload/{uploadId}/complete",
80 name = "completeMultipartUpload",
81 accept = conjure_http::client::StdResponseDeserializer
82 )]
83 fn complete_multipart_upload(
84 &self,
85 #[auth]
86 auth_: &conjure_object::BearerToken,
87 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
88 upload_id: &str,
89 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
90 key: &str,
91 #[body(serializer = conjure_http::client::StdRequestSerializer)]
92 parts: &[super::super::super::super::objects::ingest::api::Part],
93 ) -> Result<
94 super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
95 conjure_http::private::Error,
96 >;
97 #[endpoint(
100 method = POST,
101 path = "/upload/v1/multipart-upload/{uploadId}/abort",
102 name = "abortMultipartUpload",
103 accept = conjure_http::client::conjure::EmptyResponseDeserializer
104 )]
105 fn abort_multipart_upload(
106 &self,
107 #[auth]
108 auth_: &conjure_object::BearerToken,
109 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
110 upload_id: &str,
111 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
112 key: &str,
113 ) -> Result<(), conjure_http::private::Error>;
114 #[endpoint(
119 method = POST,
120 path = "/upload/v1/sign-download",
121 name = "signDownload",
122 accept = conjure_http::client::StdResponseDeserializer
123 )]
124 fn sign_download(
125 &self,
126 #[auth]
127 auth_: &conjure_object::BearerToken,
128 #[body(serializer = conjure_http::client::StdRequestSerializer)]
129 request: &super::super::super::super::objects::ingest::api::SignDownloadRequest,
130 ) -> Result<
131 super::super::super::super::objects::ingest::api::SignDownloadResponse,
132 conjure_http::private::Error,
133 >;
134 #[endpoint(
136 method = POST,
137 path = "/upload/v1/upload-file",
138 name = "uploadFile",
139 accept = conjure_http::client::StdResponseDeserializer
140 )]
141 fn upload_file(
142 &self,
143 #[auth]
144 auth_: &conjure_object::BearerToken,
145 #[query(
146 name = "fileName",
147 encoder = conjure_http::client::conjure::PlainEncoder
148 )]
149 file_name: &str,
150 #[query(
151 name = "sizeBytes",
152 encoder = conjure_http::client::conjure::PlainSeqEncoder
153 )]
154 size_bytes: Option<conjure_object::SafeLong>,
155 #[query(
156 name = "workspace",
157 encoder = conjure_http::client::conjure::PlainSeqEncoder
158 )]
159 workspace: Option<&conjure_object::ResourceIdentifier>,
160 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
161 body: impl conjure_http::client::WriteBody<O>,
162 ) -> Result<String, conjure_http::private::Error>;
163}
164#[conjure_http::conjure_client(name = "UploadService")]
166pub trait AsyncUploadService<
167 #[request_writer]
168 O,
169 #[response_body]
170 I: conjure_http::private::Stream<
171 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
172 >,
173> {
174 #[endpoint(
177 method = POST,
178 path = "/upload/v1/multipart-upload",
179 name = "initiateMultipartUpload",
180 accept = conjure_http::client::StdResponseDeserializer
181 )]
182 async fn initiate_multipart_upload(
183 &self,
184 #[auth]
185 auth_: &conjure_object::BearerToken,
186 #[body(serializer = conjure_http::client::StdRequestSerializer)]
187 upload_request: &super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
188 ) -> Result<
189 super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
190 conjure_http::private::Error,
191 >;
192 #[endpoint(
194 method = GET,
195 path = "/upload/v1/multipart-upload/{uploadId}",
196 name = "listParts",
197 accept = conjure_http::client::conjure::CollectionResponseDeserializer
198 )]
199 async fn list_parts(
200 &self,
201 #[auth]
202 auth_: &conjure_object::BearerToken,
203 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
204 upload_id: &str,
205 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
206 key: &str,
207 ) -> Result<
208 Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
209 conjure_http::private::Error,
210 >;
211 #[endpoint(
214 method = POST,
215 path = "/upload/v1/multipart-upload/{uploadId}",
216 name = "signPart",
217 accept = conjure_http::client::StdResponseDeserializer
218 )]
219 async fn sign_part(
220 &self,
221 #[auth]
222 auth_: &conjure_object::BearerToken,
223 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
224 upload_id: &str,
225 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
226 key: &str,
227 #[query(
228 name = "partNumber",
229 encoder = conjure_http::client::conjure::PlainEncoder
230 )]
231 part_number: i32,
232 ) -> Result<
233 super::super::super::super::objects::ingest::api::SignPartResponse,
234 conjure_http::private::Error,
235 >;
236 #[endpoint(
240 method = POST,
241 path = "/upload/v1/multipart-upload/{uploadId}/complete",
242 name = "completeMultipartUpload",
243 accept = conjure_http::client::StdResponseDeserializer
244 )]
245 async fn complete_multipart_upload(
246 &self,
247 #[auth]
248 auth_: &conjure_object::BearerToken,
249 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
250 upload_id: &str,
251 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
252 key: &str,
253 #[body(serializer = conjure_http::client::StdRequestSerializer)]
254 parts: &[super::super::super::super::objects::ingest::api::Part],
255 ) -> Result<
256 super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
257 conjure_http::private::Error,
258 >;
259 #[endpoint(
262 method = POST,
263 path = "/upload/v1/multipart-upload/{uploadId}/abort",
264 name = "abortMultipartUpload",
265 accept = conjure_http::client::conjure::EmptyResponseDeserializer
266 )]
267 async fn abort_multipart_upload(
268 &self,
269 #[auth]
270 auth_: &conjure_object::BearerToken,
271 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
272 upload_id: &str,
273 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
274 key: &str,
275 ) -> Result<(), conjure_http::private::Error>;
276 #[endpoint(
281 method = POST,
282 path = "/upload/v1/sign-download",
283 name = "signDownload",
284 accept = conjure_http::client::StdResponseDeserializer
285 )]
286 async fn sign_download(
287 &self,
288 #[auth]
289 auth_: &conjure_object::BearerToken,
290 #[body(serializer = conjure_http::client::StdRequestSerializer)]
291 request: &super::super::super::super::objects::ingest::api::SignDownloadRequest,
292 ) -> Result<
293 super::super::super::super::objects::ingest::api::SignDownloadResponse,
294 conjure_http::private::Error,
295 >;
296 #[endpoint(
298 method = POST,
299 path = "/upload/v1/upload-file",
300 name = "uploadFile",
301 accept = conjure_http::client::StdResponseDeserializer
302 )]
303 async fn upload_file(
304 &self,
305 #[auth]
306 auth_: &conjure_object::BearerToken,
307 #[query(
308 name = "fileName",
309 encoder = conjure_http::client::conjure::PlainEncoder
310 )]
311 file_name: &str,
312 #[query(
313 name = "sizeBytes",
314 encoder = conjure_http::client::conjure::PlainSeqEncoder
315 )]
316 size_bytes: Option<conjure_object::SafeLong>,
317 #[query(
318 name = "workspace",
319 encoder = conjure_http::client::conjure::PlainSeqEncoder
320 )]
321 workspace: Option<&conjure_object::ResourceIdentifier>,
322 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
323 body: impl conjure_http::client::AsyncWriteBody<O> + Sync + Send,
324 ) -> Result<String, conjure_http::private::Error>;
325}
326#[conjure_http::conjure_client(name = "UploadService", local)]
328pub trait LocalAsyncUploadService<
329 #[request_writer]
330 O,
331 #[response_body]
332 I: conjure_http::private::Stream<
333 Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
334 >,
335> {
336 #[endpoint(
339 method = POST,
340 path = "/upload/v1/multipart-upload",
341 name = "initiateMultipartUpload",
342 accept = conjure_http::client::StdResponseDeserializer
343 )]
344 async fn initiate_multipart_upload(
345 &self,
346 #[auth]
347 auth_: &conjure_object::BearerToken,
348 #[body(serializer = conjure_http::client::StdRequestSerializer)]
349 upload_request: &super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
350 ) -> Result<
351 super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
352 conjure_http::private::Error,
353 >;
354 #[endpoint(
356 method = GET,
357 path = "/upload/v1/multipart-upload/{uploadId}",
358 name = "listParts",
359 accept = conjure_http::client::conjure::CollectionResponseDeserializer
360 )]
361 async fn list_parts(
362 &self,
363 #[auth]
364 auth_: &conjure_object::BearerToken,
365 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
366 upload_id: &str,
367 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
368 key: &str,
369 ) -> Result<
370 Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
371 conjure_http::private::Error,
372 >;
373 #[endpoint(
376 method = POST,
377 path = "/upload/v1/multipart-upload/{uploadId}",
378 name = "signPart",
379 accept = conjure_http::client::StdResponseDeserializer
380 )]
381 async fn sign_part(
382 &self,
383 #[auth]
384 auth_: &conjure_object::BearerToken,
385 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
386 upload_id: &str,
387 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
388 key: &str,
389 #[query(
390 name = "partNumber",
391 encoder = conjure_http::client::conjure::PlainEncoder
392 )]
393 part_number: i32,
394 ) -> Result<
395 super::super::super::super::objects::ingest::api::SignPartResponse,
396 conjure_http::private::Error,
397 >;
398 #[endpoint(
402 method = POST,
403 path = "/upload/v1/multipart-upload/{uploadId}/complete",
404 name = "completeMultipartUpload",
405 accept = conjure_http::client::StdResponseDeserializer
406 )]
407 async fn complete_multipart_upload(
408 &self,
409 #[auth]
410 auth_: &conjure_object::BearerToken,
411 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
412 upload_id: &str,
413 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
414 key: &str,
415 #[body(serializer = conjure_http::client::StdRequestSerializer)]
416 parts: &[super::super::super::super::objects::ingest::api::Part],
417 ) -> Result<
418 super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
419 conjure_http::private::Error,
420 >;
421 #[endpoint(
424 method = POST,
425 path = "/upload/v1/multipart-upload/{uploadId}/abort",
426 name = "abortMultipartUpload",
427 accept = conjure_http::client::conjure::EmptyResponseDeserializer
428 )]
429 async fn abort_multipart_upload(
430 &self,
431 #[auth]
432 auth_: &conjure_object::BearerToken,
433 #[path(name = "uploadId", encoder = conjure_http::client::conjure::PlainEncoder)]
434 upload_id: &str,
435 #[query(name = "key", encoder = conjure_http::client::conjure::PlainEncoder)]
436 key: &str,
437 ) -> Result<(), conjure_http::private::Error>;
438 #[endpoint(
443 method = POST,
444 path = "/upload/v1/sign-download",
445 name = "signDownload",
446 accept = conjure_http::client::StdResponseDeserializer
447 )]
448 async fn sign_download(
449 &self,
450 #[auth]
451 auth_: &conjure_object::BearerToken,
452 #[body(serializer = conjure_http::client::StdRequestSerializer)]
453 request: &super::super::super::super::objects::ingest::api::SignDownloadRequest,
454 ) -> Result<
455 super::super::super::super::objects::ingest::api::SignDownloadResponse,
456 conjure_http::private::Error,
457 >;
458 #[endpoint(
460 method = POST,
461 path = "/upload/v1/upload-file",
462 name = "uploadFile",
463 accept = conjure_http::client::StdResponseDeserializer
464 )]
465 async fn upload_file(
466 &self,
467 #[auth]
468 auth_: &conjure_object::BearerToken,
469 #[query(
470 name = "fileName",
471 encoder = conjure_http::client::conjure::PlainEncoder
472 )]
473 file_name: &str,
474 #[query(
475 name = "sizeBytes",
476 encoder = conjure_http::client::conjure::PlainSeqEncoder
477 )]
478 size_bytes: Option<conjure_object::SafeLong>,
479 #[query(
480 name = "workspace",
481 encoder = conjure_http::client::conjure::PlainSeqEncoder
482 )]
483 workspace: Option<&conjure_object::ResourceIdentifier>,
484 #[body(serializer = conjure_http::client::conjure::BinaryRequestSerializer)]
485 body: impl conjure_http::client::LocalAsyncWriteBody<O>,
486 ) -> Result<String, conjure_http::private::Error>;
487}