AWS SDK for C++

AWS SDK for C++ Version 1.11.867

Loading...
Searching...
No Matches
UploadHandle.h
1
5#pragma once
6#include <aws/s3-transfer/S3Transfer_EXPORTS.h>
7#include <future>
8#include <memory>
9#include <aws/s3-transfer/UploadResponse.h>
10#include <aws/core/utils/memory/AWSMemory.h>
11
12
13namespace Aws {
14namespace S3 {
15namespace Transfer {
16
17class UploadHandleImpl;
18
19// Move-only handle for a single in-flight upload.
20class AWS_S3_TRANSFER_API UploadHandle final {
21public:
24 UploadHandle(const UploadHandle&) = delete;
27 UploadHandle& operator=(UploadHandle&&) noexcept;
28
29 // Resolves once the transfer finishes, succeeds, or fails.
30 std::future<UploadOutcome> CompletionFuture();
31
32 // Returns immediately; the completion future resolves with a failure once the cancel takes effect.
33 void Cancel();
34
35private:
37};
38
39} // namespace Transfer
40} // namespace S3
41} // namespace Aws
UploadHandle & operator=(const UploadHandle &)=delete
UploadHandle(UploadHandle &&) noexcept
UploadHandle(Aws::UniquePtr< UploadHandleImpl > impl)
UploadHandle(const UploadHandle &)=delete
std::unique_ptr< T, D > UniquePtr