azure-storage-files-shares
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Azure::Storage::Files::Shares::ShareLeaseClient Class Referencefinal

ShareLeaseClient allows you to manipulate Azure Storage leases on shares and files.

#include <share_lease_client.hpp>

Public Member Functions

 ShareLeaseClient (ShareFileClient fileClient, std::string leaseId)
 Initializes a new instance of the ShareLeaseClient. More...
 
const std::string & GetLeaseId ()
 Get lease ID of this lease client. More...
 
Azure::Response< Models::AcquireLeaseResultAcquire (std::chrono::seconds duration, const AcquireLeaseOptions &options=AcquireLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
 Acquires a lease on the file or share. More...
 
Azure::Response< Models::ReleaseLeaseResultRelease (const ReleaseLeaseOptions &options=ReleaseLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
 Releases the file or share's previously-acquired lease. More...
 
Azure::Response< Models::ChangeLeaseResultChange (const std::string &proposedLeaseId, const ChangeLeaseOptions &options=ChangeLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
 Changes the lease of an active lease. More...
 
Azure::Response< Models::BreakLeaseResultBreak (const BreakLeaseOptions &options=BreakLeaseOptions(), const Azure::Core::Context &context=Azure::Core::Context())
 Breaks the previously-acquired lease. More...
 

Static Public Member Functions

static std::string CreateUniqueLeaseId ()
 Gets a unique lease ID. More...
 

Static Public Attributes

static AZ_STORAGE_FILES_SHARES_DLLEXPORT const std::chrono::seconds InfiniteLeaseDuration {-1}
 A value representing infinite lease duration.
 

Constructor & Destructor Documentation

◆ ShareLeaseClient()

Azure::Storage::Files::Shares::ShareLeaseClient::ShareLeaseClient ( ShareFileClient  fileClient,
std::string  leaseId 
)
inlineexplicit
Parameters
fileClientA ShareFileClient representing the file being leased.
leaseIdA lease ID. This is not required for break operation.

Member Function Documentation

◆ Acquire()

Azure::Response< Models::AcquireLeaseResult > Azure::Storage::Files::Shares::ShareLeaseClient::Acquire ( std::chrono::seconds  duration,
const AcquireLeaseOptions options = AcquireLeaseOptions(),
const Azure::Core::Context &  context = Azure::Core::Context() 
)
Parameters
durationSpecifies the duration of the lease, in seconds, or InfiniteLeaseDuration for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.
optionsOptional parameters to execute this function.
contextContext for cancelling long running operations.
Returns
An AcquireLeaseResult describing the lease.

◆ Break()

Azure::Response< Models::BreakLeaseResult > Azure::Storage::Files::Shares::ShareLeaseClient::Break ( const BreakLeaseOptions options = BreakLeaseOptions(),
const Azure::Core::Context &  context = Azure::Core::Context() 
)
Parameters
optionsOptional parameters to execute this function.
contextContext for cancelling long running operations.
Returns
A BreakLeaseResult describing the broken lease.

◆ Change()

Azure::Response< Models::ChangeLeaseResult > Azure::Storage::Files::Shares::ShareLeaseClient::Change ( const std::string &  proposedLeaseId,
const ChangeLeaseOptions options = ChangeLeaseOptions(),
const Azure::Core::Context &  context = Azure::Core::Context() 
)
Parameters
proposedLeaseIdProposed lease ID, in a GUID string format.
optionsOptional parameters to execute this function.
contextContext for cancelling long running operations.
Returns
A ChangeLeaseResult describing the updated lease.
Remarks
The current ShareLeaseClient becomes invalid if this operation succeeds.

◆ CreateUniqueLeaseId()

std::string Azure::Storage::Files::Shares::ShareLeaseClient::CreateUniqueLeaseId ( )
static
Returns
A unique lease ID.

◆ GetLeaseId()

const std::string& Azure::Storage::Files::Shares::ShareLeaseClient::GetLeaseId ( )
inline
Returns
Lease ID of this lease client.

◆ Release()

Azure::Response< Models::ReleaseLeaseResult > Azure::Storage::Files::Shares::ShareLeaseClient::Release ( const ReleaseLeaseOptions options = ReleaseLeaseOptions(),
const Azure::Core::Context &  context = Azure::Core::Context() 
)
Parameters
optionsOptional parameters to execute this function.
contextContext for cancelling long running operations.
Returns
A ReleaseLeaseResult describing the updated share or file.

The documentation for this class was generated from the following files: