in Sources/OSS/ClientPresigner.swift [212:237]
func presign(
_ request: AbortMultipartUploadRequest,
_ expiration: Foundation.Date? = nil
) async throws -> PresignResult {
var input = OperationInput(
operationName: "AbortMultipartUpload",
method: "DELETE"
)
input.bucket = try request.bucket.ensureRequired(field: "request.bucket")
input.key = try request.key.ensureRequired(field: "request.key")
if let expiration = expiration {
input.metadata.set(key: AttributeKeys.expirationTime, value: expiration)
}
var req = request
try Serde.serializeInput(&req, &input, [Serde.serializeAbortMultipartUpload])
let output = try await clientImpl.presignInner(with: &input)
return PresignResult(
method: output.method ?? "",
url: output.url ?? "",
expiration: output.expiration,
signedHeaders: output.signedHeaders
)
}