6#include "azure/storage/blobs/blob_client.hpp"
12namespace Azure {
namespace Storage {
namespace Blobs {
14 class BlobLeaseClient;
15 class BlobContainerBatch;
34 const std::string& connectionString,
35 const std::string& blobContainerName,
50 const std::string& blobContainerUrl,
51 std::shared_ptr<StorageSharedKeyCredential> credential,
65 const std::string& blobContainerUrl,
66 std::shared_ptr<const Core::Credentials::TokenCredential> credential,
80 const std::string& blobContainerUrl,
124 std::string
GetUrl()
const {
return m_blobContainerUrl.GetAbsoluteUrl(); }
134 Azure::Response<Models::CreateBlobContainerResult>
Create(
136 const Azure::Core::Context& context = Azure::Core::Context())
const;
150 const Azure::Core::Context& context = Azure::Core::Context())
const;
160 Azure::Response<Models::DeleteBlobContainerResult>
Delete(
162 const Azure::Core::Context& context = Azure::Core::Context())
const;
175 const Azure::Core::Context& context = Azure::Core::Context())
const;
187 const Azure::Core::Context& context = Azure::Core::Context())
const;
197 Azure::Response<Models::SetBlobContainerMetadataResult>
SetMetadata(
200 const Azure::Core::Context& context = Azure::Core::Context())
const;
213 const Azure::Core::Context& context = Azure::Core::Context())
const;
228 const std::string& delimiter,
230 const Azure::Core::Context& context = Azure::Core::Context())
const;
242 const Azure::Core::Context& context = Azure::Core::Context())
const;
254 const Azure::Core::Context& context = Azure::Core::Context())
const;
267 const std::string& blobName,
269 const Azure::Core::Context& context = Azure::Core::Context())
const;
283 const std::string& blobName,
284 Azure::Core::IO::BodyStream& content,
286 const Azure::Core::Context& context = Azure::Core::Context())
const;
302 const std::string& tagFilterSqlExpression,
304 const Azure::Core::Context& context = Azure::Core::Context())
const;
327 const Core::Context& context = Core::Context())
const;
338 const Azure::Core::Context& context = Azure::Core::Context())
const;
341 Azure::Core::Url m_blobContainerUrl;
342 std::shared_ptr<Azure::Core::Http::_internal::HttpPipeline> m_pipeline;
343 Azure::Nullable<EncryptionKey> m_customerProvidedKey;
344 Azure::Nullable<std::string> m_encryptionScope;
346 std::shared_ptr<Azure::Core::Http::_internal::HttpPipeline> m_batchRequestPipeline;
347 std::shared_ptr<Azure::Core::Http::_internal::HttpPipeline> m_batchSubrequestPipeline;
352 friend class Files::DataLake::DataLakeFileSystemClient;
The AppendBlobClient allows you to manipulate Azure Storage append blobs.
Definition append_blob_client.hpp:21
The BlobClient allows you to manipulate Azure Storage blobs.
Definition blob_client.hpp:39
A batch object allows you to batch multiple operations in a single request via Azure::Storage::Blobs:...
Definition blob_batch.hpp:149
Definition blob_container_client.hpp:21
ListBlobsByHierarchyPagedResponse ListBlobsByHierarchy(const std::string &delimiter, const ListBlobsOptions &options=ListBlobsOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Returns a collection of blobs in this container. Enumerating the blobs may make multiple requests to ...
PageBlobClient GetPageBlobClient(const std::string &blobName) const
Create a new PageBlobClient object by appending blobName to the end of URL. The new PageBlobClient us...
Azure::Response< Models::DeleteBlobResult > DeleteBlob(const std::string &blobName, const DeleteBlobOptions &options=DeleteBlobOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Marks the specified blob or snapshot for deletion. The blob is later deleted during garbage collectio...
Response< Models::SubmitBlobBatchResult > SubmitBatch(const BlobContainerBatch &batch, const SubmitBlobBatchOptions &options=SubmitBlobBatchOptions(), const Core::Context &context=Core::Context()) const
Submits a batch of subrequests.
FindBlobsByTagsPagedResponse FindBlobsByTags(const std::string &tagFilterSqlExpression, const FindBlobsByTagsOptions &options=FindBlobsByTagsOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
The Filter Blobs operation enables callers to list blobs in a container whose tags match a given sear...
std::string GetUrl() const
Gets the container's primary URL endpoint.
Definition blob_container_client.hpp:124
Azure::Response< BlockBlobClient > UploadBlob(const std::string &blobName, Azure::Core::IO::BodyStream &content, const UploadBlockBlobOptions &options=UploadBlockBlobOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Creates a new block blob under this container. For partial block blob updates and other advanced feat...
BlobContainerClient(const std::string &blobContainerUrl, std::shared_ptr< const Core::Credentials::TokenCredential > credential, const BlobClientOptions &options=BlobClientOptions())
Initialize a new instance of BlobContainerClient.
static BlobContainerClient CreateFromConnectionString(const std::string &connectionString, const std::string &blobContainerName, const BlobClientOptions &options=BlobClientOptions())
Initialize a new instance of BlobContainerClient.
AppendBlobClient GetAppendBlobClient(const std::string &blobName) const
Create a new AppendBlobClient object by appending blobName to the end of URL. The new AppendBlobClien...
Azure::Response< Models::CreateBlobContainerResult > Create(const CreateBlobContainerOptions &options=CreateBlobContainerOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Creates a new container under the specified account. If the container with the same name already exis...
BlobContainerBatch CreateBatch() const
Creates a new batch object to collect subrequests that can be submitted together via SubmitBatch.
ListBlobsPagedResponse ListBlobs(const ListBlobsOptions &options=ListBlobsOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Returns a sequence of blobs in this container. Enumerating the blobs may make multiple requests to th...
Azure::Response< Models::AccountInfo > GetAccountInfo(const GetAccountInfoOptions &options=GetAccountInfoOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Returns the sku name and account kind for the specified account.
Azure::Response< Models::SetBlobContainerAccessPolicyResult > SetAccessPolicy(const SetBlobContainerAccessPolicyOptions &options=SetBlobContainerAccessPolicyOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Sets the permissions for the specified container. The permissions indicate whether blob container dat...
Azure::Response< Models::CreateBlobContainerResult > CreateIfNotExists(const CreateBlobContainerOptions &options=CreateBlobContainerOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Creates a new container under the specified account. If the container with the same name already exis...
Azure::Response< Models::DeleteBlobContainerResult > DeleteIfExists(const DeleteBlobContainerOptions &options=DeleteBlobContainerOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Marks the specified container for deletion if it exists. The container and any blobs contained within...
Azure::Response< Models::BlobContainerAccessPolicy > GetAccessPolicy(const GetBlobContainerAccessPolicyOptions &options=GetBlobContainerAccessPolicyOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Gets the permissions for this container. The permissions indicate whether container data may be acces...
BlobContainerClient(const std::string &blobContainerUrl, std::shared_ptr< StorageSharedKeyCredential > credential, const BlobClientOptions &options=BlobClientOptions())
Initialize a new instance of BlobContainerClient.
Azure::Response< Models::BlobContainerProperties > GetProperties(const GetBlobContainerPropertiesOptions &options=GetBlobContainerPropertiesOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Returns all user-defined metadata and system properties for the specified container....
BlockBlobClient GetBlockBlobClient(const std::string &blobName) const
Create a new BlockBlobClient object by appending blobName to the end of URL. The new BlockBlobClient ...
BlobContainerClient(const std::string &blobContainerUrl, const BlobClientOptions &options=BlobClientOptions())
Initialize a new instance of BlobContainerClient.
BlobClient GetBlobClient(const std::string &blobName) const
Create a new BlobClient object by appending blobName to the end of URL. The new BlobClient uses the s...
Azure::Response< Models::SetBlobContainerMetadataResult > SetMetadata(Metadata metadata, SetBlobContainerMetadataOptions options=SetBlobContainerMetadataOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Sets one or more user-defined name-value pairs for the specified container.
Azure::Response< Models::DeleteBlobContainerResult > Delete(const DeleteBlobContainerOptions &options=DeleteBlobContainerOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Marks the specified container for deletion. The container and any blobs contained within it are later...
BlobLeaseClient allows you to manipulate Azure Storage leases on containers and blobs.
Definition blob_lease_client.hpp:18
Definition blob_service_client.hpp:22
The BlockBlobClient allows you to manipulate Azure Storage block blobs.
Definition block_blob_client.hpp:31
Response type for Azure::Storage::Blobs::BlobServiceClient::FindBlobsByTags.
Definition blob_responses.hpp:297
Response type for Azure::Storage::Blobs::BlobContainerClient::ListBlobsByHierarchy.
Definition blob_responses.hpp:361
Response type for Azure::Storage::Blobs::BlobContainerClient::ListBlobs.
Definition blob_responses.hpp:325
Definition page_blob_client.hpp:23
Client options used to initialize all kinds of blob clients.
Definition blob_options.hpp:175
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::Create.
Definition blob_options.hpp:310
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::Delete.
Definition blob_options.hpp:338
Optional parameters for Azure::Storage::Blobs::BlobClient::Delete.
Definition blob_options.hpp:741
Optional parameters for Azure::Storage::Blobs::BlobServiceClient::GetAccountInfo.
Definition blob_options.hpp:277
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::GetAccessPolicy.
Definition blob_options.hpp:430
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::GetProperties.
Definition blob_options.hpp:368
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::ListBlobs and Azure::Storage::Blo...
Definition blob_options.hpp:398
Optional parameters for Azure::Storage::Blobs::BlobContainerClient::SetAccessPolicy.
Definition blob_options.hpp:441
Optional parameters for Azure::Storage::Blobs::BlobServiceClient::SubmitBatch.
Definition blob_options.hpp:1630
Optional parameters for Azure::Storage::Blobs::BlockBlobClient::Upload.
Definition blob_options.hpp:856