#include </data/code/userver/libraries/s3api/src/s3api/clients/client.hpp>
Implementation of S3 client.
Definition at line 35 of file client.hpp.
Inheritance diagram for s3api::ClientImpl:Public Types | |
| using | CiUnorderedMap = ::http::headers::HeaderMap |
| using | Meta = CiUnorderedMap |
| using | Headers = CiUnorderedMap |
Public Member Functions | |
| ClientImpl (std::shared_ptr< S3Connection > s3conn, std::shared_ptr< authenticators::Authenticator > authenticator, std::string bucket) | |
| ClientImpl (std::shared_ptr< S3Connection > s3conn, std::shared_ptr< authenticators::AccessKey > authenticator, std::string bucket) | |
| std::string | PutObject (std::string_view path, std::string data, const std::optional< Meta > &meta, std::string_view content_type, const std::optional< std::string > &content_disposition, const std::optional< std::vector< Tag > > &tags) const final |
| void | DeleteObject (std::string_view path) const final |
| std::optional< std::string > | GetObject (std::string_view path, std::optional< std::string > versiong, HeadersDataResponse *headers_data, const HeaderDataRequest &headers_request) const final |
| std::string | TryGetObject (std::string_view path, std::optional< std::string > versiong, HeadersDataResponse *headers_data, const HeaderDataRequest &headers_request) const final |
| std::optional< std::string > | GetPartialObject (std::string_view path, std::string_view range, std::optional< std::string > versiong, HeadersDataResponse *headers_data, const HeaderDataRequest &headers_request) const final |
| std::string | TryGetPartialObject (std::string_view path, std::string_view range, std::optional< std::string > versiong, HeadersDataResponse *headers_data, const HeaderDataRequest &headers_request) const final |
| std::string | CopyObject (std::string_view key_from, std::string_view bucket_to, std::string_view key_to, const std::optional< Meta > &meta) final |
| std::string | CopyObject (std::string_view key_from, std::string_view key_to, const std::optional< Meta > &meta) final |
| std::optional< HeadersDataResponse > | GetObjectHead (std::string_view path, const HeaderDataRequest &request) const final |
| std::string | GenerateDownloadUrl (std::string_view path, time_t expires, bool use_ssl) const final |
| std::string | GenerateDownloadUrlVirtualHostAddressing (std::string_view path, const std::chrono::system_clock::time_point &expires_at, std::string_view protocol) const final |
| std::string | GenerateUploadUrlVirtualHostAddressing (std::string_view data, std::string_view content_type, std::string_view path, const std::chrono::system_clock::time_point &expires_at, std::string_view protocol) const final |
| std::optional< std::string > | ListBucketContents (std::string_view path, int max_keys, std::string marker, std::string delimiter) const final |
| std::vector< ObjectMeta > | ListBucketContentsParsed (std::string_view path_prefix) const final |
| std::vector< std::string > | ListBucketDirectories (std::string_view path_prefix) const final |
| multipart_upload::InitiateMultipartUploadResult | CreateMultipartUpload (const multipart_upload::CreateMultipartUploadRequest &request) const final |
Initiate a multipart upload sequence Performs a CreateMultipartUpload S3 Action. Returns result with upload ID which is used to associate all of the parts in the specific multipart upload. You specify this upload ID in each of your subsequent upload part requests For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html. | |
| multipart_upload::UploadPartResult | UploadPart (const multipart_upload::UploadPartRequest &request) const final |
| Upload a part in a multipart upload sequence. Performs an UploadPart S3 Action. Returns ETag value which you must include in the subsequent request to complete the multipart upload. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html. | |
| multipart_upload::CompleteMultipartUploadResult | CompleteMultipartUpload (const multipart_upload::CompleteMultipartUploadRequest &request) const final |
| Complete a multipart upload by assembling previously uploaded parts. Performs a CompleteMultipartUpload S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html. | |
| void | AbortMultipartUpload (const multipart_upload::AbortMultipartUploadRequest &request) const final |
| Abort a multipart upload sequence. Performs an AbortMultipartUpload S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html. | |
| multipart_upload::ListPartsResult | ListParts (const multipart_upload::ListPartsRequest &request) const final |
| List the parts that have been uploaded for a specific multipart upload. Performs a ListParts S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html. | |
| multipart_upload::ListMultipartUploadsResult | ListMultipartUploads (const multipart_upload::ListMultipartUploadsRequest &request) const final |
| List in-progress multipart uploads in a bucket Performs a ListMultipartUploads S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html. | |
| void | UpdateConfig (ConnectionCfg &&config) final |
| std::string_view | GetBucketName () const final |
|
inherited |
|
inherited |
|
inherited |
| s3api::ClientImpl::ClientImpl | ( | std::shared_ptr< S3Connection > | s3conn, |
| std::shared_ptr< authenticators::Authenticator > | authenticator, | ||
| std::string | bucket ) |
Definition at line 158 of file client.cpp.
| s3api::ClientImpl::ClientImpl | ( | std::shared_ptr< S3Connection > | s3conn, |
| std::shared_ptr< authenticators::AccessKey > | authenticator, | ||
| std::string | bucket ) |
Definition at line 168 of file client.cpp.
|
finalvirtual |
Abort a multipart upload sequence. Performs an AbortMultipartUpload S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html.
Implements s3api::Client.
Definition at line 568 of file client.cpp.
|
finalvirtual |
Complete a multipart upload by assembling previously uploaded parts. Performs a CompleteMultipartUpload S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html.
Implements s3api::Client.
Definition at line 552 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 464 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 502 of file client.cpp.
|
finalvirtual |
Initiate a multipart upload sequence Performs a CreateMultipartUpload S3 Action. Returns result with upload ID which is used to associate all of the parts in the specific multipart upload. You specify this upload ID in each of your subsequent upload part requests For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html.
Implements s3api::Client.
Definition at line 510 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 207 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 292 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 310 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 322 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 180 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 212 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 277 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 243 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 390 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 404 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 432 of file client.cpp.
|
finalvirtual |
List in-progress multipart uploads in a bucket Performs a ListMultipartUploads S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html.
Implements s3api::Client.
Definition at line 587 of file client.cpp.
|
finalvirtual |
List the parts that have been uploaded for a specific multipart upload. Performs a ListParts S3 Action. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html.
Implements s3api::Client.
Definition at line 573 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 182 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 233 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 265 of file client.cpp.
|
finalvirtual |
Implements s3api::Client.
Definition at line 156 of file client.cpp.
|
finalvirtual |
Upload a part in a multipart upload sequence. Performs an UploadPart S3 Action. Returns ETag value which you must include in the subsequent request to complete the multipart upload. For details see https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html.
Implements s3api::Client.
Definition at line 523 of file client.cpp.