diff --git a/sdk/storage/arm-storage/src/models/blobContainersMappers.ts b/sdk/storage/arm-storage/src/models/blobContainersMappers.ts index 841f6031756a..e9be51211373 100644 --- a/sdk/storage/arm-storage/src/models/blobContainersMappers.ts +++ b/sdk/storage/arm-storage/src/models/blobContainersMappers.ts @@ -50,6 +50,7 @@ export { LegalHoldProperties, ListContainerItem, ListContainerItems, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -59,11 +60,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -71,6 +76,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/blobServicesMappers.ts b/sdk/storage/arm-storage/src/models/blobServicesMappers.ts index 04b152790ea6..a73ad045e24d 100644 --- a/sdk/storage/arm-storage/src/models/blobServicesMappers.ts +++ b/sdk/storage/arm-storage/src/models/blobServicesMappers.ts @@ -42,6 +42,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -51,11 +52,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -63,6 +68,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/encryptionScopesMappers.ts b/sdk/storage/arm-storage/src/models/encryptionScopesMappers.ts index 6654e1b23bf5..c2d72ad693e3 100644 --- a/sdk/storage/arm-storage/src/models/encryptionScopesMappers.ts +++ b/sdk/storage/arm-storage/src/models/encryptionScopesMappers.ts @@ -43,6 +43,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -52,11 +53,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -64,6 +69,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/fileServicesMappers.ts b/sdk/storage/arm-storage/src/models/fileServicesMappers.ts index 9f9c175bfaf8..fd3c6a18d04a 100644 --- a/sdk/storage/arm-storage/src/models/fileServicesMappers.ts +++ b/sdk/storage/arm-storage/src/models/fileServicesMappers.ts @@ -42,6 +42,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -51,11 +52,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -63,6 +68,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/fileSharesMappers.ts b/sdk/storage/arm-storage/src/models/fileSharesMappers.ts index 73469ee7a351..f59a1544518c 100644 --- a/sdk/storage/arm-storage/src/models/fileSharesMappers.ts +++ b/sdk/storage/arm-storage/src/models/fileSharesMappers.ts @@ -23,6 +23,7 @@ export { CustomDomain, DateAfterCreation, DateAfterModification, + DeletedShare, DeleteRetentionPolicy, Encryption, EncryptionScope, @@ -42,6 +43,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -51,11 +53,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -63,6 +69,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/index.ts b/sdk/storage/arm-storage/src/models/index.ts index 2dc3628ecbfc..7fb699822743 100644 --- a/sdk/storage/arm-storage/src/models/index.ts +++ b/sdk/storage/arm-storage/src/models/index.ts @@ -720,11 +720,11 @@ export interface GeoReplicationStats { */ export interface BlobRestoreRange { /** - * Blob start range. Empty means account start. + * Blob start range. This is inclusive. Empty means account start. */ startRange: string; /** - * Blob end range. Empty means account end. + * Blob end range. This is exclusive. Empty means account end. */ endRange: string; } @@ -1361,6 +1361,26 @@ export interface ManagementPolicyAction { snapshot?: ManagementPolicySnapShot; } +/** + * Blob index tag based filtering for blob objects + */ +export interface TagFilter { + /** + * This is the filter tag name, it can have 1 - 128 characters + */ + name: string; + /** + * This is the comparison operator which is used for object comparison and filtering. Only == + * (equality operator) is currently supported + */ + op: string; + /** + * This is the filter tag value field used for tag based filtering, it can have 0 - 256 + * characters + */ + value: string; +} + /** * Filters limit rule actions to a subset of blobs within the storage account. If multiple filters * are defined, a logical AND is performed on all filters. @@ -1374,6 +1394,10 @@ export interface ManagementPolicyFilter { * An array of predefined enum values. Only blockBlob is supported. */ blobTypes: string[]; + /** + * An array of blob index tag based filters, there can be at most 10 tag filters + */ + blobIndexMatch?: TagFilter[]; } /** @@ -1438,36 +1462,6 @@ export interface ManagementPolicy extends Resource { policy: ManagementPolicySchema; } -/** - * A private link resource - */ -export interface PrivateLinkResource extends Resource { - /** - * The private link resource group id. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly groupId?: string; - /** - * The private link resource required member names. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly requiredMembers?: string[]; - /** - * The private link resource Private link DNS zone name. - */ - requiredZoneNames?: string[]; -} - -/** - * A list of private link resources - */ -export interface PrivateLinkResourceListResult { - /** - * Array of private link resources - */ - value?: PrivateLinkResource[]; -} - /** * The key vault properties for the encryption scope. This is a required field if encryption scope * 'source' attribute is set to 'Microsoft.KeyVault'. @@ -1512,6 +1506,76 @@ export interface EncryptionScope extends Resource { keyVaultProperties?: EncryptionScopeKeyVaultProperties; } +/** + * Filters limit replication to a subset of blobs within the storage account. A logical OR is + * performed on values in the filter. If multiple filters are defined, a logical AND is performed + * on all filters. + */ +export interface ObjectReplicationPolicyFilter { + /** + * Optional. Filters the results to replicate only blobs whose names begin with the specified + * prefix. + */ + prefixMatch?: string[]; + /** + * Blobs created after the time will be replicated to the destination. It must be in datetime + * format 'yyyy-MM-ddTHH:mm:ssZ'. Example: 2020-02-19T16:05:00Z + */ + minCreationTime?: string; +} + +/** + * The replication policy rule between two containers. + */ +export interface ObjectReplicationPolicyRule { + /** + * Rule Id is auto-generated for each new rule on destination account. It is required for put + * policy on source account. + */ + ruleId?: string; + /** + * Required. Source container name. + */ + sourceContainer: string; + /** + * Required. Destination container name. + */ + destinationContainer: string; + /** + * Optional. An object that defines the filter set. + */ + filters?: ObjectReplicationPolicyFilter; +} + +/** + * The replication policy between two storage accounts. Multiple rules can be defined in one + * policy. + */ +export interface ObjectReplicationPolicy extends Resource { + /** + * A unique id for object replication policy. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly policyId?: string; + /** + * Indicates when the policy is enabled on the source account. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly enabledTime?: Date; + /** + * Required. Source account name. + */ + sourceAccount: string; + /** + * Required. Destination account name. + */ + destinationAccount: string; + /** + * The storage account object replication rules. + */ + rules?: ObjectReplicationPolicyRule[]; +} + /** * An error response from the storage resource provider. */ @@ -1545,6 +1609,36 @@ export interface AzureEntityResource extends Resource { readonly etag?: string; } +/** + * A private link resource + */ +export interface PrivateLinkResource extends Resource { + /** + * The private link resource group id. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly groupId?: string; + /** + * The private link resource required member names. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly requiredMembers?: string[]; + /** + * The private link resource Private link DNS zone name. + */ + requiredZoneNames?: string[]; +} + +/** + * A list of private link resources + */ +export interface PrivateLinkResourceListResult { + /** + * Array of private link resources + */ + value?: PrivateLinkResource[]; +} + /** * An update history of the ImmutabilityPolicy of a blob container. */ @@ -1924,6 +2018,11 @@ export interface RestorePolicyProperties { * DeleteRetentionPolicy.days. */ days?: number; + /** + * Returns the date and time the restore policy was last enabled. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly lastEnabledTime?: Date; } /** @@ -2067,6 +2166,72 @@ export interface FileShare extends AzureEntityResource { * 5TB (5120). For Large File Shares, the maximum size is 102400. */ shareQuota?: number; + /** + * The authentication protocol that is used for the file share. Can only be specified when + * creating a share. Possible values include: 'SMB', 'NFS' + */ + enabledProtocols?: EnabledProtocols; + /** + * The property is for NFS share only. The default is NoRootSquash. Possible values include: + * 'NoRootSquash', 'RootSquash', 'AllSquash' + */ + rootSquash?: RootSquashType; + /** + * The version of the share. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly version?: string; + /** + * Indicates whether the share was deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly deleted?: boolean; + /** + * The deleted time if the share was deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly deletedTime?: Date; + /** + * Remaining retention days for share that was soft deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly remainingRetentionDays?: number; + /** + * Access tier for specific share. GpV2 account can choose between TransactionOptimized + * (default), Hot, and Cool. FileStorage account can choose Premium. Possible values include: + * 'TransactionOptimized', 'Hot', 'Cool', 'Premium' + */ + accessTier?: ShareAccessTier; + /** + * Indicates the last modification time for share access tier. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly accessTierChangeTime?: Date; + /** + * Indicates if there is a pending transition for access tier. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly accessTierStatus?: string; + /** + * The approximate size of the data stored on the share. Note that this value may not include all + * recently created or recently resized files. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly shareUsageBytes?: number; +} + +/** + * The deleted share to be restored. + */ +export interface DeletedShare { + /** + * Required. Identify the name of the deleted share that will be restored. + */ + deletedShareName: string; + /** + * Required. Identify the version of the deleted share that will be restored. + */ + deletedShareVersion: string; } /** @@ -2087,6 +2252,141 @@ export interface FileShareItem extends AzureEntityResource { * 5TB (5120). For Large File Shares, the maximum size is 102400. */ shareQuota?: number; + /** + * The authentication protocol that is used for the file share. Can only be specified when + * creating a share. Possible values include: 'SMB', 'NFS' + */ + enabledProtocols?: EnabledProtocols; + /** + * The property is for NFS share only. The default is NoRootSquash. Possible values include: + * 'NoRootSquash', 'RootSquash', 'AllSquash' + */ + rootSquash?: RootSquashType; + /** + * The version of the share. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly version?: string; + /** + * Indicates whether the share was deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly deleted?: boolean; + /** + * The deleted time if the share was deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly deletedTime?: Date; + /** + * Remaining retention days for share that was soft deleted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly remainingRetentionDays?: number; + /** + * Access tier for specific share. GpV2 account can choose between TransactionOptimized + * (default), Hot, and Cool. FileStorage account can choose Premium. Possible values include: + * 'TransactionOptimized', 'Hot', 'Cool', 'Premium' + */ + accessTier?: ShareAccessTier; + /** + * Indicates the last modification time for share access tier. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly accessTierChangeTime?: Date; + /** + * Indicates if there is a pending transition for access tier. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly accessTierStatus?: string; + /** + * The approximate size of the data stored on the share. Note that this value may not include all + * recently created or recently resized files. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly shareUsageBytes?: number; +} + +/** + * The properties of a storage account’s Queue service. + */ +export interface QueueServiceProperties extends Resource { + /** + * Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in + * the request. If no CorsRule elements are included in the request body, all CORS rules will be + * deleted, and CORS will be disabled for the Queue service. + */ + cors?: CorsRules; +} + +/** + * An interface representing ListQueueServices. + */ +export interface ListQueueServices { + /** + * List of queue services returned. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly value?: QueueServiceProperties[]; +} + +/** + * An interface representing StorageQueue. + */ +export interface StorageQueue extends Resource { + /** + * A name-value pair that represents queue metadata. + */ + metadata?: { [propertyName: string]: string }; + /** + * Integer indicating an approximate number of messages in the queue. This number is not lower + * than the actual number of messages in the queue, but could be higher. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly approximateMessageCount?: number; +} + +/** + * An interface representing ListQueue. + */ +export interface ListQueue extends Resource { + /** + * A name-value pair that represents queue metadata. + */ + metadata?: { [propertyName: string]: string }; +} + +/** + * The properties of a storage account’s Table service. + */ +export interface TableServiceProperties extends Resource { + /** + * Specifies CORS rules for the Table service. You can include up to five CorsRule elements in + * the request. If no CorsRule elements are included in the request body, all CORS rules will be + * deleted, and CORS will be disabled for the Table service. + */ + cors?: CorsRules; +} + +/** + * An interface representing ListTableServices. + */ +export interface ListTableServices { + /** + * List of table services returned. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly value?: TableServiceProperties[]; +} + +/** + * Properties of the table, including Id, resource name, resource type. + */ +export interface Table extends Resource { + /** + * Table name under the specified account + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly tableName?: string; } /** @@ -2216,47 +2516,92 @@ export interface FileSharesListOptionalParams extends msRest.RequestOptionsBase * Optional. When specified, only share names starting with the filter will be listed. */ filter?: string; + /** + * Optional, used to expand the properties within share's properties. Possible values include: + * 'deleted' + */ + expand?: ListSharesExpand; } /** * Optional Parameters. */ -export interface FileSharesCreateOptionalParams extends msRest.RequestOptionsBase { +export interface FileSharesGetOptionalParams extends msRest.RequestOptionsBase { /** - * A name-value pair to associate with the share as metadata. + * Optional, used to expand the properties within share's properties. Possible values include: + * 'stats' */ - metadata?: { [propertyName: string]: string }; + expand?: GetShareExpand; +} + +/** + * Optional Parameters. + */ +export interface QueueServicesSetServicePropertiesOptionalParams extends msRest.RequestOptionsBase { /** - * The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to - * 5TB (5120). For Large File Shares, the maximum size is 102400. + * Specifies CORS rules for the Queue service. You can include up to five CorsRule elements in + * the request. If no CorsRule elements are included in the request body, all CORS rules will be + * deleted, and CORS will be disabled for the Queue service. */ - shareQuota?: number; + cors?: CorsRules; } /** * Optional Parameters. */ -export interface FileSharesUpdateOptionalParams extends msRest.RequestOptionsBase { +export interface QueueCreateOptionalParams extends msRest.RequestOptionsBase { /** - * A name-value pair to associate with the share as metadata. + * A name-value pair that represents queue metadata. */ metadata?: { [propertyName: string]: string }; - /** - * The maximum size of the share, in gigabytes. Must be greater than 0, and less than or equal to - * 5TB (5120). For Large File Shares, the maximum size is 102400. - */ - shareQuota?: number; } /** - * An interface representing StorageManagementClientOptions. + * Optional Parameters. */ -export interface StorageManagementClientOptions extends AzureServiceClientOptions { - baseUri?: string; +export interface QueueUpdateOptionalParams extends msRest.RequestOptionsBase { + /** + * A name-value pair that represents queue metadata. + */ + metadata?: { [propertyName: string]: string }; } /** - * Defines headers for CreateOrUpdateImmutabilityPolicy operation. + * Optional Parameters. + */ +export interface QueueListOptionalParams extends msRest.RequestOptionsBase { + /** + * Optional, a maximum number of queues that should be included in a list queue response + */ + maxpagesize?: string; + /** + * Optional, When specified, only the queues with a name starting with the given filter will be + * listed. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface TableServicesSetServicePropertiesOptionalParams extends msRest.RequestOptionsBase { + /** + * Specifies CORS rules for the Table service. You can include up to five CorsRule elements in + * the request. If no CorsRule elements are included in the request body, all CORS rules will be + * deleted, and CORS will be disabled for the Table service. + */ + cors?: CorsRules; +} + +/** + * An interface representing StorageManagementClientOptions. + */ +export interface StorageManagementClientOptions extends AzureServiceClientOptions { + baseUri?: string; +} + +/** + * Defines headers for CreateOrUpdateImmutabilityPolicy operation. */ export interface BlobContainersCreateOrUpdateImmutabilityPolicyHeaders { /** @@ -2354,6 +2699,22 @@ export interface StorageAccountListResult extends Array { export interface UsageListResult extends Array { } +/** + * @interface + * List of private endpoint connection associated with the specified storage account + * @extends Array + */ +export interface PrivateEndpointConnectionListResult extends Array { +} + +/** + * @interface + * List storage account object replication policies. + * @extends Array + */ +export interface ObjectReplicationPolicies extends Array { +} + /** * @interface * List of encryption scopes requested, and if paging is required, a URL to the next page of @@ -2407,6 +2768,32 @@ export interface FileShareItems extends Array { readonly nextLink?: string; } +/** + * @interface + * Response schema. Contains list of queues returned + * @extends Array + */ +export interface ListQueueResource extends Array { + /** + * Request URL that can be used to list next page of queues + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * Response schema. Contains list of tables returned + * @extends Array + */ +export interface ListTableResource extends Array
{ + /** + * Request URL that can be used to query next page of tables + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + /** * Defines values for ReasonCode. * Possible values include: 'QuotaId', 'NotAvailableForSubscription' @@ -2699,6 +3086,30 @@ export type ImmutabilityPolicyState = 'Locked' | 'Unlocked'; */ export type ImmutabilityPolicyUpdateType = 'put' | 'lock' | 'extend'; +/** + * Defines values for EnabledProtocols. + * Possible values include: 'SMB', 'NFS' + * @readonly + * @enum {string} + */ +export type EnabledProtocols = 'SMB' | 'NFS'; + +/** + * Defines values for RootSquashType. + * Possible values include: 'NoRootSquash', 'RootSquash', 'AllSquash' + * @readonly + * @enum {string} + */ +export type RootSquashType = 'NoRootSquash' | 'RootSquash' | 'AllSquash'; + +/** + * Defines values for ShareAccessTier. + * Possible values include: 'TransactionOptimized', 'Hot', 'Cool', 'Premium' + * @readonly + * @enum {string} + */ +export type ShareAccessTier = 'TransactionOptimized' | 'Hot' | 'Cool' | 'Premium'; + /** * Defines values for StorageAccountExpand. * Possible values include: 'geoReplicationStats', 'blobRestoreStatus' @@ -2715,6 +3126,22 @@ export type StorageAccountExpand = 'geoReplicationStats' | 'blobRestoreStatus'; */ export type ListKeyExpand = 'kerb'; +/** + * Defines values for ListSharesExpand. + * Possible values include: 'deleted' + * @readonly + * @enum {string} + */ +export type ListSharesExpand = 'deleted'; + +/** + * Defines values for GetShareExpand. + * Possible values include: 'stats' + * @readonly + * @enum {string} + */ +export type GetShareExpand = 'stats'; + /** * Defines values for Action1. * Possible values include: 'Acquire', 'Renew', 'Change', 'Release', 'Break' @@ -3103,6 +3530,26 @@ export type ManagementPoliciesCreateOrUpdateResponse = ManagementPolicy & { }; }; +/** + * Contains response data for the list operation. + */ +export type PrivateEndpointConnectionsListResponse = PrivateEndpointConnectionListResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: PrivateEndpointConnectionListResult; + }; +}; + /** * Contains response data for the get operation. */ @@ -3163,6 +3610,66 @@ export type PrivateLinkResourcesListByStorageAccountResponse = PrivateLinkResour }; }; +/** + * Contains response data for the list operation. + */ +export type ObjectReplicationPoliciesListResponse = ObjectReplicationPolicies & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ObjectReplicationPolicies; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type ObjectReplicationPoliciesGetResponse = ObjectReplicationPolicy & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ObjectReplicationPolicy; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type ObjectReplicationPoliciesCreateOrUpdateResponse = ObjectReplicationPolicy & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ObjectReplicationPolicy; + }; +}; + /** * Contains response data for the put operation. */ @@ -3767,3 +4274,323 @@ export type FileSharesListNextResponse = FileShareItems & { parsedBody: FileShareItems; }; }; + +/** + * Contains response data for the list operation. + */ +export type QueueServicesListResponse = ListQueueServices & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListQueueServices; + }; +}; + +/** + * Contains response data for the setServiceProperties operation. + */ +export type QueueServicesSetServicePropertiesResponse = QueueServiceProperties & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: QueueServiceProperties; + }; +}; + +/** + * Contains response data for the getServiceProperties operation. + */ +export type QueueServicesGetServicePropertiesResponse = QueueServiceProperties & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: QueueServiceProperties; + }; +}; + +/** + * Contains response data for the create operation. + */ +export type QueueCreateResponse = StorageQueue & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: StorageQueue; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type QueueUpdateResponse = StorageQueue & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: StorageQueue; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type QueueGetResponse = StorageQueue & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: StorageQueue; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type QueueListResponse = ListQueueResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListQueueResource; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type QueueListNextResponse = ListQueueResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListQueueResource; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type TableServicesListResponse = ListTableServices & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListTableServices; + }; +}; + +/** + * Contains response data for the setServiceProperties operation. + */ +export type TableServicesSetServicePropertiesResponse = TableServiceProperties & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: TableServiceProperties; + }; +}; + +/** + * Contains response data for the getServiceProperties operation. + */ +export type TableServicesGetServicePropertiesResponse = TableServiceProperties & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: TableServiceProperties; + }; +}; + +/** + * Contains response data for the create operation. + */ +export type TableCreateResponse = Table & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Table; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type TableUpdateResponse = Table & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Table; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type TableGetResponse = Table & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Table; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type TableListResponse = ListTableResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListTableResource; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type TableListNextResponse = ListTableResource & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ListTableResource; + }; +}; diff --git a/sdk/storage/arm-storage/src/models/managementPoliciesMappers.ts b/sdk/storage/arm-storage/src/models/managementPoliciesMappers.ts index 1f0770fd0551..10328e912851 100644 --- a/sdk/storage/arm-storage/src/models/managementPoliciesMappers.ts +++ b/sdk/storage/arm-storage/src/models/managementPoliciesMappers.ts @@ -41,6 +41,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -50,11 +51,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -62,6 +67,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/mappers.ts b/sdk/storage/arm-storage/src/models/mappers.ts index 7923f47baad4..ccc875de6123 100644 --- a/sdk/storage/arm-storage/src/models/mappers.ts +++ b/sdk/storage/arm-storage/src/models/mappers.ts @@ -2170,6 +2170,45 @@ export const ManagementPolicyAction: msRest.CompositeMapper = { } }; +export const TagFilter: msRest.CompositeMapper = { + serializedName: "TagFilter", + type: { + name: "Composite", + className: "TagFilter", + modelProperties: { + name: { + required: true, + serializedName: "name", + constraints: { + MaxLength: 128, + MinLength: 1 + }, + type: { + name: "String" + } + }, + op: { + required: true, + serializedName: "op", + type: { + name: "String" + } + }, + value: { + required: true, + serializedName: "value", + constraints: { + MaxLength: 256, + MinLength: 0 + }, + type: { + name: "String" + } + } + } + } +}; + export const ManagementPolicyFilter: msRest.CompositeMapper = { serializedName: "ManagementPolicyFilter", type: { @@ -2198,6 +2237,18 @@ export const ManagementPolicyFilter: msRest.CompositeMapper = { } } } + }, + blobIndexMatch: { + serializedName: "blobIndexMatch", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TagFilter" + } + } + } } } } @@ -2317,123 +2368,175 @@ export const ManagementPolicy: msRest.CompositeMapper = { } }; -export const PrivateLinkResource: msRest.CompositeMapper = { - serializedName: "PrivateLinkResource", +export const EncryptionScopeKeyVaultProperties: msRest.CompositeMapper = { + serializedName: "EncryptionScopeKeyVaultProperties", type: { name: "Composite", - className: "PrivateLinkResource", + className: "EncryptionScopeKeyVaultProperties", + modelProperties: { + keyUri: { + serializedName: "keyUri", + type: { + name: "String" + } + } + } + } +}; + +export const EncryptionScope: msRest.CompositeMapper = { + serializedName: "EncryptionScope", + type: { + name: "Composite", + className: "EncryptionScope", modelProperties: { ...Resource.type.modelProperties, - groupId: { - readOnly: true, - serializedName: "properties.groupId", + source: { + serializedName: "properties.source", type: { name: "String" } }, - requiredMembers: { + state: { + serializedName: "properties.state", + type: { + name: "String" + } + }, + creationTime: { readOnly: true, - serializedName: "properties.requiredMembers", + serializedName: "properties.creationTime", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "DateTime" } }, - requiredZoneNames: { - serializedName: "properties.requiredZoneNames", + lastModifiedTime: { + readOnly: true, + serializedName: "properties.lastModifiedTime", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "DateTime" + } + }, + keyVaultProperties: { + serializedName: "properties.keyVaultProperties", + type: { + name: "Composite", + className: "EncryptionScopeKeyVaultProperties" } } } } }; -export const PrivateLinkResourceListResult: msRest.CompositeMapper = { - serializedName: "PrivateLinkResourceListResult", +export const ObjectReplicationPolicyFilter: msRest.CompositeMapper = { + serializedName: "ObjectReplicationPolicyFilter", type: { name: "Composite", - className: "PrivateLinkResourceListResult", + className: "ObjectReplicationPolicyFilter", modelProperties: { - value: { - serializedName: "value", + prefixMatch: { + serializedName: "prefixMatch", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "PrivateLinkResource" + name: "String" } } } + }, + minCreationTime: { + serializedName: "minCreationTime", + type: { + name: "String" + } } } } }; -export const EncryptionScopeKeyVaultProperties: msRest.CompositeMapper = { - serializedName: "EncryptionScopeKeyVaultProperties", +export const ObjectReplicationPolicyRule: msRest.CompositeMapper = { + serializedName: "ObjectReplicationPolicyRule", type: { name: "Composite", - className: "EncryptionScopeKeyVaultProperties", + className: "ObjectReplicationPolicyRule", modelProperties: { - keyUri: { - serializedName: "keyUri", + ruleId: { + serializedName: "ruleId", + type: { + name: "String" + } + }, + sourceContainer: { + required: true, + serializedName: "sourceContainer", + type: { + name: "String" + } + }, + destinationContainer: { + required: true, + serializedName: "destinationContainer", type: { name: "String" } + }, + filters: { + serializedName: "filters", + type: { + name: "Composite", + className: "ObjectReplicationPolicyFilter" + } } } } }; -export const EncryptionScope: msRest.CompositeMapper = { - serializedName: "EncryptionScope", +export const ObjectReplicationPolicy: msRest.CompositeMapper = { + serializedName: "ObjectReplicationPolicy", type: { name: "Composite", - className: "EncryptionScope", + className: "ObjectReplicationPolicy", modelProperties: { ...Resource.type.modelProperties, - source: { - serializedName: "properties.source", + policyId: { + readOnly: true, + serializedName: "properties.policyId", type: { name: "String" } }, - state: { - serializedName: "properties.state", + enabledTime: { + readOnly: true, + serializedName: "properties.enabledTime", type: { - name: "String" + name: "DateTime" } }, - creationTime: { - readOnly: true, - serializedName: "properties.creationTime", + sourceAccount: { + required: true, + serializedName: "properties.sourceAccount", type: { - name: "DateTime" + name: "String" } }, - lastModifiedTime: { - readOnly: true, - serializedName: "properties.lastModifiedTime", + destinationAccount: { + required: true, + serializedName: "properties.destinationAccount", type: { - name: "DateTime" + name: "String" } }, - keyVaultProperties: { - serializedName: "properties.keyVaultProperties", + rules: { + serializedName: "properties.rules", type: { - name: "Composite", - className: "EncryptionScopeKeyVaultProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ObjectReplicationPolicyRule" + } + } } } } @@ -2491,6 +2594,69 @@ export const AzureEntityResource: msRest.CompositeMapper = { } }; +export const PrivateLinkResource: msRest.CompositeMapper = { + serializedName: "PrivateLinkResource", + type: { + name: "Composite", + className: "PrivateLinkResource", + modelProperties: { + ...Resource.type.modelProperties, + groupId: { + readOnly: true, + serializedName: "properties.groupId", + type: { + name: "String" + } + }, + requiredMembers: { + readOnly: true, + serializedName: "properties.requiredMembers", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + requiredZoneNames: { + serializedName: "properties.requiredZoneNames", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const PrivateLinkResourceListResult: msRest.CompositeMapper = { + serializedName: "PrivateLinkResourceListResult", + type: { + name: "Composite", + className: "PrivateLinkResourceListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateLinkResource" + } + } + } + } + } + } +}; + export const UpdateHistoryProperty: msRest.CompositeMapper = { serializedName: "UpdateHistoryProperty", type: { @@ -3082,6 +3248,13 @@ export const RestorePolicyProperties: msRest.CompositeMapper = { type: { name: "Number" } + }, + lastEnabledTime: { + readOnly: true, + serializedName: "lastEnabledTime", + type: { + name: "DateTime" + } } } } @@ -3312,21 +3485,112 @@ export const FileShare: msRest.CompositeMapper = { type: { name: "Number" } - } - } - } -}; - -export const FileShareItem: msRest.CompositeMapper = { - serializedName: "FileShareItem", - type: { - name: "Composite", - className: "FileShareItem", - modelProperties: { - ...AzureEntityResource.type.modelProperties, - lastModifiedTime: { - readOnly: true, - serializedName: "properties.lastModifiedTime", + }, + enabledProtocols: { + serializedName: "properties.enabledProtocols", + type: { + name: "String" + } + }, + rootSquash: { + serializedName: "properties.rootSquash", + type: { + name: "String" + } + }, + version: { + readOnly: true, + serializedName: "properties.version", + type: { + name: "String" + } + }, + deleted: { + readOnly: true, + serializedName: "properties.deleted", + type: { + name: "Boolean" + } + }, + deletedTime: { + readOnly: true, + serializedName: "properties.deletedTime", + type: { + name: "DateTime" + } + }, + remainingRetentionDays: { + readOnly: true, + serializedName: "properties.remainingRetentionDays", + type: { + name: "Number" + } + }, + accessTier: { + serializedName: "properties.accessTier", + type: { + name: "String" + } + }, + accessTierChangeTime: { + readOnly: true, + serializedName: "properties.accessTierChangeTime", + type: { + name: "DateTime" + } + }, + accessTierStatus: { + readOnly: true, + serializedName: "properties.accessTierStatus", + type: { + name: "String" + } + }, + shareUsageBytes: { + readOnly: true, + serializedName: "properties.shareUsageBytes", + type: { + name: "Number" + } + } + } + } +}; + +export const DeletedShare: msRest.CompositeMapper = { + serializedName: "DeletedShare", + type: { + name: "Composite", + className: "DeletedShare", + modelProperties: { + deletedShareName: { + required: true, + serializedName: "deletedShareName", + type: { + name: "String" + } + }, + deletedShareVersion: { + required: true, + serializedName: "deletedShareVersion", + type: { + name: "String" + } + } + } + } +}; + +export const FileShareItem: msRest.CompositeMapper = { + serializedName: "FileShareItem", + type: { + name: "Composite", + className: "FileShareItem", + modelProperties: { + ...AzureEntityResource.type.modelProperties, + lastModifiedTime: { + readOnly: true, + serializedName: "properties.lastModifiedTime", type: { name: "DateTime" } @@ -3351,6 +3615,224 @@ export const FileShareItem: msRest.CompositeMapper = { type: { name: "Number" } + }, + enabledProtocols: { + serializedName: "properties.enabledProtocols", + type: { + name: "String" + } + }, + rootSquash: { + serializedName: "properties.rootSquash", + type: { + name: "String" + } + }, + version: { + readOnly: true, + serializedName: "properties.version", + type: { + name: "String" + } + }, + deleted: { + readOnly: true, + serializedName: "properties.deleted", + type: { + name: "Boolean" + } + }, + deletedTime: { + readOnly: true, + serializedName: "properties.deletedTime", + type: { + name: "DateTime" + } + }, + remainingRetentionDays: { + readOnly: true, + serializedName: "properties.remainingRetentionDays", + type: { + name: "Number" + } + }, + accessTier: { + serializedName: "properties.accessTier", + type: { + name: "String" + } + }, + accessTierChangeTime: { + readOnly: true, + serializedName: "properties.accessTierChangeTime", + type: { + name: "DateTime" + } + }, + accessTierStatus: { + readOnly: true, + serializedName: "properties.accessTierStatus", + type: { + name: "String" + } + }, + shareUsageBytes: { + readOnly: true, + serializedName: "properties.shareUsageBytes", + type: { + name: "Number" + } + } + } + } +}; + +export const QueueServiceProperties: msRest.CompositeMapper = { + serializedName: "QueueServiceProperties", + type: { + name: "Composite", + className: "QueueServiceProperties", + modelProperties: { + ...Resource.type.modelProperties, + cors: { + serializedName: "properties.cors", + type: { + name: "Composite", + className: "CorsRules" + } + } + } + } +}; + +export const ListQueueServices: msRest.CompositeMapper = { + serializedName: "ListQueueServices", + type: { + name: "Composite", + className: "ListQueueServices", + modelProperties: { + value: { + readOnly: true, + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "QueueServiceProperties" + } + } + } + } + } + } +}; + +export const StorageQueue: msRest.CompositeMapper = { + serializedName: "StorageQueue", + type: { + name: "Composite", + className: "StorageQueue", + modelProperties: { + ...Resource.type.modelProperties, + metadata: { + serializedName: "properties.metadata", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + approximateMessageCount: { + readOnly: true, + serializedName: "properties.approximateMessageCount", + type: { + name: "Number" + } + } + } + } +}; + +export const ListQueue: msRest.CompositeMapper = { + serializedName: "ListQueue", + type: { + name: "Composite", + className: "ListQueue", + modelProperties: { + ...Resource.type.modelProperties, + metadata: { + serializedName: "properties.metadata", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const TableServiceProperties: msRest.CompositeMapper = { + serializedName: "TableServiceProperties", + type: { + name: "Composite", + className: "TableServiceProperties", + modelProperties: { + ...Resource.type.modelProperties, + cors: { + serializedName: "properties.cors", + type: { + name: "Composite", + className: "CorsRules" + } + } + } + } +}; + +export const ListTableServices: msRest.CompositeMapper = { + serializedName: "ListTableServices", + type: { + name: "Composite", + className: "ListTableServices", + modelProperties: { + value: { + readOnly: true, + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TableServiceProperties" + } + } + } + } + } + } +}; + +export const Table: msRest.CompositeMapper = { + serializedName: "Table", + type: { + name: "Composite", + className: "Table", + modelProperties: { + ...Resource.type.modelProperties, + tableName: { + readOnly: true, + serializedName: "properties.tableName", + type: { + name: "String" + } } } } @@ -3533,6 +4015,50 @@ export const UsageListResult: msRest.CompositeMapper = { } }; +export const PrivateEndpointConnectionListResult: msRest.CompositeMapper = { + serializedName: "PrivateEndpointConnectionListResult", + type: { + name: "Composite", + className: "PrivateEndpointConnectionListResult", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + } + } + } +}; + +export const ObjectReplicationPolicies: msRest.CompositeMapper = { + serializedName: "ObjectReplicationPolicies", + type: { + name: "Composite", + className: "ObjectReplicationPolicies", + modelProperties: { + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ObjectReplicationPolicy" + } + } + } + } + } + } +}; + export const EncryptionScopeListResult: msRest.CompositeMapper = { serializedName: "EncryptionScopeListResult", type: { @@ -3645,3 +4171,63 @@ export const FileShareItems: msRest.CompositeMapper = { } } }; + +export const ListQueueResource: msRest.CompositeMapper = { + serializedName: "ListQueueResource", + type: { + name: "Composite", + className: "ListQueueResource", + modelProperties: { + value: { + readOnly: true, + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ListQueue" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const ListTableResource: msRest.CompositeMapper = { + serializedName: "ListTableResource", + type: { + name: "Composite", + className: "ListTableResource", + modelProperties: { + value: { + readOnly: true, + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Table" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; diff --git a/sdk/storage/arm-storage/src/models/objectReplicationPoliciesOperationsMappers.ts b/sdk/storage/arm-storage/src/models/objectReplicationPoliciesOperationsMappers.ts new file mode 100644 index 000000000000..d6d554050bf8 --- /dev/null +++ b/sdk/storage/arm-storage/src/models/objectReplicationPoliciesOperationsMappers.ts @@ -0,0 +1,79 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + ActiveDirectoryProperties, + AzureEntityResource, + AzureFilesIdentityBasedAuthentication, + BaseResource, + BlobContainer, + BlobRestoreParameters, + BlobRestoreRange, + BlobRestoreStatus, + BlobServiceProperties, + ChangeFeed, + CorsRule, + CorsRules, + CustomDomain, + DateAfterCreation, + DateAfterModification, + DeleteRetentionPolicy, + Encryption, + EncryptionScope, + EncryptionScopeKeyVaultProperties, + EncryptionService, + EncryptionServices, + Endpoints, + ErrorResponse, + FileServiceProperties, + FileShare, + FileShareItem, + GeoReplicationStats, + Identity, + ImmutabilityPolicy, + ImmutabilityPolicyProperties, + IPRule, + KeyVaultProperties, + LegalHoldProperties, + ListContainerItem, + ListQueue, + ManagementPolicy, + ManagementPolicyAction, + ManagementPolicyBaseBlob, + ManagementPolicyDefinition, + ManagementPolicyFilter, + ManagementPolicyRule, + ManagementPolicySchema, + ManagementPolicySnapShot, + NetworkRuleSet, + ObjectReplicationPolicies, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + QueueServiceProperties, + Resource, + RestorePolicyProperties, + RoutingPreference, + Sku, + StorageAccount, + StorageAccountInternetEndpoints, + StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, + TagProperty, + TrackedResource, + UpdateHistoryProperty, + VirtualNetworkRule +} from "../models/mappers"; diff --git a/sdk/storage/arm-storage/src/models/parameters.ts b/sdk/storage/arm-storage/src/models/parameters.ts index f5c7e2fa39b6..59410fb65616 100644 --- a/sdk/storage/arm-storage/src/models/parameters.ts +++ b/sdk/storage/arm-storage/src/models/parameters.ts @@ -118,6 +118,36 @@ export const expand1: msRest.OperationQueryParameter = { } } }; +export const expand2: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "expand" + ], + mapper: { + serializedName: "$expand", + type: { + name: "Enum", + allowedValues: [ + "deleted" + ] + } + } +}; +export const expand3: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "expand" + ], + mapper: { + serializedName: "$expand", + type: { + name: "Enum", + allowedValues: [ + "stats" + ] + } + } +}; export const fileServicesName: msRest.OperationURLParameter = { parameterPath: "fileServicesName", mapper: { @@ -221,6 +251,19 @@ export const nextPageLink: msRest.OperationURLParameter = { }, skipEncoding: true }; +export const objectReplicationPolicyId: msRest.OperationURLParameter = { + parameterPath: "objectReplicationPolicyId", + mapper: { + required: true, + serializedName: "objectReplicationPolicyId", + constraints: { + MinLength: 1 + }, + type: { + name: "String" + } + } +}; export const privateEndpointConnectionName: msRest.OperationURLParameter = { parameterPath: "privateEndpointConnectionName", mapper: { @@ -231,6 +274,33 @@ export const privateEndpointConnectionName: msRest.OperationURLParameter = { } } }; +export const queueName: msRest.OperationURLParameter = { + parameterPath: "queueName", + mapper: { + required: true, + serializedName: "queueName", + constraints: { + MaxLength: 63, + MinLength: 3, + Pattern: /^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$/ + }, + type: { + name: "String" + } + } +}; +export const queueServiceName: msRest.OperationURLParameter = { + parameterPath: "queueServiceName", + mapper: { + required: true, + isConstant: true, + serializedName: "queueServiceName", + defaultValue: 'default', + type: { + name: "String" + } + } +}; export const resourceGroupName: msRest.OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { @@ -273,3 +343,30 @@ export const subscriptionId: msRest.OperationURLParameter = { } } }; +export const tableName: msRest.OperationURLParameter = { + parameterPath: "tableName", + mapper: { + required: true, + serializedName: "tableName", + constraints: { + MaxLength: 63, + MinLength: 3, + Pattern: /^[A-Za-z][A-Za-z0-9]{2,62}$/ + }, + type: { + name: "String" + } + } +}; +export const tableServiceName: msRest.OperationURLParameter = { + parameterPath: "tableServiceName", + mapper: { + required: true, + isConstant: true, + serializedName: "tableServiceName", + defaultValue: 'default', + type: { + name: "String" + } + } +}; diff --git a/sdk/storage/arm-storage/src/models/privateEndpointConnectionsMappers.ts b/sdk/storage/arm-storage/src/models/privateEndpointConnectionsMappers.ts index ade001101396..c64ce172be80 100644 --- a/sdk/storage/arm-storage/src/models/privateEndpointConnectionsMappers.ts +++ b/sdk/storage/arm-storage/src/models/privateEndpointConnectionsMappers.ts @@ -17,6 +17,7 @@ export { BlobRestoreStatus, BlobServiceProperties, ChangeFeed, + CloudError, CorsRule, CorsRules, CustomDomain, @@ -41,6 +42,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -50,11 +52,16 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, + PrivateEndpointConnectionListResult, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -62,6 +69,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/privateLinkResourcesMappers.ts b/sdk/storage/arm-storage/src/models/privateLinkResourcesMappers.ts index 07454a28f91a..312eb2953574 100644 --- a/sdk/storage/arm-storage/src/models/privateLinkResourcesMappers.ts +++ b/sdk/storage/arm-storage/src/models/privateLinkResourcesMappers.ts @@ -41,6 +41,7 @@ export { KeyVaultProperties, LegalHoldProperties, ListContainerItem, + ListQueue, ManagementPolicy, ManagementPolicyAction, ManagementPolicyBaseBlob, @@ -50,12 +51,16 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkResourceListResult, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -63,6 +68,10 @@ export { StorageAccount, StorageAccountInternetEndpoints, StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/queueMappers.ts b/sdk/storage/arm-storage/src/models/queueMappers.ts new file mode 100644 index 000000000000..8c3a3f6877f8 --- /dev/null +++ b/sdk/storage/arm-storage/src/models/queueMappers.ts @@ -0,0 +1,79 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + ActiveDirectoryProperties, + AzureEntityResource, + AzureFilesIdentityBasedAuthentication, + BaseResource, + BlobContainer, + BlobRestoreParameters, + BlobRestoreRange, + BlobRestoreStatus, + BlobServiceProperties, + ChangeFeed, + CloudError, + CorsRule, + CorsRules, + CustomDomain, + DateAfterCreation, + DateAfterModification, + DeleteRetentionPolicy, + Encryption, + EncryptionScope, + EncryptionScopeKeyVaultProperties, + EncryptionService, + EncryptionServices, + Endpoints, + FileServiceProperties, + FileShare, + FileShareItem, + GeoReplicationStats, + Identity, + ImmutabilityPolicy, + ImmutabilityPolicyProperties, + IPRule, + KeyVaultProperties, + LegalHoldProperties, + ListContainerItem, + ListQueue, + ListQueueResource, + ManagementPolicy, + ManagementPolicyAction, + ManagementPolicyBaseBlob, + ManagementPolicyDefinition, + ManagementPolicyFilter, + ManagementPolicyRule, + ManagementPolicySchema, + ManagementPolicySnapShot, + NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + QueueServiceProperties, + Resource, + RestorePolicyProperties, + RoutingPreference, + Sku, + StorageAccount, + StorageAccountInternetEndpoints, + StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, + TagProperty, + TrackedResource, + UpdateHistoryProperty, + VirtualNetworkRule +} from "../models/mappers"; diff --git a/sdk/storage/arm-storage/src/models/queueServicesMappers.ts b/sdk/storage/arm-storage/src/models/queueServicesMappers.ts new file mode 100644 index 000000000000..3f4bb2912716 --- /dev/null +++ b/sdk/storage/arm-storage/src/models/queueServicesMappers.ts @@ -0,0 +1,79 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + ActiveDirectoryProperties, + AzureEntityResource, + AzureFilesIdentityBasedAuthentication, + BaseResource, + BlobContainer, + BlobRestoreParameters, + BlobRestoreRange, + BlobRestoreStatus, + BlobServiceProperties, + ChangeFeed, + CloudError, + CorsRule, + CorsRules, + CustomDomain, + DateAfterCreation, + DateAfterModification, + DeleteRetentionPolicy, + Encryption, + EncryptionScope, + EncryptionScopeKeyVaultProperties, + EncryptionService, + EncryptionServices, + Endpoints, + FileServiceProperties, + FileShare, + FileShareItem, + GeoReplicationStats, + Identity, + ImmutabilityPolicy, + ImmutabilityPolicyProperties, + IPRule, + KeyVaultProperties, + LegalHoldProperties, + ListContainerItem, + ListQueue, + ListQueueServices, + ManagementPolicy, + ManagementPolicyAction, + ManagementPolicyBaseBlob, + ManagementPolicyDefinition, + ManagementPolicyFilter, + ManagementPolicyRule, + ManagementPolicySchema, + ManagementPolicySnapShot, + NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + QueueServiceProperties, + Resource, + RestorePolicyProperties, + RoutingPreference, + Sku, + StorageAccount, + StorageAccountInternetEndpoints, + StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, + TagProperty, + TrackedResource, + UpdateHistoryProperty, + VirtualNetworkRule +} from "../models/mappers"; diff --git a/sdk/storage/arm-storage/src/models/storageAccountsMappers.ts b/sdk/storage/arm-storage/src/models/storageAccountsMappers.ts index dd059a1dd293..1178fead4acc 100644 --- a/sdk/storage/arm-storage/src/models/storageAccountsMappers.ts +++ b/sdk/storage/arm-storage/src/models/storageAccountsMappers.ts @@ -44,6 +44,7 @@ export { LegalHoldProperties, ListAccountSasResponse, ListContainerItem, + ListQueue, ListServiceSasResponse, ManagementPolicy, ManagementPolicyAction, @@ -54,11 +55,15 @@ export { ManagementPolicySchema, ManagementPolicySnapShot, NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, PrivateEndpoint, PrivateEndpointConnection, PrivateLinkResource, PrivateLinkServiceConnectionState, ProxyResource, + QueueServiceProperties, Resource, RestorePolicyProperties, RoutingPreference, @@ -74,6 +79,10 @@ export { StorageAccountMicrosoftEndpoints, StorageAccountRegenerateKeyParameters, StorageAccountUpdateParameters, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, TagProperty, TrackedResource, UpdateHistoryProperty, diff --git a/sdk/storage/arm-storage/src/models/tableOperationsMappers.ts b/sdk/storage/arm-storage/src/models/tableOperationsMappers.ts new file mode 100644 index 000000000000..c2768b139b78 --- /dev/null +++ b/sdk/storage/arm-storage/src/models/tableOperationsMappers.ts @@ -0,0 +1,79 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + ActiveDirectoryProperties, + AzureEntityResource, + AzureFilesIdentityBasedAuthentication, + BaseResource, + BlobContainer, + BlobRestoreParameters, + BlobRestoreRange, + BlobRestoreStatus, + BlobServiceProperties, + ChangeFeed, + CloudError, + CorsRule, + CorsRules, + CustomDomain, + DateAfterCreation, + DateAfterModification, + DeleteRetentionPolicy, + Encryption, + EncryptionScope, + EncryptionScopeKeyVaultProperties, + EncryptionService, + EncryptionServices, + Endpoints, + FileServiceProperties, + FileShare, + FileShareItem, + GeoReplicationStats, + Identity, + ImmutabilityPolicy, + ImmutabilityPolicyProperties, + IPRule, + KeyVaultProperties, + LegalHoldProperties, + ListContainerItem, + ListQueue, + ListTableResource, + ManagementPolicy, + ManagementPolicyAction, + ManagementPolicyBaseBlob, + ManagementPolicyDefinition, + ManagementPolicyFilter, + ManagementPolicyRule, + ManagementPolicySchema, + ManagementPolicySnapShot, + NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + QueueServiceProperties, + Resource, + RestorePolicyProperties, + RoutingPreference, + Sku, + StorageAccount, + StorageAccountInternetEndpoints, + StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, + TagProperty, + TrackedResource, + UpdateHistoryProperty, + VirtualNetworkRule +} from "../models/mappers"; diff --git a/sdk/storage/arm-storage/src/models/tableServicesMappers.ts b/sdk/storage/arm-storage/src/models/tableServicesMappers.ts new file mode 100644 index 000000000000..d16184de2a2f --- /dev/null +++ b/sdk/storage/arm-storage/src/models/tableServicesMappers.ts @@ -0,0 +1,79 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + ActiveDirectoryProperties, + AzureEntityResource, + AzureFilesIdentityBasedAuthentication, + BaseResource, + BlobContainer, + BlobRestoreParameters, + BlobRestoreRange, + BlobRestoreStatus, + BlobServiceProperties, + ChangeFeed, + CloudError, + CorsRule, + CorsRules, + CustomDomain, + DateAfterCreation, + DateAfterModification, + DeleteRetentionPolicy, + Encryption, + EncryptionScope, + EncryptionScopeKeyVaultProperties, + EncryptionService, + EncryptionServices, + Endpoints, + FileServiceProperties, + FileShare, + FileShareItem, + GeoReplicationStats, + Identity, + ImmutabilityPolicy, + ImmutabilityPolicyProperties, + IPRule, + KeyVaultProperties, + LegalHoldProperties, + ListContainerItem, + ListQueue, + ListTableServices, + ManagementPolicy, + ManagementPolicyAction, + ManagementPolicyBaseBlob, + ManagementPolicyDefinition, + ManagementPolicyFilter, + ManagementPolicyRule, + ManagementPolicySchema, + ManagementPolicySnapShot, + NetworkRuleSet, + ObjectReplicationPolicy, + ObjectReplicationPolicyFilter, + ObjectReplicationPolicyRule, + PrivateEndpoint, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkServiceConnectionState, + ProxyResource, + QueueServiceProperties, + Resource, + RestorePolicyProperties, + RoutingPreference, + Sku, + StorageAccount, + StorageAccountInternetEndpoints, + StorageAccountMicrosoftEndpoints, + StorageQueue, + Table, + TableServiceProperties, + TagFilter, + TagProperty, + TrackedResource, + UpdateHistoryProperty, + VirtualNetworkRule +} from "../models/mappers"; diff --git a/sdk/storage/arm-storage/src/operations/fileShares.ts b/sdk/storage/arm-storage/src/operations/fileShares.ts index 4aa2b2e10b9a..0b7e466add49 100644 --- a/sdk/storage/arm-storage/src/operations/fileShares.ts +++ b/sdk/storage/arm-storage/src/operations/fileShares.ts @@ -80,10 +80,11 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties of the file share to create. * @param [options] The optional parameters * @returns Promise */ - create(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesCreateOptionalParams): Promise; + create(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. @@ -94,9 +95,10 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties of the file share to create. * @param callback The callback */ - create(resourceGroupName: string, accountName: string, shareName: string, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. @@ -107,16 +109,18 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties of the file share to create. * @param options The optional parameters * @param callback The callback */ - create(resourceGroupName: string, accountName: string, shareName: string, options: Models.FileSharesCreateOptionalParams, callback: msRest.ServiceCallback): void; - create(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesCreateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + create(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, shareName, + fileShare, options }, createOperationSpec, @@ -135,10 +139,11 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties to update for the file share. * @param [options] The optional parameters * @returns Promise */ - update(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesUpdateOptionalParams): Promise; + update(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options?: msRest.RequestOptionsBase): Promise; /** * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. @@ -149,9 +154,10 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties to update for the file share. * @param callback The callback */ - update(resourceGroupName: string, accountName: string, shareName: string, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, callback: msRest.ServiceCallback): void; /** * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. @@ -162,16 +168,18 @@ export class FileShares { * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or * number. + * @param fileShare Properties to update for the file share. * @param options The optional parameters * @param callback The callback */ - update(resourceGroupName: string, accountName: string, shareName: string, options: Models.FileSharesUpdateOptionalParams, callback: msRest.ServiceCallback): void; - update(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, shareName: string, fileShare: Models.FileShare, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, accountName, shareName, + fileShare, options }, updateOperationSpec, @@ -192,7 +200,7 @@ export class FileShares { * @param [options] The optional parameters * @returns Promise */ - get(resourceGroupName: string, accountName: string, shareName: string, options?: msRest.RequestOptionsBase): Promise; + get(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesGetOptionalParams): Promise; /** * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. @@ -219,8 +227,8 @@ export class FileShares { * @param options The optional parameters * @param callback The callback */ - get(resourceGroupName: string, accountName: string, shareName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(resourceGroupName: string, accountName: string, shareName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get(resourceGroupName: string, accountName: string, shareName: string, options: Models.FileSharesGetOptionalParams, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, shareName: string, options?: Models.FileSharesGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { resourceGroupName, @@ -286,6 +294,71 @@ export class FileShares { callback); } + /** + * Restore a file share within a valid retention days if share soft delete is enabled + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param shareName The name of the file share within the specified storage account. File share + * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash + * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or + * number. + * @param deletedShareName Required. Identify the name of the deleted share that will be restored. + * @param deletedShareVersion Required. Identify the version of the deleted share that will be + * restored. + * @param [options] The optional parameters + * @returns Promise + */ + restore(resourceGroupName: string, accountName: string, shareName: string, deletedShareName: string, deletedShareVersion: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param shareName The name of the file share within the specified storage account. File share + * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash + * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or + * number. + * @param deletedShareName Required. Identify the name of the deleted share that will be restored. + * @param deletedShareVersion Required. Identify the version of the deleted share that will be + * restored. + * @param callback The callback + */ + restore(resourceGroupName: string, accountName: string, shareName: string, deletedShareName: string, deletedShareVersion: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param shareName The name of the file share within the specified storage account. File share + * names must be between 3 and 63 characters in length and use numbers, lower-case letters and dash + * (-) only. Every dash (-) character must be immediately preceded and followed by a letter or + * number. + * @param deletedShareName Required. Identify the name of the deleted share that will be restored. + * @param deletedShareVersion Required. Identify the version of the deleted share that will be + * restored. + * @param options The optional parameters + * @param callback The callback + */ + restore(resourceGroupName: string, accountName: string, shareName: string, deletedShareName: string, deletedShareVersion: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + restore(resourceGroupName: string, accountName: string, shareName: string, deletedShareName: string, deletedShareVersion: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + shareName, + deletedShareName, + deletedShareVersion, + options + }, + restoreOperationSpec, + callback); + } + /** * Lists all shares. * @param nextPageLink The NextLink from the previous successful call to List operation. @@ -328,7 +401,8 @@ const listOperationSpec: msRest.OperationSpec = { queryParameters: [ Parameters.apiVersion, Parameters.maxpagesize, - Parameters.filter + Parameters.filter, + Parameters.expand2 ], headerParameters: [ Parameters.acceptLanguage @@ -360,16 +434,7 @@ const createOperationSpec: msRest.OperationSpec = { Parameters.acceptLanguage ], requestBody: { - parameterPath: { - metadata: [ - "options", - "metadata" - ], - shareQuota: [ - "options", - "shareQuota" - ] - }, + parameterPath: "fileShare", mapper: { ...Mappers.FileShare, required: true @@ -405,16 +470,7 @@ const updateOperationSpec: msRest.OperationSpec = { Parameters.acceptLanguage ], requestBody: { - parameterPath: { - metadata: [ - "options", - "metadata" - ], - shareQuota: [ - "options", - "shareQuota" - ] - }, + parameterPath: "fileShare", mapper: { ...Mappers.FileShare, required: true @@ -441,7 +497,8 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion + Parameters.apiVersion, + Parameters.expand3 ], headerParameters: [ Parameters.acceptLanguage @@ -482,6 +539,40 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { serializer }; +const restoreOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.shareName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + deletedShareName: "deletedShareName", + deletedShareVersion: "deletedShareVersion" + }, + mapper: { + ...Mappers.DeletedShare, + required: true + } + }, + responses: { + 200: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + const listNextOperationSpec: msRest.OperationSpec = { httpMethod: "GET", baseUrl: "https://management.azure.com", diff --git a/sdk/storage/arm-storage/src/operations/index.ts b/sdk/storage/arm-storage/src/operations/index.ts index af5df33ba851..a075eef490eb 100644 --- a/sdk/storage/arm-storage/src/operations/index.ts +++ b/sdk/storage/arm-storage/src/operations/index.ts @@ -15,8 +15,13 @@ export * from "./usages"; export * from "./managementPolicies"; export * from "./privateEndpointConnections"; export * from "./privateLinkResources"; +export * from "./objectReplicationPoliciesOperations"; export * from "./encryptionScopes"; export * from "./blobServices"; export * from "./blobContainers"; export * from "./fileServices"; export * from "./fileShares"; +export * from "./queueServices"; +export * from "./queue"; +export * from "./tableServices"; +export * from "./tableOperations"; diff --git a/sdk/storage/arm-storage/src/operations/objectReplicationPoliciesOperations.ts b/sdk/storage/arm-storage/src/operations/objectReplicationPoliciesOperations.ts new file mode 100644 index 000000000000..f62c6b9045f1 --- /dev/null +++ b/sdk/storage/arm-storage/src/operations/objectReplicationPoliciesOperations.ts @@ -0,0 +1,331 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/objectReplicationPoliciesOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { StorageManagementClientContext } from "../storageManagementClientContext"; + +/** Class representing a ObjectReplicationPoliciesOperations. */ +export class ObjectReplicationPoliciesOperations { + private readonly client: StorageManagementClientContext; + + /** + * Create a ObjectReplicationPoliciesOperations. + * @param {StorageManagementClientContext} client Reference to the service client. + */ + constructor(client: StorageManagementClientContext) { + this.client = client; + } + + /** + * List the object replication policies associated with the storage account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get the object replication policy of the storage account by policy ID. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + objectReplicationPolicyId, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Create or update the object replication policy of the storage account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param properties The object replication policy set to a storage account. A unique policy ID + * will be created if absent. + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, properties: Models.ObjectReplicationPolicy, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param properties The object replication policy set to a storage account. A unique policy ID + * will be created if absent. + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, properties: Models.ObjectReplicationPolicy, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param properties The object replication policy set to a storage account. A unique policy ID + * will be created if absent. + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, properties: Models.ObjectReplicationPolicy, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, properties: Models.ObjectReplicationPolicy, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + objectReplicationPolicyId, + properties, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Deletes the object replication policy associated with the specified storage account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param objectReplicationPolicyId The ID of object replication policy or 'default' if the policy + * ID is unknown. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, objectReplicationPolicyId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + objectReplicationPolicyId, + options + }, + deleteMethodOperationSpec, + callback); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ObjectReplicationPolicies + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.objectReplicationPolicyId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ObjectReplicationPolicy + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.objectReplicationPolicyId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "properties", + mapper: { + ...Mappers.ObjectReplicationPolicy, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.ObjectReplicationPolicy + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.objectReplicationPolicyId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + serializer +}; diff --git a/sdk/storage/arm-storage/src/operations/privateEndpointConnections.ts b/sdk/storage/arm-storage/src/operations/privateEndpointConnections.ts index 1a4daaf4c90c..94e50622fd8a 100644 --- a/sdk/storage/arm-storage/src/operations/privateEndpointConnections.ts +++ b/sdk/storage/arm-storage/src/operations/privateEndpointConnections.ts @@ -26,6 +26,47 @@ export class PrivateEndpointConnections { this.client = client; } + /** + * List all the private endpoint connections associated with the storage account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + /** * Gets the specified private endpoint connection associated with the storage account. * @param resourceGroupName The name of the resource group within the user's subscription. The name @@ -34,7 +75,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param [options] The optional parameters * @returns Promise */ @@ -46,7 +87,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param callback The callback */ get(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; @@ -57,7 +98,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param options The optional parameters * @param callback The callback */ @@ -82,7 +123,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param properties The private endpoint connection properties. * @param [options] The optional parameters * @returns Promise @@ -95,7 +136,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param properties The private endpoint connection properties. * @param callback The callback */ @@ -107,7 +148,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param properties The private endpoint connection properties. * @param options The optional parameters * @param callback The callback @@ -134,7 +175,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param [options] The optional parameters * @returns Promise */ @@ -146,7 +187,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param callback The callback */ deleteMethod(resourceGroupName: string, accountName: string, privateEndpointConnectionName: string, callback: msRest.ServiceCallback): void; @@ -157,7 +198,7 @@ export class PrivateEndpointConnections { * account names must be between 3 and 24 characters in length and use numbers and lower-case * letters only. * @param privateEndpointConnectionName The name of the private endpoint connection associated with - * the Storage Account + * the Azure resource * @param options The optional parameters * @param callback The callback */ @@ -177,6 +218,31 @@ export class PrivateEndpointConnections { // Operation Specifications const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.PrivateEndpointConnectionListResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}", diff --git a/sdk/storage/arm-storage/src/operations/queue.ts b/sdk/storage/arm-storage/src/operations/queue.ts new file mode 100644 index 000000000000..970bb8634956 --- /dev/null +++ b/sdk/storage/arm-storage/src/operations/queue.ts @@ -0,0 +1,489 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/queueMappers"; +import * as Parameters from "../models/parameters"; +import { StorageManagementClientContext } from "../storageManagementClientContext"; + +/** Class representing a Queue. */ +export class Queue { + private readonly client: StorageManagementClientContext; + + /** + * Create a Queue. + * @param {StorageManagementClientContext} client Reference to the service client. + */ + constructor(client: StorageManagementClientContext) { + this.client = client; + } + + /** + * Creates a new queue with the specified queue name, under the specified account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param [options] The optional parameters + * @returns Promise + */ + create(resourceGroupName: string, accountName: string, queueName: string, options?: Models.QueueCreateOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param callback The callback + */ + create(resourceGroupName: string, accountName: string, queueName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param options The optional parameters + * @param callback The callback + */ + create(resourceGroupName: string, accountName: string, queueName: string, options: Models.QueueCreateOptionalParams, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, queueName: string, options?: Models.QueueCreateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + queueName, + options + }, + createOperationSpec, + callback) as Promise; + } + + /** + * Creates a new queue with the specified queue name, under the specified account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, accountName: string, queueName: string, options?: Models.QueueUpdateOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param callback The callback + */ + update(resourceGroupName: string, accountName: string, queueName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, accountName: string, queueName: string, options: Models.QueueUpdateOptionalParams, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, queueName: string, options?: Models.QueueUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + queueName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Gets the queue with the specified queue name, under the specified account if it exists. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, accountName: string, queueName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, queueName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, queueName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, queueName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + queueName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Deletes the queue with the specified queue name, under the specified account if it exists. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, accountName: string, queueName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, queueName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param queueName A queue name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of lowercase alphanumeric and dash(-) characters only, it + * should begin and end with an alphanumeric character and it cannot have two consecutive dash(-) + * characters. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, queueName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, queueName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + queueName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Gets a list of all the queues under the specified storage account + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: Models.QueueListOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: Models.QueueListOptionalParams, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: Models.QueueListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Gets a list of all the queues under the specified storage account + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const createOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + metadata: [ + "options", + "metadata" + ] + }, + mapper: { + ...Mappers.StorageQueue, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.StorageQueue + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + metadata: [ + "options", + "metadata" + ] + }, + mapper: { + ...Mappers.StorageQueue, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.StorageQueue + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.StorageQueue + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion, + Parameters.maxpagesize, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListQueueResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListQueueResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/storage/arm-storage/src/operations/queueServices.ts b/sdk/storage/arm-storage/src/operations/queueServices.ts new file mode 100644 index 000000000000..2a10d91a854d --- /dev/null +++ b/sdk/storage/arm-storage/src/operations/queueServices.ts @@ -0,0 +1,244 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/queueServicesMappers"; +import * as Parameters from "../models/parameters"; +import { StorageManagementClientContext } from "../storageManagementClientContext"; + +/** Class representing a QueueServices. */ +export class QueueServices { + private readonly client: StorageManagementClientContext; + + /** + * Create a QueueServices. + * @param {StorageManagementClientContext} client Reference to the service client. + */ + constructor(client: StorageManagementClientContext) { + this.client = client; + } + + /** + * List all queue services for the storage account + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Sets the properties of a storage account’s Queue service, including properties for Storage + * Analytics and CORS (Cross-Origin Resource Sharing) rules. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + setServiceProperties(resourceGroupName: string, accountName: string, options?: Models.QueueServicesSetServicePropertiesOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + setServiceProperties(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + setServiceProperties(resourceGroupName: string, accountName: string, options: Models.QueueServicesSetServicePropertiesOptionalParams, callback: msRest.ServiceCallback): void; + setServiceProperties(resourceGroupName: string, accountName: string, options?: Models.QueueServicesSetServicePropertiesOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + setServicePropertiesOperationSpec, + callback) as Promise; + } + + /** + * Gets the properties of a storage account’s Queue service, including properties for Storage + * Analytics and CORS (Cross-Origin Resource Sharing) rules. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + getServiceProperties(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + getServiceProperties(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + getServiceProperties(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + getServiceProperties(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + getServicePropertiesOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListQueueServices + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const setServicePropertiesOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueServiceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + cors: [ + "options", + "cors" + ] + }, + mapper: { + ...Mappers.QueueServiceProperties, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.QueueServiceProperties + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getServicePropertiesOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/{queueServiceName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.queueServiceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.QueueServiceProperties + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/storage/arm-storage/src/operations/tableOperations.ts b/sdk/storage/arm-storage/src/operations/tableOperations.ts new file mode 100644 index 000000000000..8baa303e9b3e --- /dev/null +++ b/sdk/storage/arm-storage/src/operations/tableOperations.ts @@ -0,0 +1,451 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/tableOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { StorageManagementClientContext } from "../storageManagementClientContext"; + +/** Class representing a TableOperations. */ +export class TableOperations { + private readonly client: StorageManagementClientContext; + + /** + * Create a TableOperations. + * @param {StorageManagementClientContext} client Reference to the service client. + */ + constructor(client: StorageManagementClientContext) { + this.client = client; + } + + /** + * Creates a new table with the specified table name, under the specified account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param [options] The optional parameters + * @returns Promise + */ + create(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param callback The callback + */ + create(resourceGroupName: string, accountName: string, tableName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param options The optional parameters + * @param callback The callback + */ + create(resourceGroupName: string, accountName: string, tableName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + create(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + tableName, + options + }, + createOperationSpec, + callback) as Promise; + } + + /** + * Creates a new table with the specified table name, under the specified account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param callback The callback + */ + update(resourceGroupName: string, accountName: string, tableName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, accountName: string, tableName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + tableName, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Gets the table with the specified table name, under the specified account if it exists. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, tableName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, accountName: string, tableName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + tableName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Deletes the table with the specified table name, under the specified account if it exists. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, tableName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param tableName A table name must be unique within a storage account and must be between 3 and + * 63 characters.The name must comprise of only alphanumeric characters and it cannot begin with a + * numeric character. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, accountName: string, tableName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, accountName: string, tableName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + tableName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Gets a list of all the tables under the specified storage account + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Gets a list of all the tables under the specified storage account + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const createOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Table + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Table + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Table + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListTableResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListTableResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/storage/arm-storage/src/operations/tableServices.ts b/sdk/storage/arm-storage/src/operations/tableServices.ts new file mode 100644 index 000000000000..21c066d0e2c8 --- /dev/null +++ b/sdk/storage/arm-storage/src/operations/tableServices.ts @@ -0,0 +1,244 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/tableServicesMappers"; +import * as Parameters from "../models/parameters"; +import { StorageManagementClientContext } from "../storageManagementClientContext"; + +/** Class representing a TableServices. */ +export class TableServices { + private readonly client: StorageManagementClientContext; + + /** + * Create a TableServices. + * @param {StorageManagementClientContext} client Reference to the service client. + */ + constructor(client: StorageManagementClientContext) { + this.client = client; + } + + /** + * List all table services for the storage account. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Sets the properties of a storage account’s Table service, including properties for Storage + * Analytics and CORS (Cross-Origin Resource Sharing) rules. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + setServiceProperties(resourceGroupName: string, accountName: string, options?: Models.TableServicesSetServicePropertiesOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + setServiceProperties(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + setServiceProperties(resourceGroupName: string, accountName: string, options: Models.TableServicesSetServicePropertiesOptionalParams, callback: msRest.ServiceCallback): void; + setServiceProperties(resourceGroupName: string, accountName: string, options?: Models.TableServicesSetServicePropertiesOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + setServicePropertiesOperationSpec, + callback) as Promise; + } + + /** + * Gets the properties of a storage account’s Table service, including properties for Storage + * Analytics and CORS (Cross-Origin Resource Sharing) rules. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param [options] The optional parameters + * @returns Promise + */ + getServiceProperties(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param callback The callback + */ + getServiceProperties(resourceGroupName: string, accountName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param accountName The name of the storage account within the specified resource group. Storage + * account names must be between 3 and 24 characters in length and use numbers and lower-case + * letters only. + * @param options The optional parameters + * @param callback The callback + */ + getServiceProperties(resourceGroupName: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + getServiceProperties(resourceGroupName: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + options + }, + getServicePropertiesOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ListTableServices + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const setServicePropertiesOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableServiceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: { + cors: [ + "options", + "cors" + ] + }, + mapper: { + ...Mappers.TableServiceProperties, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.TableServiceProperties + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getServicePropertiesOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/{tableServiceName}", + urlParameters: [ + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.subscriptionId, + Parameters.tableServiceName + ], + queryParameters: [ + Parameters.apiVersion + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.TableServiceProperties + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/storage/arm-storage/src/storageManagementClient.ts b/sdk/storage/arm-storage/src/storageManagementClient.ts index 7277405a90f2..771e681eda69 100644 --- a/sdk/storage/arm-storage/src/storageManagementClient.ts +++ b/sdk/storage/arm-storage/src/storageManagementClient.ts @@ -24,11 +24,16 @@ class StorageManagementClient extends StorageManagementClientContext { managementPolicies: operations.ManagementPolicies; privateEndpointConnections: operations.PrivateEndpointConnections; privateLinkResources: operations.PrivateLinkResources; + objectReplicationPolicies: operations.ObjectReplicationPoliciesOperations; encryptionScopes: operations.EncryptionScopes; blobServices: operations.BlobServices; blobContainers: operations.BlobContainers; fileServices: operations.FileServices; fileShares: operations.FileShares; + queueServices: operations.QueueServices; + queue: operations.Queue; + tableServices: operations.TableServices; + table: operations.TableOperations; /** * Initializes a new instance of the StorageManagementClient class. @@ -45,11 +50,16 @@ class StorageManagementClient extends StorageManagementClientContext { this.managementPolicies = new operations.ManagementPolicies(this); this.privateEndpointConnections = new operations.PrivateEndpointConnections(this); this.privateLinkResources = new operations.PrivateLinkResources(this); + this.objectReplicationPolicies = new operations.ObjectReplicationPoliciesOperations(this); this.encryptionScopes = new operations.EncryptionScopes(this); this.blobServices = new operations.BlobServices(this); this.blobContainers = new operations.BlobContainers(this); this.fileServices = new operations.FileServices(this); this.fileShares = new operations.FileShares(this); + this.queueServices = new operations.QueueServices(this); + this.queue = new operations.Queue(this); + this.tableServices = new operations.TableServices(this); + this.table = new operations.TableOperations(this); } }