use conjure_http::endpoint;
#[conjure_http::conjure_endpoints(
name = "UploadService",
use_legacy_error_serialization
)]
pub trait UploadService<#[request_body] I> {
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload",
name = "initiateMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
fn initiate_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[body(
deserializer = conjure_http::server::StdRequestDeserializer,
log_as = "uploadRequest"
)]
upload_request: super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
) -> Result<
super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "listParts",
produces = conjure_http::server::conjure::CollectionResponseSerializer
)]
fn list_parts(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<
Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "signPart",
produces = conjure_http::server::StdResponseSerializer
)]
fn sign_part(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[query(
name = "partNumber",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "partNumber"
)]
part_number: i32,
) -> Result<
super::super::super::super::objects::ingest::api::SignPartResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/complete",
name = "completeMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
fn complete_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[body(deserializer = conjure_http::server::StdRequestDeserializer)]
parts: Vec<super::super::super::super::objects::ingest::api::Part>,
) -> Result<
super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/abort",
name = "abortMultipartUpload"
)]
fn abort_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/upload/v1/upload-file",
name = "uploadFile",
produces = conjure_http::server::StdResponseSerializer
)]
fn upload_file(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[query(
name = "fileName",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "fileName"
)]
file_name: String,
#[query(
name = "sizeBytes",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
log_as = "sizeBytes"
)]
size_bytes: Option<conjure_object::SafeLong>,
#[query(
name = "workspace",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
safe
)]
workspace: Option<super::super::super::super::objects::api::rids::WorkspaceRid>,
#[body(deserializer = conjure_http::server::conjure::BinaryRequestDeserializer)]
body: I,
) -> Result<
super::super::super::super::objects::api::S3Path,
conjure_http::private::Error,
>;
}
#[conjure_http::conjure_endpoints(
name = "UploadService",
use_legacy_error_serialization
)]
pub trait AsyncUploadService<#[request_body] I> {
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload",
name = "initiateMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
async fn initiate_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[body(
deserializer = conjure_http::server::StdRequestDeserializer,
log_as = "uploadRequest"
)]
upload_request: super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
) -> Result<
super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "listParts",
produces = conjure_http::server::conjure::CollectionResponseSerializer
)]
async fn list_parts(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<
Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "signPart",
produces = conjure_http::server::StdResponseSerializer
)]
async fn sign_part(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[query(
name = "partNumber",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "partNumber"
)]
part_number: i32,
) -> Result<
super::super::super::super::objects::ingest::api::SignPartResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/complete",
name = "completeMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
async fn complete_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[body(deserializer = conjure_http::server::StdRequestDeserializer)]
parts: Vec<super::super::super::super::objects::ingest::api::Part>,
) -> Result<
super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/abort",
name = "abortMultipartUpload"
)]
async fn abort_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/upload/v1/upload-file",
name = "uploadFile",
produces = conjure_http::server::StdResponseSerializer
)]
async fn upload_file(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[query(
name = "fileName",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "fileName"
)]
file_name: String,
#[query(
name = "sizeBytes",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
log_as = "sizeBytes"
)]
size_bytes: Option<conjure_object::SafeLong>,
#[query(
name = "workspace",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
safe
)]
workspace: Option<super::super::super::super::objects::api::rids::WorkspaceRid>,
#[body(deserializer = conjure_http::server::conjure::BinaryRequestDeserializer)]
body: I,
) -> Result<
super::super::super::super::objects::api::S3Path,
conjure_http::private::Error,
>;
}
#[conjure_http::conjure_endpoints(
name = "UploadService",
use_legacy_error_serialization,
local
)]
pub trait LocalAsyncUploadService<#[request_body] I> {
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload",
name = "initiateMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
async fn initiate_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[body(
deserializer = conjure_http::server::StdRequestDeserializer,
log_as = "uploadRequest"
)]
upload_request: super::super::super::super::objects::ingest::api::InitiateMultipartUploadRequest,
) -> Result<
super::super::super::super::objects::ingest::api::InitiateMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = GET,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "listParts",
produces = conjure_http::server::conjure::CollectionResponseSerializer
)]
async fn list_parts(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<
Vec<super::super::super::super::objects::ingest::api::PartWithSize>,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}",
name = "signPart",
produces = conjure_http::server::StdResponseSerializer
)]
async fn sign_part(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[query(
name = "partNumber",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "partNumber"
)]
part_number: i32,
) -> Result<
super::super::super::super::objects::ingest::api::SignPartResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/complete",
name = "completeMultipartUpload",
produces = conjure_http::server::StdResponseSerializer
)]
async fn complete_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
#[body(deserializer = conjure_http::server::StdRequestDeserializer)]
parts: Vec<super::super::super::super::objects::ingest::api::Part>,
) -> Result<
super::super::super::super::objects::ingest::api::CompleteMultipartUploadResponse,
conjure_http::private::Error,
>;
#[endpoint(
method = POST,
path = "/upload/v1/multipart-upload/{uploadId}/abort",
name = "abortMultipartUpload"
)]
async fn abort_multipart_upload(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[path(
name = "uploadId",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "uploadId"
)]
upload_id: String,
#[query(name = "key", decoder = conjure_http::server::conjure::FromPlainDecoder)]
key: String,
) -> Result<(), conjure_http::private::Error>;
#[endpoint(
method = POST,
path = "/upload/v1/upload-file",
name = "uploadFile",
produces = conjure_http::server::StdResponseSerializer
)]
async fn upload_file(
&self,
#[auth]
auth_: conjure_object::BearerToken,
#[query(
name = "fileName",
decoder = conjure_http::server::conjure::FromPlainDecoder,
log_as = "fileName"
)]
file_name: String,
#[query(
name = "sizeBytes",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
log_as = "sizeBytes"
)]
size_bytes: Option<conjure_object::SafeLong>,
#[query(
name = "workspace",
decoder = conjure_http::server::conjure::FromPlainOptionDecoder,
safe
)]
workspace: Option<super::super::super::super::objects::api::rids::WorkspaceRid>,
#[body(deserializer = conjure_http::server::conjure::BinaryRequestDeserializer)]
body: I,
) -> Result<
super::super::super::super::objects::api::S3Path,
conjure_http::private::Error,
>;
}