From 273d411838656df5cf56ed9d1e8b4f6790912b67 Mon Sep 17 00:00:00 2001 From: JinmingHu Date: Sat, 8 May 2021 12:02:23 +0800 Subject: [PATCH] add some coments (#2235) --- .../files/datalake/datalake_options.hpp | 245 ++++++++---------- .../files/datalake/datalake_responses.hpp | 38 ++- .../storage/files/shares/share_responses.hpp | 82 +++++- 3 files changed, 229 insertions(+), 136 deletions(-) diff --git a/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_options.hpp b/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_options.hpp index 76a175a66..5099b4b49 100644 --- a/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_options.hpp +++ b/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_options.hpp @@ -67,29 +67,27 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct ListFileSystemsOptions { /** - * @brief Filters results to filesystems within the specified prefix. + * Filters results to filesystems within the specified prefix. */ Azure::Nullable Prefix; /** - * @brief The number of filesystems returned with each invocation is - * limited. If the number of filesystems to be returned exceeds - * this limit, a continuation token is returned in the response - * header x-ms-continuation. When a continuation token is returned - * in the response, it must be specified in a subsequent invocation - * of the list operation to continue listing the filesystems. + * The number of filesystems returned with each invocation is limited. If the number of + * filesystems to be returned exceeds this limit, a continuation token is returned in the + * response header x-ms-continuation. When a continuation token is returned in the response, it + * must be specified in a subsequent invocation of the list operation to continue listing the + * filesystems. */ Azure::Nullable ContinuationToken; /** - * @brief An optional value that specifies the maximum number of items to - * return. If omitted or greater than 5,000, the response will - * include up to 5,000 items. + * An optional value that specifies the maximum number of items to return. If omitted or greater + * than 5,000, the response will include up to 5,000 items. */ Azure::Nullable PageSizeHint; /** - * @brief Specifies that the filesystem's metadata be returned. + * Specifies that the filesystem's metadata be returned. */ Models::ListFileSystemsIncludeFlags Include = Models::ListFileSystemsIncludeFlags::None; }; @@ -100,14 +98,13 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct CreateFileSystemOptions { /** - * @brief User-defined metadata to be stored with the filesystem. - * Note that the string may only contain ASCII characters in the - * ISO-8859-1 character set. + * User-defined metadata to be stored with the filesystem. Note that the string may only contain + * ASCII characters in the ISO-8859-1 character set. */ Storage::Metadata Metadata; /** - * @brief The public access type of the file system. + * The public access type of the file system. */ Models::PublicAccessType AccessType = Models::PublicAccessType::None; }; @@ -118,7 +115,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct DeleteFileSystemOptions { /** - * @brief Specify the access condition for the file system. + * Specify the access condition for the file system. */ FileSystemAccessConditions AccessConditions; }; @@ -130,7 +127,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct GetFileSystemPropertiesOptions { /** - * @brief Specify the lease access conditions. + * Specify the lease access conditions. */ LeaseAccessConditions AccessConditions; }; @@ -141,7 +138,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetFileSystemMetadataOptions { /** - * @brief Specify the access condition for the file system. + * Specify the access condition for the file system. */ FileSystemAccessConditions AccessConditions; }; @@ -152,30 +149,25 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct ListPathsOptions { /** - * @brief Valid only when Hierarchical Namespace is enabled for the account. - * If "true", the user identity values returned in the owner and group - * fields of each list entry will be transformed from Azure Active Directory - * Object IDs to User Principal Names. If "false", the values will be - * returned as Azure Active Directory Object IDs. The default value is false. - * Note that group and application Object IDs are not translated because they - * do not have unique friendly names. + * Valid only when Hierarchical Namespace is enabled for the account. If "true", the user + * identity values returned in the owner and group fields of each list entry will be transformed + * from Azure Active Directory Object IDs to User Principal Names. If "false", the values will + * be returned as Azure Active Directory Object IDs. The default value is false. Note that group + * and application Object IDs are not translated because they do not have unique friendly names. */ Azure::Nullable UserPrincipalName; /** - * @brief The number of paths returned with each invocation is - * limited. If the number of paths to be returned exceeds - * this limit, a continuation token is returned in the response - * header x-ms-continuation. When a continuation token is returned - * in the response, it must be specified in a subsequent invocation - * of the list operation to continue listing the paths. + * The number of paths returned with each invocation is limited. If the number of paths to be + * returned exceeds this limit, a continuation token is returned in the response header + * x-ms-continuation. When a continuation token is returned in the response, it must be + * specified in a subsequent invocation of the list operation to continue listing the paths. */ Azure::Nullable ContinuationToken; /** - * @brief An optional value that specifies the maximum number of items to - * return. If omitted or greater than 5,000, the response will - * include up to 5,000 items. + * An optional value that specifies the maximum number of items to return. If omitted or greater + * than 5,000, the response will include up to 5,000 items. */ Azure::Nullable PageSizeHint; }; @@ -187,7 +179,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct GetFileSystemAccessPolicyOptions { /** - * @brief Optional conditions that must be met to perform this operation. + * Optional conditions that must be met to perform this operation. */ LeaseAccessConditions AccessConditions; }; @@ -199,19 +191,18 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetFileSystemAccessPolicyOptions { /** - * @brief Specifies whether data in the file system may be accessed publicly and the level - * of access. + * Specifies whether data in the file system may be accessed publicly and the level of access. */ Models::PublicAccessType AccessType = Models::PublicAccessType::None; /** - * @brief Stored access policies that you can use to provide fine grained control over - * file system permissions. + * Stored access policies that you can use to provide fine grained control over file system + * permissions. */ std::vector SignedIdentifiers; /** - * @brief Optional conditions that must be met to perform this operation. + * Optional conditions that must be met to perform this operation. */ FileSystemAccessConditions AccessConditions; }; @@ -226,18 +217,18 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct RenameDirectoryOptions { /** - * @brief If not specified, the source's file system is used. Otherwise, rename to destination - * file system. + * If not specified, the source's file system is used. Otherwise, rename to destination file + * system. */ Azure::Nullable DestinationFileSystem; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; /** - * @brief The access condition for source path. + * The access condition for source path. */ PathAccessConditions SourceAccessConditions; }; @@ -248,12 +239,12 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct AppendFileOptions { /** - * @brief Specify the transactional hash for the body, to be validated by the service. + * Specify the transactional hash for the body, to be validated by the service. */ Azure::Nullable TransactionalContentHash; /** - * @brief Specify the lease access conditions. + * Specify the lease access conditions. */ LeaseAccessConditions AccessConditions; }; @@ -264,44 +255,43 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct FlushFileOptions { /** - * @brief If "true", uncommitted data is retained after the flush operation completes; - * otherwise, the uncommitted data is deleted after the flush operation. The - * default is false. Data at offsets less than the specified position are - * written to the file when flush succeeds, but this optional parameter allows - * data after the flush position to be retained for a future flush operation. + * If "true", uncommitted data is retained after the flush operation completes; otherwise, the + * uncommitted data is deleted after the flush operation. The default is false. Data at + * offsets less than the specified position are written to the file when flush succeeds, but + * this optional parameter allows data after the flush position to be retained for a future + * flush operation. */ Azure::Nullable RetainUncommittedData; /** - * @brief Azure Storage Events allow applications to receive notifications when files - * change. When Azure Storage Events are enabled, a file changed event is raised. - * This event has a property indicating whether this is the final change to distinguish - * the difference between an intermediate flush to a file stream and the final close of - * a file stream. The close query parameter is valid only when the action is "flush" - * and change notifications are enabled. If the value of close is "true" and the - * flush operation completes successfully, the service raises a file change notification - * with a property indicating that this is the final update (the file stream has been - * closed). If "false" a change notification is raised indicating the file has changed. - * The default is false. This query parameter is set to true by the Hadoop ABFS driver to - * indicate that the file stream has been closed." + * Azure Storage Events allow applications to receive notifications when files change. When + * Azure Storage Events are enabled, a file changed event is raised. This event has a property + * indicating whether this is the final change to distinguish the difference between an + * intermediate flush to a file stream and the final close of a file stream. The close query + * parameter is valid only when the action is "flush" and change notifications are enabled. If + * the value of close is "true" and the flush operation completes successfully, the service + * raises a file change notification with a property indicating that this is the final update + * (the file stream has been closed). If "false" a change notification is raised indicating the + * file has changed. The default is false. This query parameter is set to true by the Hadoop + * ABFS driver to indicate that the file stream has been closed." */ Azure::Nullable Close; /** - * @brief The service stores this value and is returned for "Read & Get Properties" operations. - * If this property is not specified on the request, then the property will be cleared - * for the file. Subsequent calls to "Read & Get Properties" will not return this - * property unless it is explicitly set on that file again. + * The service stores this value and is returned for "Read & Get Properties" operations. If this + * property is not specified on the request, then the property will be cleared for the file. + * Subsequent calls to "Read & Get Properties" will not return this property unless it is + * explicitly set on that file again. */ Azure::Nullable ContentHash; /** - * @brief Specify the http headers for this path. + * Specify the http headers for this path. */ Models::PathHttpHeaders HttpHeaders; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -313,17 +303,17 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetPathAccessControlListOptions { /** - * @brief The owner of the path or directory. + * The owner of the path or directory. */ Azure::Nullable Owner; /** - * @brief The owning group of the path or directory. + * The owning group of the path or directory. */ Azure::Nullable Group; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -334,17 +324,17 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetPathPermissionsOptions { /** - * @brief The owner of the path or directory. + * The owner of the path or directory. */ Azure::Nullable Owner; /** - * @brief The owning group of the path or directory. + * The owning group of the path or directory. */ Azure::Nullable Group; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -355,7 +345,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetPathHttpHeadersOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -366,7 +356,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetPathMetadataOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -380,43 +370,40 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct CreatePathOptions { /** - * @brief Specify the http headers for this path. + * Specify the http headers for this path. */ Models::PathHttpHeaders HttpHeaders; /** - * @brief User-defined metadata to be stored with the path. Note that the string may only - * contain ASCII characters in the ISO-8859-1 character set. If the filesystem exists, - * any metadata not included in the list will be removed. All metadata are removed - * if the header is omitted. To merge new and existing metadata, first get all - * existing metadata and the current E-Tag, then make a conditional request with the - * E-Tag and include values for all metadata. + * User-defined metadata to be stored with the path. Note that the string may only contain ASCII + * characters in the ISO-8859-1 character set. If the filesystem exists, any metadata not + * included in the list will be removed. All metadata are removed if the header is omitted. To + * merge new and existing metadata, first get all existing metadata and the current E-Tag, then + * make a conditional request with the E-Tag and include values for all metadata. */ Storage::Metadata Metadata; /** - * @brief Only valid if Hierarchical Namespace is enabled for the account. When creating - * a file or directory and the parent folder does not have a default ACL, the umask - * restricts the permissions of the file or directory to be created. The resulting - * permission is given by p bitwise and not u, where p is the permission and u is - * the umask. For example, if p is 0777 and u is 0057, then the resulting permission - * is 0720. The default permission is 0777 for a directory and 0666 for a file. - * The default umask is 0027. The umask must be specified in 4-digit octal - * notation (e.g. 0766). + * Only valid if Hierarchical Namespace is enabled for the account. When creating a file or + * directory and the parent folder does not have a default ACL, the umask restricts the + * permissions of the file or directory to be created. The resulting permission is given by p + * bitwise and not u, where p is the permission and u is the umask. For example, if p is 0777 + * and u is 0057, then the resulting permission is 0720. The default permission is 0777 for a + * directory and 0666 for a file. The default umask is 0027. The umask must be specified in + * 4-digit octal notation (e.g. 0766). */ Azure::Nullable Umask; /** - * @brief only valid if Hierarchical Namespace is enabled for the account. Sets POSIX - * access permissions for the file owner, the file owning group, and others. - * Each class may be granted read, write, or execute permission. - * The sticky bit is also supported. Both symbolic (rwxrw-rw-) and 4-digit octal - * notation (e.g. 0766) are supported. + * Only valid if Hierarchical Namespace is enabled for the account. Sets POSIX access + * permissions for the file owner, the file owning group, and others. Each class may be granted + * read, write, or execute permission. The sticky bit is also supported. Both symbolic + * (rwxrw-rw-) and 4-digit octal notation (e.g. 0766) are supported. */ Azure::Nullable Permissions; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -430,14 +417,13 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct DeletePathOptions { /** - * @brief Required and valid only when the resource is a directory. If "true", all paths beneath - * the directory will be deleted. If "false" and the directory is non-empty, an error - * occurs. + * Required and valid only when the resource is a directory. If "true", all paths beneath the + * directory will be deleted. If "false" and the directory is non-empty, an error occurs. */ Azure::Nullable Recursive; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -451,7 +437,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct GetPathPropertiesOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -463,7 +449,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct GetPathAccessControlListOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -477,17 +463,17 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct DownloadFileOptions { /** - * @brief Specify the range of the resource to be retrieved. + * Specify the range of the resource to be retrieved. */ Azure::Nullable Range; /** - * @brief The hash algorithm used to calculate the hash for the returned content. + * The hash algorithm used to calculate the hash for the returned content. */ Azure::Nullable RangeHashAlgorithm; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -498,18 +484,18 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct RenameFileOptions { /** - * @brief If not specified, the source's file system is used. Otherwise, rename to destination - * file system. + * If not specified, the source's file system is used. Otherwise, rename to destination file + * system. */ Azure::Nullable DestinationFileSystem; /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; /** - * @brief The access condition for source path. + * The access condition for source path. */ PathAccessConditions SourceAccessConditions; }; @@ -520,7 +506,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct DeleteFileOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -533,7 +519,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct DeleteDirectoryOptions { /** - * @brief Specify the access condition for the path. + * Specify the access condition for the path. */ PathAccessConditions AccessConditions; }; @@ -544,24 +530,23 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct SetPathAccessControlListRecursiveOptions { /** - * @brief When performing setAccessControlRecursive on a directory, the number of paths that - * are processed with each invocation is limited. If the number of paths to be processed - * exceeds this limit, a continuation token is returned in this response header. When a - * continuation token is returned in the response, it must be specified in a subsequent - * invocation of the setAccessControlRecursive operation to continue the - * setAccessControlRecursive operation on the directory. + * When performing setAccessControlRecursive on a directory, the number of paths that are + * processed with each invocation is limited. If the number of paths to be processed exceeds + * this limit, a continuation token is returned in this response header. When a continuation + * token is returned in the response, it must be specified in a subsequent invocation of the + * setAccessControlRecursive operation to continue the setAccessControlRecursive operation on + * the directory. */ Azure::Nullable ContinuationToken; /** - * @brief It specifies the maximum number of files or directories on which the acl change will - * be applied. If omitted or greater than 2,000, the request will process up to 2,000 - * items. + * It specifies the maximum number of files or directories on which the acl change will be + * applied. If omitted or greater than 2,000, the request will process up to 2,000 items. */ Azure::Nullable PageSizeHint; /** - * @brief Optional. If set to false, the operation will terminate quickly on encountering user + * Optional. If set to false, the operation will terminate quickly on encountering user * errors (4XX). If true, the operation will ignore user errors and proceed with the operation * on other sub-entities of the directory. Continuation token will only be returned when * ContinueOnFailure is true in case of user errors. If not set the default value is false for @@ -583,34 +568,34 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct UploadFileFromOptions { /** - * @brief The standard HTTP header system properties to set. + * The standard HTTP header system properties to set. */ Models::PathHttpHeaders HttpHeaders; /** - * @brief Name-value pairs associated with the blob as metadata. + * Name-value pairs associated with the blob as metadata. */ Storage::Metadata Metadata; /** - * @brief Options for parallel transfer. + * Options for parallel transfer. */ struct { /** - * @brief File smaller than this will be uploaded with a single upload operation. This value + * File smaller than this will be uploaded with a single upload operation. This value * cannot be larger than 5000 MiB. */ int64_t SingleUploadThreshold = 256 * 1024 * 1024; /** - * @brief The maximum number of bytes in a single request. This value cannot be larger than + * The maximum number of bytes in a single request. This value cannot be larger than * 4000 MiB. */ Azure::Nullable ChunkSize; /** - * @brief The maximum number of threads that may be used in a parallel transfer. + * The maximum number of threads that may be used in a parallel transfer. */ int Concurrency = 5; } TransferOptions; @@ -624,14 +609,14 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { struct ScheduleFileDeletionOptions { /** - * @brief The expiry time from the specified origin. Only work if ExpiryOrigin is + * The expiry time from the specified origin. Only work if ExpiryOrigin is * ScheduleFileExpiryOriginType::RelativeToCreation or * ScheduleFileExpiryOriginType::RelativeToNow. */ Azure::Nullable TimeToExpire; /** - * @brief The expiry time in RFC1123 format. Only work if ExpiryOrigin is + * The expiry time in RFC1123 format. Only work if ExpiryOrigin is * ScheduleFileExpiryOriginType::Absolute. */ Azure::Nullable ExpiresOn; diff --git a/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_responses.hpp b/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_responses.hpp index 7c0515f21..de70922c7 100644 --- a/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_responses.hpp +++ b/sdk/storage/azure-storage-files-datalake/inc/azure/storage/files/datalake/datalake_responses.hpp @@ -106,7 +106,7 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { * The signed identifiers of the file system. */ std::vector SignedIdentifiers; - }; // struct FileSystemAccessPolicy + }; using SetFileSystemAccessPolicyResult = Blobs::Models::SetBlobContainerAccessPolicyResult; @@ -665,11 +665,24 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { } // namespace Models + /** + * @brief Response type for + * #Azure::Storage::Files::DataLake::DataLakeServiceClient::ListFileSystems. + */ class ListFileSystemsPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Service endpoint. + */ std::string ServiceEndpoint; + /** + * File system name prefix that's used to filter the result. + */ std::string Prefix; + /** + * File system items. + */ std::vector FileSystems; private: @@ -682,8 +695,15 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { friend class PagedResponse; }; + /** + * @brief Response type for #Azure::Storage::Files::DataLake::DataLakeFileSystemClient::ListPaths + * and #Azure::Storage::Files::DataLake::DataLakeDirectoryClient::ListPaths. + */ class ListPathsPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Path items. + */ std::vector Paths; private: @@ -697,12 +717,28 @@ namespace Azure { namespace Storage { namespace Files { namespace DataLake { friend class PagedResponse; }; + /** + * @brief Response type for + * #Azure::Storage::Files::DataLake::DataLakePathClient::SetAccessControlListRecursive. + */ class SetPathAccessControlListRecursivePagedResponse : public Azure::Core::PagedResponse { public: + /** + * Number of directories where Access Control List has been updated successfully. + */ int32_t NumberOfSuccessfulDirectories = 0; + /** + * Number of files where Access Control List has been updated successfully. + */ int32_t NumberOfSuccessfulFiles = 0; + /** + * Number of paths where Access Control List update has failed. + */ int32_t NumberOfFailures = 0; + /** + * A collection of path entries that failed to update ACL. + */ std::vector FailedEntries; private: diff --git a/sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/share_responses.hpp b/sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/share_responses.hpp index 0f695e6f8..e495cf1b5 100644 --- a/sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/share_responses.hpp +++ b/sdk/storage/azure-storage-files-shares/inc/azure/storage/files/shares/share_responses.hpp @@ -204,8 +204,17 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { } // namespace Models + /** + * @brief A long-running operation to copy a file. + */ class StartFileCopyOperation : public Azure::Core::Operation { public: + /** + * @brief Get the #Azure::Storage::Files::Shares::Models::FileProperties object which includes + * the latest copy information. + * + * @return An #Azure::Storage::Files::Shares::Models::FileProperties object. + */ Models::FileProperties Value() const override { return m_pollResult; } StartFileCopyOperation() = default; @@ -230,11 +239,6 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { std::chrono::milliseconds period, Azure::Core::Context& context) override; - /** - * @brief Get the raw HTTP response. - * @return A pointer to #Azure::Core::Http::RawResponse. - * @note Does not give up ownership of the RawResponse. - */ const Azure::Core::Http::RawResponse& GetRawResponseInternal() const override { return *m_rawResponse; @@ -246,10 +250,22 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class ShareFileClient; }; + /** + * @brief Response type for #Azure::Storage::Files::Shares::ShareServiceClient::ListShares. + */ class ListSharesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Service endpoint. + */ std::string ServiceEndpoint; + /** + * Share name prefix that's used to filter the result. + */ std::string Prefix; + /** + * File share items. + */ std::vector Shares; private: @@ -262,15 +278,40 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class PagedResponse; }; + /** + * @brief Response type for + * #Azure::Storage::Files::Shares::ShareDirectoryClient::ListFilesAndDirectories. + */ class ListFilesAndDirectoriesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Service endpoint. + */ std::string ServiceEndpoint; + /** + * Name of the file share. + */ std::string ShareName; + /** + * The share snapshot for the list operation. + */ std::string ShareSnapshot; + /** + * Directory path for the list operation. + */ std::string DirectoryPath; + /** + * Name prefix that's used to filter the result. + */ std::string Prefix; + /** + * Directory items. + */ std::vector Directories; + /** + * File items. + */ std::vector Files; private: @@ -283,9 +324,15 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class PagedResponse; }; + /** + * @brief Response type for #Azure::Storage::Files::Shares::ShareFileClient::ListHandles. + */ class ListFileHandlesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * File handles. + */ std::vector FileHandles; private: @@ -298,10 +345,19 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class PagedResponse; }; + /** + * @brief Response type for #Azure::Storage::Files::Shares::ShareFileClient::ForceCloseAllHandles. + */ class ForceCloseAllFileHandlesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Number of file handles that were closed. + */ int32_t NumberOfHandlesClosed = 0; + /** + * Number of file handles that fialed to close. + */ int32_t NumberOfHandlesFailedToClose = 0; private: @@ -314,9 +370,15 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class PagedResponse; }; + /** + * @brief Response type for #Azure::Storage::Files::Shares::ShareDirectoryClient::ListHandles. + */ class ListDirectoryHandlesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * File handles. + */ std::vector DirectoryHandles; private: @@ -329,10 +391,20 @@ namespace Azure { namespace Storage { namespace Files { namespace Shares { friend class PagedResponse; }; + /** + * @brief Response type for + * #Azure::Storage::Files::Shares::ShareDirectoryClient::ForceCloseAllHandles. + */ class ForceCloseAllDirectoryHandlesPagedResponse : public Azure::Core::PagedResponse { public: + /** + * Number of file handles that were closed. + */ int32_t NumberOfHandlesClosed = 0; + /** + * Number of file handles that fialed to close. + */ int32_t NumberOfHandlesFailedToClose = 0; private: