6#include "azure/storage/files/datalake/datalake_file_system_client.hpp"
7#include "azure/storage/files/datalake/datalake_path_client.hpp"
9#include <azure/storage/blobs/blob_lease_client.hpp>
13namespace Azure {
namespace Storage {
namespace Files {
namespace DataLake {
28 : m_blobLeaseClient(std::move(pathClient.m_blobClient), std::move(leaseId))
39 : m_blobLeaseClient(std::move(fileSystemClient.m_blobContainerClient), std::move(leaseId))
50 return Blobs::BlobLeaseClient::CreateUniqueLeaseId();
63 std::string
GetLeaseId() {
return m_blobLeaseClient.GetLeaseId(); }
76 Azure::Response<Models::AcquireLeaseResult>
Acquire(
77 std::chrono::seconds duration,
78 const AcquireLeaseOptions& options = AcquireLeaseOptions(),
79 const Azure::Core::Context& context = Azure::Core::Context())
81 return m_blobLeaseClient.Acquire(duration, options, context);
91 Azure::Response<Models::RenewLeaseResult>
Renew(
92 const RenewLeaseOptions& options = RenewLeaseOptions(),
93 const Azure::Core::Context& context = Azure::Core::Context())
95 return m_blobLeaseClient.Renew(options, context);
105 Azure::Response<Models::ReleaseLeaseResult>
Release(
106 const ReleaseLeaseOptions& options = ReleaseLeaseOptions(),
107 const Azure::Core::Context& context = Azure::Core::Context())
109 return m_blobLeaseClient.Release(options, context);
121 Azure::Response<Models::ChangeLeaseResult>
Change(
122 const std::string& proposedLeaseId,
123 const ChangeLeaseOptions& options = ChangeLeaseOptions(),
124 const Azure::Core::Context& context = Azure::Core::Context())
126 return m_blobLeaseClient.Change(proposedLeaseId, options, context);
136 Azure::Response<Models::BreakLeaseResult>
Break(
137 const BreakLeaseOptions& options = BreakLeaseOptions(),
138 const Azure::Core::Context& context = Azure::Core::Context())
140 return m_blobLeaseClient.Break(options, context);
144 Blobs::BlobLeaseClient m_blobLeaseClient;
The DataLakeFileSystemClient allows you to manipulate Azure Storage DataLake files.
Definition datalake_file_system_client.hpp:28
DataLakeLeaseClient allows you to manipulate Azure Storage leases on filesystems and paths.
Definition datalake_lease_client.hpp:19
static std::string CreateUniqueLeaseId()
Gets a unique lease ID.
Definition datalake_lease_client.hpp:48
DataLakeLeaseClient(DataLakePathClient pathClient, std::string leaseId)
Initializes a new instance of the DataLakeLeaseClient.
Definition datalake_lease_client.hpp:27
std::string GetLeaseId()
Get lease ID of this lease client.
Definition datalake_lease_client.hpp:63
AZ_STORAGE_FILES_DATALAKE_DLLEXPORT static const std::chrono::seconds InfiniteLeaseDuration
A value representing infinite lease duration.
Definition datalake_lease_client.hpp:56
Azure::Response< Models::BreakLeaseResult > Break(const BreakLeaseOptions &options=BreakLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
Breaks the previously-acquired lease.
Definition datalake_lease_client.hpp:136
Azure::Response< Models::ChangeLeaseResult > Change(const std::string &proposedLeaseId, const ChangeLeaseOptions &options=ChangeLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
Changes the lease of an active lease.
Definition datalake_lease_client.hpp:121
Azure::Response< Models::ReleaseLeaseResult > Release(const ReleaseLeaseOptions &options=ReleaseLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
Releases the datalake path or datalake path container's previously-acquired lease.
Definition datalake_lease_client.hpp:105
DataLakeLeaseClient(DataLakeFileSystemClient fileSystemClient, std::string leaseId)
Initializes a new instance of the DataLakeLeaseClient.
Definition datalake_lease_client.hpp:38
Azure::Response< Models::AcquireLeaseResult > Acquire(std::chrono::seconds duration, const AcquireLeaseOptions &options=AcquireLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
Acquires a lease on the datalake path or datalake path container.
Definition datalake_lease_client.hpp:76
Azure::Response< Models::RenewLeaseResult > Renew(const RenewLeaseOptions &options=RenewLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
Renews the datalake path or datalake path container's previously-acquired lease.
Definition datalake_lease_client.hpp:91
The DataLakePathClient allows you to manipulate Azure Storage DataLake files.
Definition datalake_path_client.hpp:26