azure-storage-files-shares
|
9 #include <azure/core/internal/http/pipeline.hpp>
10 #include <azure/core/response.hpp>
11 #include <azure/storage/common/storage_credential.hpp>
13 #include "azure/storage/files/shares/protocol/share_rest_client.hpp"
14 #include "azure/storage/files/shares/share_client.hpp"
15 #include "azure/storage/files/shares/share_directory_client.hpp"
16 #include "azure/storage/files/shares/share_options.hpp"
17 #include "azure/storage/files/shares/share_responses.hpp"
19 namespace Azure {
namespace Storage {
namespace Files {
namespace Shares {
33 const std::string& connectionString,
34 const std::string& shareName,
35 const std::string& fileName,
45 const std::string& shareFileUrl,
46 std::shared_ptr<StorageSharedKeyCredential> credential,
56 const std::string& shareFileUrl,
64 std::string
GetUrl()
const {
return m_shareFileUrl.GetAbsoluteUrl(); }
85 Azure::Response<Models::CreateFileResult>
Create(
88 const Azure::Core::Context& context = Azure::Core::Context())
const;
97 Azure::Response<Models::DeleteFileResult>
Delete(
99 const Azure::Core::Context& context = Azure::Core::Context())
const;
110 const Azure::Core::Context& context = Azure::Core::Context())
const;
120 Azure::Response<Models::DownloadFileResult>
Download(
122 const Azure::Core::Context& context = Azure::Core::Context())
const;
136 Azure::Response<Models::DownloadFileToResult>
DownloadTo(
140 const Azure::Core::Context& context = Azure::Core::Context())
const;
152 Azure::Response<Models::DownloadFileToResult>
DownloadTo(
153 const std::string& fileName,
155 const Azure::Core::Context& context = Azure::Core::Context())
const;
168 Azure::Response<Models::UploadFileFromResult>
UploadFrom(
169 const uint8_t* buffer,
172 const Azure::Core::Context& context = Azure::Core::Context())
const;
184 Azure::Response<Models::UploadFileFromResult>
UploadFrom(
185 const std::string& fileName,
187 const Azure::Core::Context& context = Azure::Core::Context())
const;
203 std::string copySource,
205 const Azure::Core::Context& context = Azure::Core::Context())
const;
216 Azure::Response<Models::AbortFileCopyResult>
AbortCopy(
219 const Azure::Core::Context& context = Azure::Core::Context())
const;
230 const Azure::Core::Context& context = Azure::Core::Context())
const;
241 Azure::Response<Models::SetFilePropertiesResult>
SetProperties(
245 const Azure::Core::Context& context = Azure::Core::Context())
const;
256 Azure::Response<Models::SetFileMetadataResult>
SetMetadata(
257 Storage::Metadata metadata,
259 const Azure::Core::Context& context = Azure::Core::Context())
const;
269 Azure::Response<Models::UploadFileRangeResult>
UploadRange(
271 Azure::Core::IO::BodyStream& content,
273 const Azure::Core::Context& context = Azure::Core::Context())
const;
283 Azure::Response<Models::ClearFileRangeResult>
ClearRange(
287 const Azure::Core::Context& context = Azure::Core::Context())
const;
295 Azure::Response<Models::GetFileRangeListResult>
GetRangeList(
297 const Azure::Core::Context& context = Azure::Core::Context())
const;
308 std::string previousShareSnapshot,
310 const Azure::Core::Context& context = Azure::Core::Context())
const;
321 const Azure::Core::Context& context = Azure::Core::Context())
const;
332 const std::string& handleId,
334 const Azure::Core::Context& context = Azure::Core::Context())
const;
345 const Azure::Core::Context& context = Azure::Core::Context())
const;
358 int64_t destinationOffset,
359 const std::string& sourceUri,
360 const Azure::Core::Http::HttpRange& sourceRange,
362 const Azure::Core::Context& context = Azure::Core::Context())
const;
365 Azure::Core::Url m_shareFileUrl;
366 std::shared_ptr<Azure::Core::Http::_internal::HttpPipeline> m_pipeline;
369 Azure::Core::Url shareFileUrl,
370 std::shared_ptr<Azure::Core::Http::_internal::HttpPipeline> pipeline)
371 : m_shareFileUrl(std::move(shareFileUrl)), m_pipeline(std::move(pipeline))
375 friend class ShareClient;
376 friend class ShareDirectoryClient;
377 friend class ShareLeaseClient;
Azure::Response< Models::FileProperties > GetProperties(const GetFilePropertiesOptions &options=GetFilePropertiesOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Gets the properties of a file.
Definition: share_file_client.cpp:385
ForceCloseAllFileHandlesPagedResponse ForceCloseAllHandles(const ForceCloseAllFileHandlesOptions &options=ForceCloseAllFileHandlesOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Closes all handles opened on a file at the service.
Definition: share_file_client.cpp:620
Azure::Response< Models::CreateFileResult > Create(int64_t fileSize, const CreateFileOptions &options=CreateFileOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Creates the file.
Definition: share_file_client.cpp:104
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::SetProperties.
Definition: share_options.hpp:469
Azure::Response< Models::UploadFileRangeResult > UploadRange(int64_t offset, Azure::Core::IO::BodyStream &content, const UploadFileRangeOptions &options=UploadFileRangeOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Uploads some data to a range of the file.
Definition: share_file_client.cpp:477
Response type for Azure::Storage::Files::Shares::ShareFileClient::ListHandles.
Definition: share_responses.hpp:327
The SMB related properties of the file.
Definition: share_rest_client.hpp:75
StartFileCopyOperation StartCopy(std::string copySource, const StartFileCopyOptions &options=StartFileCopyOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Starts copy the file specified from source URI to the file this client points to.
Definition: share_file_client.cpp:309
std::string GetUrl() const
Gets the file's primary URL endpoint.
Definition: share_file_client.hpp:64
Response type for Azure::Storage::Files::Shares::ShareFileClient::ForceCloseAllHandles.
Definition: share_responses.hpp:348
Azure::Response< Models::UploadFileRangeFromUriResult > UploadRangeFromUri(int64_t destinationOffset, const std::string &sourceUri, const Azure::Core::Http::HttpRange &sourceRange, const UploadFileRangeFromUriOptions &options=UploadFileRangeFromUriOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Upload a range from the source URI to this file's specific range.
Definition: share_file_client.cpp:1084
Azure::Response< Models::SetFileMetadataResult > SetMetadata(Storage::Metadata metadata, const SetFileMetadataOptions &options=SetFileMetadataOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Sets the metadata of the file.
Definition: share_file_client.cpp:465
Azure::Response< Models::UploadFileFromResult > UploadFrom(const uint8_t *buffer, size_t bufferSize, const UploadFileFromOptions &options=UploadFileFromOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Creates a new file, or updates the content of an existing file. Updating an existing file overwrites ...
Definition: share_file_client.cpp:877
ShareFileClient(const std::string &shareFileUrl, std::shared_ptr< StorageSharedKeyCredential > credential, const ShareClientOptions &options=ShareClientOptions())
Initialize a new instance of ShareFileClient using shared key authentication.
Definition: share_file_client.cpp:48
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::DownloadTo.
Definition: share_options.hpp:615
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::GetRangeList.
Definition: share_options.hpp:555
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::ListHandles.
Definition: share_options.hpp:571
Azure::Response< Models::ClearFileRangeResult > ClearRange(int64_t offset, int64_t length, const ClearFileRangeOptions &options=ClearFileRangeOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Clears some range of data within the file.
Definition: share_file_client.cpp:500
Azure::Response< Models::DeleteFileResult > Delete(const DeleteFileOptions &options=DeleteFileOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Deletes the file.
Definition: share_file_client.cpp:187
Azure::Response< Models::GetFileRangeListResult > GetRangeList(const GetFileRangeListOptions &options=GetFileRangeListOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Gets the list of valid range from the file within specified range.
Definition: share_file_client.cpp:527
Azure::Response< Models::DownloadFileResult > Download(const DownloadFileOptions &options=DownloadFileOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Open a stream for the file's content, or a range of the file's content that can be used to download t...
Definition: share_file_client.cpp:221
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::ForceCloseAllHandles.
Definition: share_options.hpp:601
Azure::Response< Models::ForceCloseFileHandleResult > ForceCloseHandle(const std::string &handleId, const ForceCloseFileHandleOptions &options=ForceCloseFileHandleOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Closes a handle opened on a file at the service.
Definition: share_file_client.cpp:606
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::StartCopy.
Definition: share_options.hpp:402
Azure::Response< Models::DownloadFileToResult > DownloadTo(uint8_t *buffer, size_t bufferSize, const DownloadFileToOptions &options=DownloadFileToOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Downloads a file or a file range from the service to a memory buffer using parallel requests.
Definition: share_file_client.cpp:646
Azure::Response< Models::SetFilePropertiesResult > SetProperties(const Models::FileHttpHeaders &httpHeaders, const Models::FileSmbProperties &smbProperties, const SetFilePropertiesOptions &options=SetFilePropertiesOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Sets the properties of the file, or resize a file specifying NewSize in options.
Definition: share_file_client.cpp:395
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::UploadFrom.
Definition: share_options.hpp:649
static ShareFileClient CreateFromConnectionString(const std::string &connectionString, const std::string &shareName, const std::string &fileName, const ShareClientOptions &options=ShareClientOptions())
Create A ShareFileClient from connection string to manage a File Share File resource.
Definition: share_file_client.cpp:26
ShareFileClient WithShareSnapshot(const std::string &shareSnapshot) const
Initializes a new instance of the ShareFileClient class with an identical URL source but the specifie...
Definition: share_file_client.cpp:89
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::Download.
Definition: share_options.hpp:380
Definition: share_file_client.hpp:21
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::ForceCloseHandle.
Definition: share_options.hpp:593
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::Delete.
Definition: share_options.hpp:369
A long-running operation to copy a file.
Definition: share_responses.hpp:210
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::UploadRange.
Definition: share_options.hpp:502
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::AbortCopy.
Definition: share_options.hpp:447
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::Create.
Definition: share_options.hpp:337
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::UploadRangeFromUri.
Definition: share_options.hpp:533
Azure::Response< Models::DeleteFileResult > DeleteIfExists(const DeleteFileOptions &options=DeleteFileOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Deletes the file if it exists.
Definition: share_file_client.cpp:200
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::ClearRange.
Definition: share_options.hpp:521
Azure::Response< Models::GetFileRangeListResult > GetRangeListDiff(std::string previousShareSnapshot, const GetFileRangeListOptions &options=GetFileRangeListOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Gets the list of valid range from the file within specified range that have changed since previousSha...
Definition: share_file_client.cpp:553
Azure::Response< Models::AbortFileCopyResult > AbortCopy(std::string copyId, const AbortFileCopyOptions &options=AbortFileCopyOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Aborts copying the file specified with the copy ID.
Definition: share_file_client.cpp:373
Optional parameters for Azure::Storage::Files::Shares::ShareFileClient::GetProperties.
Definition: share_options.hpp:458
ListFileHandlesPagedResponse ListHandles(const ListFileHandlesOptions &options=ListFileHandlesOptions(), const Azure::Core::Context &context=Azure::Core::Context()) const
Returns a sequence of the open handles on a directory or a file. Enumerating the handles may make mul...
Definition: share_file_client.cpp:581
Client options used to initialize share clients.
Definition: share_options.hpp:22