diff --git a/src/Storage/Storage.Autorest/Properties/AssemblyInfo.cs b/src/Storage/Storage.Autorest/Properties/AssemblyInfo.cs index 080d0804b519..15ff485c600d 100644 --- a/src/Storage/Storage.Autorest/Properties/AssemblyInfo.cs +++ b/src/Storage/Storage.Autorest/Properties/AssemblyInfo.cs @@ -20,7 +20,7 @@ [assembly: System.Reflection.AssemblyCopyrightAttribute("Copyright © Microsoft")] [assembly: System.Reflection.AssemblyProductAttribute("Microsoft Azure PowerShell")] [assembly: System.Reflection.AssemblyTitleAttribute("Microsoft Azure PowerShell - Storage")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("9.1.0")] -[assembly: System.Reflection.AssemblyVersionAttribute("9.1.0")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("9.2.0")] +[assembly: System.Reflection.AssemblyVersionAttribute("9.2.0")] [assembly: System.Runtime.InteropServices.ComVisibleAttribute(false)] [assembly: System.CLSCompliantAttribute(false)] diff --git a/src/Storage/Storage.Autorest/README.md b/src/Storage/Storage.Autorest/README.md index 7204c2d7842a..3615b2ea8dad 100644 --- a/src/Storage/Storage.Autorest/README.md +++ b/src/Storage/Storage.Autorest/README.md @@ -33,9 +33,7 @@ require: # readme.azure.noprofile.md is the common configuration file - $(this-folder)/../../readme.azure.noprofile.md input-file: - - $(repo)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/storage.json - - $(repo)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/file.json - - $(repo)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/storageTaskAssignments.json + - https://github.com/welovej/azure-rest-api-specs/blob/bd46040e2bc84dea94b147ae5fa47e5dfe689e4b/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/openapi.json # For new RP, the version is 0.1.0 module-version: 5.9.1 @@ -112,7 +110,7 @@ directive: set: property-name: StorageAccountLimitMaxProvisionedIops - where: - subject: ^StorageAccount$|^StorageAccountKey$|^StorageAccountProperty$|^StorageAccountSas$|^StorageAccountServiceSas$|BlobInventoryPolicy$|^DeletedAccount$|^EncryptionScope$|^LocalUser$|^LocalUserKey$|^ManagementPolicy$|^ObjectReplicationPolicy$|^Usage$|^LocalUserPassword$|^AccountUserDelegationKey$|^AbortStorageAccountHierarchicalNamespaceMigration$|^HierarchicalStorageAccountNamespaceMigration$|^StorageAccountBlobRange$|^StorageAccountUserDelegationKey$|^StorageAccountNameAvailability$|^FileShare$|^FileServiceProperty$|^FileService$ + subject: .*Blob.*|.*Table.*|.*Queue.*|^StorageAccount$|^StorageAccountKey$|^StorageAccountProperty$|^StorageAccountSas$|^StorageAccountServiceSas$|BlobInventoryPolicy$|^DeletedAccount$|^EncryptionScope$|^LocalUser$|^LocalUserKey$|^ManagementPolicy$|^ObjectReplicationPolicy$|^Usage$|^LocalUserPassword$|^AccountUserDelegationKey$|^AbortStorageAccountHierarchicalNamespaceMigration$|^HierarchicalStorageAccountNamespaceMigration$|^StorageAccountBlobRange$|^StorageAccountUserDelegationKey$|^StorageAccountNameAvailability$|^FileShare$|^FileServiceProperty$|^FileService$ remove: true - where: parameter-name: ParameterEndBy @@ -154,16 +152,16 @@ directive: property-name: ParameterStartOn set: property-name: StartOn - - from: storageTaskAssignments.json + - from: openapi.json where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/reports"].get transform: > $["operationId"] = "StorageTaskAssignmentInstancesReport_List" # Renaming the operationId to StorageTaskAssignmentInstancesReport_Get, but the operation actually lists all the reports under a specific storage task assignment. - - from: storageTaskAssignments.json + - from: openapi.json where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}/reports"].get transform: > $["operationId"] = "StorageTaskAssignmentInstancesReport_Get" - - from: storageTaskAssignments.json + - from: openapi.json where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}/reports"].get transform: > $["operationId"] = "StorageTaskAssignmentInstancesReport_Get" diff --git a/src/Storage/Storage.Autorest/README.md.bak b/src/Storage/Storage.Autorest/README.md.bak new file mode 100644 index 000000000000..41f401170642 --- /dev/null +++ b/src/Storage/Storage.Autorest/README.md.bak @@ -0,0 +1,176 @@ + +# Az.Storage +This directory contains the PowerShell module for the Storage service. + +--- +## Info +- Modifiable: yes +- Generated: all +- Committed: yes +- Packaged: yes + +--- +## Detail +This module was primarily generated via [AutoRest](https://github.com/Azure/autorest) using the [PowerShell](https://github.com/Azure/autorest.powershell) extension. + +## Module Requirements +- [Az.Accounts module](https://www.powershellgallery.com/packages/Az.Accounts/), version 2.7.5 or greater + +## Authentication +AutoRest does not generate authentication code for the module. Authentication is handled via Az.Accounts by altering the HTTP payload before it is sent. + +## Development +For information on how to develop for `Az.Storage`, see [how-to.md](how-to.md). + + +### AutoRest Configuration +> see https://aka.ms/autorest + +``` yaml +# Please specify the commit id that includes your features to make sure generated codes stable. +commit: 04b87408ba3b8afed159b3d3059bd1594c7f2dd3 +require: +# readme.azure.noprofile.md is the common configuration file + - $(this-folder)/../../readme.azure.noprofile.md +input-file: + - https://github.com/welovej/azure-rest-api-specs/blob/TspMig-storage/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/openapi.json + +# For new RP, the version is 0.1.0 +module-version: 5.9.1 +# Normally, title is the service name +title: Storage +subject-prefix: $(service-name) +nested-object-to-string: true +identity-correction-for-post: true + +directive: + - where: + variant: ^(Create|Update)(?!.*?Expanded|JsonFilePath|JsonString) + remove: true + - where: + variant: ^CreateViaIdentity.*$ + remove: true + - from: swagger-document + where: $.paths.["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/startAccountMigration"].post.operationId + transform: return "StartAccountMigration" + - remove-operation: StorageAccounts_Update + - remove-operation: FileShares_Lease + - where: + subject: ^StorageAccountCustomerInitiatedMigration$ + set: + subject: StorageAccountMigration + - where: + verb: Start + subject: AccountMigration + hide: true + - where: + variant: ^Customer$|^CustomerViaIdentity$ + remove: true + - where: + parameter-name: StorageAccountMigrationDetailTargetSkuName + set: + parameter-name: TargetSku + - where: + verb: Get + subject: ^StorageTaskAssignment$ + parameter-name: Top + set: + alias: Maxpagesize + - where: + subject: ^FileServiceUsage$ + parameter-name: AccountName + set: + parameter-name: StorageAccountName + - where: + property-name: BurstingConstantBurstFloorIop + set: + property-name: BurstingConstantBurstFloorIops + - where: + property-name: FileShareLimitMaxProvisionedIop + set: + property-name: FileShareLimitMaxProvisionedIops + - where: + property-name: FileShareLimitMinProvisionedIop + set: + property-name: FileShareLimitMinProvisionedIops + - where: + property-name: FileShareRecommendationBaseIop + set: + property-name: FileShareRecommendationBaseIops + - where: + property-name: LiveShareProvisionedIop + set: + property-name: LiveShareProvisionedIops + - where: + property-name: SoftDeletedShareProvisionedIop + set: + property-name: SoftDeletedShareProvisionedIops + - where: + property-name: StorageAccountLimitMaxProvisionedIop + set: + property-name: StorageAccountLimitMaxProvisionedIops + - where: + subject: .*Blob.*|.*Table.*|.*Queue.*|^StorageAccount$|^StorageAccountKey$|^StorageAccountProperty$|^StorageAccountSas$|^StorageAccountServiceSas$|BlobInventoryPolicy$|^DeletedAccount$|^EncryptionScope$|^LocalUser$|^LocalUserKey$|^ManagementPolicy$|^ObjectReplicationPolicy$|^Usage$|^LocalUserPassword$|^AccountUserDelegationKey$|^AbortStorageAccountHierarchicalNamespaceMigration$|^HierarchicalStorageAccountNamespaceMigration$|^StorageAccountBlobRange$|^StorageAccountUserDelegationKey$|^StorageAccountNameAvailability$|^FileShare$|^FileServiceProperty$|^FileService$ + remove: true + - where: + parameter-name: ParameterEndBy + set: + parameter-name: EndBy + - where: + parameter-name: ParameterInterval + set: + parameter-name: Interval + - where: + parameter-name: ParameterIntervalUnit + set: + parameter-name: IntervalUnit + - where: + parameter-name: ParameterStartFrom + set: + parameter-name: StartFrom + - where: + parameter-name: ParameterStartOn + set: + parameter-name: StartOn + - where: + property-name: ParameterEndBy + set: + property-name: EndBy + - where: + property-name: ParameterInterval + set: + property-name: Interval + - where: + property-name: ParameterIntervalUnit + set: + property-name: IntervalUnit + - where: + property-name: ParameterStartFrom + set: + property-name: StartFrom + - where: + property-name: ParameterStartOn + set: + property-name: StartOn + - from: openapi.json + where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/reports"].get + transform: > + $["operationId"] = "StorageTaskAssignmentInstancesReport_List" + # Renaming the operationId to StorageTaskAssignmentInstancesReport_Get, but the operation actually lists all the reports under a specific storage task assignment. + - from: openapi.json + where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}/reports"].get + transform: > + $["operationId"] = "StorageTaskAssignmentInstancesReport_Get" + - from: openapi.json + where: $.paths["/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}/reports"].get + transform: > + $["operationId"] = "StorageTaskAssignmentInstancesReport_Get" + - where: + model-name: StorageTaskReportInstance + set: + suppress-format: true + - where: + model-name: ^SkuInformation$ + set: + suppress-format: true +``` diff --git a/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-networkSecurityPerimeterConfigurations.json b/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-networkSecurityPerimeterConfigurations.json new file mode 100644 index 000000000000..835da00fa830 --- /dev/null +++ b/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-networkSecurityPerimeterConfigurations.json @@ -0,0 +1,95 @@ +{ + "resourceType": "storageAccounts/networkSecurityPerimeterConfigurations", + "apiVersion": "2025-01-01", + "learnMore": { + "url": "https://learn.microsoft.com/powershell/module/az.storage" + }, + "commands": [ + { + "name": "Get-AzStorageNetworkSecurityPerimeterConfiguration", + "description": "Gets effective NetworkSecurityPerimeterConfiguration for association", + "path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}", + "help": { + "learnMore": { + "url": "https://learn.microsoft.com/powershell/module/az.storage/get-azstoragenetworksecurityperimeterconfiguration" + }, + "parameterSets": [ + { + "parameters": [ + "-AccountName ", + "-Name ", + "-ResourceGroupName ", + "[-SubscriptionId ]" + ] + } + ] + }, + "examples": [ + { + "description": "Gets effective NetworkSecurityPerimeterConfiguration for association", + "parameters": [ + { + "name": "-AccountName", + "value": "[Path.accountName]" + }, + { + "name": "-Name", + "value": "[Path.networkSecurityPerimeterConfigurationName]" + }, + { + "name": "-ResourceGroupName", + "value": "[Path.resourceGroupName]" + }, + { + "name": "-SubscriptionId", + "value": "[Path.subscriptionId]" + } + ] + } + ] + }, + { + "name": "Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration", + "description": "Refreshes any information about the association.", + "path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}/reconcile", + "help": { + "learnMore": { + "url": "https://learn.microsoft.com/powershell/module/az.storage/invoke-azstoragereconcilenetworksecurityperimeterconfiguration" + }, + "parameterSets": [ + { + "parameters": [ + "-AccountName ", + "-NetworkSecurityPerimeterConfigurationName ", + "-ResourceGroupName ", + "[-SubscriptionId ]" + ] + } + ] + }, + "examples": [ + { + "description": "Refreshes any information about the association.", + "parameters": [ + { + "name": "-AccountName", + "value": "[Path.accountName]" + }, + { + "name": "-NetworkSecurityPerimeterConfigurationName", + "value": "[Path.networkSecurityPerimeterConfigurationName]" + }, + { + "name": "-ResourceGroupName", + "value": "[Path.resourceGroupName]" + }, + { + "name": "-SubscriptionId", + "value": "[Path.subscriptionId]" + } + ] + } + ] + } + ] +} diff --git a/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-fileServices-usages.json b/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts.json similarity index 91% rename from src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-fileServices-usages.json rename to src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts.json index b98f10f72f40..8255e97ccfb5 100644 --- a/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts-fileServices-usages.json +++ b/src/Storage/Storage.Autorest/UX/Microsoft.Storage/storageAccounts.json @@ -1,5 +1,5 @@ { - "resourceType": "storageAccounts/fileServices/usages", + "resourceType": "storageAccounts", "apiVersion": "2025-01-01", "learnMore": { "url": "https://learn.microsoft.com/powershell/module/az.storage" @@ -8,7 +8,7 @@ { "name": "Get-AzStorageFileServiceUsage", "description": "Gets the usage of file service in storage account including account limits, file share limits and constants used in recommendations and bursting formula.", - "path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}/usages/{fileServiceUsagesName}", + "path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/usages/default", "help": { "learnMore": { "url": "https://learn.microsoft.com/powershell/module/az.storage/get-azstoragefileserviceusage" diff --git a/src/Storage/Storage.Autorest/docs/Az.Storage.md b/src/Storage/Storage.Autorest/docs/Az.Storage.md index 4e48830dc97c..3151a4ca5250 100644 --- a/src/Storage/Storage.Autorest/docs/Az.Storage.md +++ b/src/Storage/Storage.Autorest/docs/Az.Storage.md @@ -1,6 +1,6 @@ --- Module Name: Az.Storage -Module Guid: 4deee175-f94f-4dfd-80d5-fd7c43018494 +Module Guid: 983607ec-bcd9-4156-87aa-ab77eadbbc36 Download Help Link: https://learn.microsoft.com/powershell/module/az.storage Help Version: 1.0.0.0 Locale: en-US @@ -17,6 +17,9 @@ Gets the status of the ongoing migration for the specified storage account. ### [Get-AzStorageFileServiceUsage](Get-AzStorageFileServiceUsage.md) Gets the usage of file service in storage account including account limits, file share limits and constants used in recommendations and bursting formula. +### [Get-AzStorageNetworkSecurityPerimeterConfiguration](Get-AzStorageNetworkSecurityPerimeterConfiguration.md) +Gets effective NetworkSecurityPerimeterConfiguration for association + ### [Get-AzStorageSku](Get-AzStorageSku.md) Lists the available SKUs supported by Microsoft.Storage for given subscription. @@ -26,6 +29,9 @@ Get the storage task assignment properties ### [Get-AzStorageTaskAssignmentInstancesReport](Get-AzStorageTaskAssignmentInstancesReport.md) Fetch the report summary of a single storage task assignment's instances +### [Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration](Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md) +Refreshes any information about the association. + ### [New-AzStorageTaskAssignment](New-AzStorageTaskAssignment.md) Asynchronously create a new storage task assignment sub-resource with the specified parameters. If a storage task assignment is already created and a subsequent create request is issued with different properties, the storage task assignment properties will be updated. diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageAccountMigration.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageAccountMigration.md index 31b51db7e94b..b32224ce6317 100644 --- a/src/Storage/Storage.Autorest/docs/Get-AzStorageAccountMigration.md +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageAccountMigration.md @@ -97,7 +97,7 @@ Accept wildcard characters: False ``` ### -ResourceGroupName -The name of the resource group within the user's subscription. +The name of the resource group. The name is case insensitive. ```yaml @@ -114,6 +114,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageFileServiceUsage.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageFileServiceUsage.md index c414af4bf551..3fbe6c1363d5 100644 --- a/src/Storage/Storage.Autorest/docs/Get-AzStorageFileServiceUsage.md +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageFileServiceUsage.md @@ -123,7 +123,7 @@ Accept wildcard characters: False ``` ### -ResourceGroupName -The name of the resource group within the user's subscription. +The name of the resource group. The name is case insensitive. ```yaml @@ -156,6 +156,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..29eb4a0d9afb --- /dev/null +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,191 @@ +--- +external help file: +Module Name: Az.Storage +online version: https://learn.microsoft.com/powershell/module/az.storage/get-azstoragenetworksecurityperimeterconfiguration +schema: 2.0.0 +--- + +# Get-AzStorageNetworkSecurityPerimeterConfiguration + +## SYNOPSIS +Gets effective NetworkSecurityPerimeterConfiguration for association + +## SYNTAX + +### List (Default) +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -AccountName -ResourceGroupName + [-SubscriptionId ] [-DefaultProfile ] [] +``` + +### Get +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -AccountName -Name + -ResourceGroupName [-SubscriptionId ] [-DefaultProfile ] [] +``` + +### GetViaIdentity +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -InputObject + [-DefaultProfile ] [] +``` + +### GetViaIdentityStorageAccount +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -Name + -StorageAccountInputObject [-DefaultProfile ] [] +``` + +## DESCRIPTION +Gets effective NetworkSecurityPerimeterConfiguration for association + +## EXAMPLES + +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +## PARAMETERS + +### -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. + +```yaml +Type: System.String +Parameter Sets: Get, List +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DefaultProfile +The DefaultProfile parameter is not functional. +Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription. + +```yaml +Type: System.Management.Automation.PSObject +Parameter Sets: (All) +Aliases: AzureRMContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: GetViaIdentity +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name +The name for Network Security Perimeter configuration + +```yaml +Type: System.String +Parameter Sets: Get, GetViaIdentityStorageAccount +Aliases: NetworkSecurityPerimeterConfigurationName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourceGroupName +The name of the resource group. +The name is case insensitive. + +```yaml +Type: System.String +Parameter Sets: Get, List +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StorageAccountInputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: GetViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -SubscriptionId +The ID of the target subscription. +The value must be an UUID. + +```yaml +Type: System.String[] +Parameter Sets: Get, List +Aliases: + +Required: False +Position: Named +Default value: (Get-AzContext).Subscription.Id +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity + +## OUTPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.INetworkSecurityPerimeterConfiguration + +## NOTES + +## RELATED LINKS + diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageSku.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageSku.md index 366b47748b76..52cbe82ac9b3 100644 --- a/src/Storage/Storage.Autorest/docs/Get-AzStorageSku.md +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageSku.md @@ -74,6 +74,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignment.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignment.md index 82ff65ead316..abb2783b2ec5 100644 --- a/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignment.md @@ -194,6 +194,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignmentInstancesReport.md b/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignmentInstancesReport.md index 004d3baec881..d93ee076242a 100644 --- a/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignmentInstancesReport.md +++ b/src/Storage/Storage.Autorest/docs/Get-AzStorageTaskAssignmentInstancesReport.md @@ -246,6 +246,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Autorest/docs/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Autorest/docs/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..b38fce0d4554 --- /dev/null +++ b/src/Storage/Storage.Autorest/docs/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,263 @@ +--- +external help file: +Module Name: Az.Storage +online version: https://learn.microsoft.com/powershell/module/az.storage/invoke-azstoragereconcilenetworksecurityperimeterconfiguration +schema: 2.0.0 +--- + +# Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration + +## SYNOPSIS +Refreshes any information about the association. + +## SYNTAX + +### Reconcile (Default) +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration -AccountName + -NetworkSecurityPerimeterConfigurationName -ResourceGroupName [-SubscriptionId ] + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] [] +``` + +### ReconcileViaIdentity +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration -InputObject + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] [] +``` + +### ReconcileViaIdentityStorageAccount +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration + -NetworkSecurityPerimeterConfigurationName -StorageAccountInputObject + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-Confirm] [-WhatIf] [] +``` + +## DESCRIPTION +Refreshes any information about the association. + +## EXAMPLES + +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +## PARAMETERS + +### -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. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AsJob +Run the command as a job + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DefaultProfile +The DefaultProfile parameter is not functional. +Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription. + +```yaml +Type: System.Management.Automation.PSObject +Parameter Sets: (All) +Aliases: AzureRMContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: ReconcileViaIdentity +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -NetworkSecurityPerimeterConfigurationName +The name for Network Security Perimeter configuration + +```yaml +Type: System.String +Parameter Sets: Reconcile, ReconcileViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NoWait +Run the command asynchronously + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PassThru +Returns true when the command succeeds + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourceGroupName +The name of the resource group. +The name is case insensitive. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StorageAccountInputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: ReconcileViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -SubscriptionId +The ID of the target subscription. +The value must be an UUID. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: False +Position: Named +Default value: (Get-AzContext).Subscription.Id +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. +The cmdlet is not run. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity + +## OUTPUTS + +### System.Boolean + +## NOTES + +## RELATED LINKS + diff --git a/src/Storage/Storage.Autorest/docs/New-AzStorageTaskAssignment.md b/src/Storage/Storage.Autorest/docs/New-AzStorageTaskAssignment.md index da4aba49a252..020f0d60cc77 100644 --- a/src/Storage/Storage.Autorest/docs/New-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Autorest/docs/New-AzStorageTaskAssignment.md @@ -323,7 +323,7 @@ Accept wildcard characters: False ### -StartOn When to start task execution. -This is a required field when ExecutionTrigger.properties.type is 'RunOnce'; this property should not be present when ExecutionTrigger.properties.type is 'OnSchedule' +This is an optional field when ExecutionTrigger.properties.type is 'RunOnce'; this property should not be present when ExecutionTrigger.properties.type is 'OnSchedule' ```yaml Type: System.DateTime @@ -339,6 +339,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.Autorest/docs/Remove-AzStorageTaskAssignment.md b/src/Storage/Storage.Autorest/docs/Remove-AzStorageTaskAssignment.md index 2401c77693a4..0ef1f193ba30 100644 --- a/src/Storage/Storage.Autorest/docs/Remove-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Autorest/docs/Remove-AzStorageTaskAssignment.md @@ -186,6 +186,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.Autorest/docs/Update-AzStorageTaskAssignment.md b/src/Storage/Storage.Autorest/docs/Update-AzStorageTaskAssignment.md index 0ee983904a24..73afdf1af0f0 100644 --- a/src/Storage/Storage.Autorest/docs/Update-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Autorest/docs/Update-AzStorageTaskAssignment.md @@ -340,6 +340,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.Autorest/examples/Get-AzStorageNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Autorest/examples/Get-AzStorageNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..0371f56c36d2 --- /dev/null +++ b/src/Storage/Storage.Autorest/examples/Get-AzStorageNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,22 @@ +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + diff --git a/src/Storage/Storage.Autorest/examples/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Autorest/examples/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..0371f56c36d2 --- /dev/null +++ b/src/Storage/Storage.Autorest/examples/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,22 @@ +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + diff --git a/src/Storage/Storage.Autorest/generate-info.json b/src/Storage/Storage.Autorest/generate-info.json index bf1bca329d14..782f68a77e72 100644 --- a/src/Storage/Storage.Autorest/generate-info.json +++ b/src/Storage/Storage.Autorest/generate-info.json @@ -1,3 +1,3 @@ { - "generate_Id": "5261f671-6e33-479c-b602-b675c12ccf82" + "generate_Id": "d36f51c6-72d1-4086-b2ee-8fe9db27ec25" } diff --git a/src/Storage/Storage.Autorest/test/Get-AzStorageNetworkSecurityPerimeterConfiguration.Tests.ps1 b/src/Storage/Storage.Autorest/test/Get-AzStorageNetworkSecurityPerimeterConfiguration.Tests.ps1 new file mode 100644 index 000000000000..21c16ae64cd9 --- /dev/null +++ b/src/Storage/Storage.Autorest/test/Get-AzStorageNetworkSecurityPerimeterConfiguration.Tests.ps1 @@ -0,0 +1,33 @@ +if(($null -eq $TestName) -or ($TestName -contains 'Get-AzStorageNetworkSecurityPerimeterConfiguration')) +{ + $loadEnvPath = Join-Path $PSScriptRoot 'loadEnv.ps1' + if (-Not (Test-Path -Path $loadEnvPath)) { + $loadEnvPath = Join-Path $PSScriptRoot '..\loadEnv.ps1' + } + . ($loadEnvPath) + $TestRecordingFile = Join-Path $PSScriptRoot 'Get-AzStorageNetworkSecurityPerimeterConfiguration.Recording.json' + $currentPath = $PSScriptRoot + while(-not $mockingPath) { + $mockingPath = Get-ChildItem -Path $currentPath -Recurse -Include 'HttpPipelineMocking.ps1' -File + $currentPath = Split-Path -Path $currentPath -Parent + } + . ($mockingPath | Select-Object -First 1).FullName +} + +Describe 'Get-AzStorageNetworkSecurityPerimeterConfiguration' { + It 'List' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } + + It 'Get' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } + + It 'GetViaIdentityStorageAccount' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } + + It 'GetViaIdentity' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } +} diff --git a/src/Storage/Storage.Autorest/test/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.Tests.ps1 b/src/Storage/Storage.Autorest/test/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.Tests.ps1 new file mode 100644 index 000000000000..cb14d852e560 --- /dev/null +++ b/src/Storage/Storage.Autorest/test/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.Tests.ps1 @@ -0,0 +1,29 @@ +if(($null -eq $TestName) -or ($TestName -contains 'Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration')) +{ + $loadEnvPath = Join-Path $PSScriptRoot 'loadEnv.ps1' + if (-Not (Test-Path -Path $loadEnvPath)) { + $loadEnvPath = Join-Path $PSScriptRoot '..\loadEnv.ps1' + } + . ($loadEnvPath) + $TestRecordingFile = Join-Path $PSScriptRoot 'Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.Recording.json' + $currentPath = $PSScriptRoot + while(-not $mockingPath) { + $mockingPath = Get-ChildItem -Path $currentPath -Recurse -Include 'HttpPipelineMocking.ps1' -File + $currentPath = Split-Path -Path $currentPath -Parent + } + . ($mockingPath | Select-Object -First 1).FullName +} + +Describe 'Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration' { + It 'Reconcile' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } + + It 'ReconcileViaIdentityStorageAccount' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } + + It 'ReconcileViaIdentity' -skip { + { throw [System.NotImplementedException] } | Should -Not -Throw + } +} diff --git a/src/Storage/Storage.Autorest/test/New-AzStorageTaskAssignment.Recording.json.bak b/src/Storage/Storage.Autorest/test/New-AzStorageTaskAssignment.Recording.json.bak new file mode 100644 index 000000000000..456346e82a2a --- /dev/null +++ b/src/Storage/Storage.Autorest/test/New-AzStorageTaskAssignment.Recording.json.bak @@ -0,0 +1,1587 @@ +{ + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$PUT+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+1": { + "Request": { + "Method": "PUT", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": "{\r\n \"properties\": {\r\n \"executionContext\": {\r\n \"trigger\": {\r\n \"parameters\": {\r\n \"startOn\": \"2201-11-10T02:35:29.5008697+08:00\"\r\n },\r\n \"type\": \"RunOnce\"\r\n }\r\n },\r\n \"report\": {\r\n \"prefix\": \"testc1\"\r\n },\r\n \"taskId\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\r\n \"enabled\": false,\r\n \"description\": \"task assignment1\"\r\n }\r\n}", + "isContentBase64": false, + "Headers": { + }, + "ContentHeaders": { + "Content-Type": [ "application/json" ], + "Content-Length": [ "475" ] + } + }, + "Response": { + "StatusCode": 201, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000b702-0000-0200-0000-684fbbbd0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/57ef56c2-b6e5-446f-b0fb-3eb3dc93011a" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4" ], + "x-ms-request-id": [ "080ef35d-08c1-4551-91b8-46f82ba43c5a" ], + "x-ms-correlation-request-id": [ "c6813da9-a53e-41e1-afb7-28e32c295492" ], + "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-writes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063749Z:c6813da9-a53e-41e1-afb7-28e32c295492" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: F675226B7A534F2585C5C08BF1DCA33F Ref B: MAA201060516039 Ref C: 2025-06-16T06:37:46Z" ], + "Date": [ "Mon, 16 Jun 2025 06:37:49 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "671" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"name\":\"testassignment01\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"executionContext\":{\"trigger\":{\"parameters\":{\"startOn\":\"2201-11-10T02:35:29.5008697+08:00\"},\"type\":\"RunOnce\"}},\"report\":{\"prefix\":\"testc1\"},\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"provisioningState\":\"Accepted\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4+2": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "4" ], + "x-ms-client-request-id": [ "715082e5-aa1c-48c4-9098-28be087d2a14" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800faa3-0000-0200-0000-684fbbbc0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/5c9c8f62-1b55-4d16-8666-000cbcfddf77" ], + "x-ms-request-id": [ "e435c390-0aaa-4b53-bfd3-e195cd025366" ], + "x-ms-correlation-request-id": [ "8469dfcc-2b03-4a3a-a666-40142b011c78" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063820Z:8469dfcc-2b03-4a3a-a666-40142b011c78" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 6D994E34CFA84AE0B7584CB282C222EA Ref B: MAA201060516039 Ref C: 2025-06-16T06:38:20Z" ], + "Date": [ "Mon, 16 Jun 2025 06:38:20 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:37:48.8565535Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4+3": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "5" ], + "x-ms-client-request-id": [ "715082e5-aa1c-48c4-9098-28be087d2a14" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800faa3-0000-0200-0000-684fbbbc0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/5c2790cf-28a2-4738-b79e-b3d0881d979e" ], + "x-ms-request-id": [ "59dd20d8-9398-41be-ae98-6d7977757cef" ], + "x-ms-correlation-request-id": [ "c8e03d44-f004-4e86-91fd-9a9dbdf601ec" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063852Z:c8e03d44-f004-4e86-91fd-9a9dbdf601ec" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: CA934974748C40FDB65FE783AA573360 Ref B: MAA201060516039 Ref C: 2025-06-16T06:38:51Z" ], + "Date": [ "Mon, 16 Jun 2025 06:38:51 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:37:48.8565535Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4+4": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856526697054192\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=I4cqcs0hM5DTPiLCY_cOgqw2ewNZWFh9xbK7AJvYal3AeoD4K2-OG8hCiCtPFjpjzaxp6_HMFffmfl_FheVhGha28oROhBKmUjyNzxkHz83DZZF1WDc7Ilij9ogtyV9ApCF0lZFdfh5L64a0qml5mTnQrkz_zTIrFhvZm9Wj0N8Rrh7NL-FYU-TBb3sQxI9aRR5-ksEza__8pTBwuY71GqqvGC0_qbxsSdm76S20ZyU_6WG0jSch4RFyz-pJ2vY1QyrlgAURVJNg3sTgOy7Z0Mnr2_EezBhRL_m16JzEzTVT2v2dXlYCS5uOJoH5v5ZR8xkDUK4_K106YE2hb300CQ\u0026h=5ZtPU7zoOvFjEiQP-qDnH4bsmNSPk8vK8zXJs4KM_G4", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "6" ], + "x-ms-client-request-id": [ "715082e5-aa1c-48c4-9098-28be087d2a14" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007723-0000-0600-0000-684fbc000000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/8211eee3-49b7-4673-94ef-061c2efedab7" ], + "x-ms-request-id": [ "cdf2e603-652e-45e8-9651-f1f126e5e578" ], + "x-ms-correlation-request-id": [ "38aa20d3-6ab0-46c7-b5fe-8703ddded9d6" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063923Z:38aa20d3-6ab0-46c7-b5fe-8703ddded9d6" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 1BCCCADB23B04CCF938EF13076D91905 Ref B: MAA201060516039 Ref C: 2025-06-16T06:39:22Z" ], + "Date": [ "Mon, 16 Jun 2025 06:39:22 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"080ef35d-08c1-4551-91b8-46f82ba43c5a*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:37:48.8565535Z\",\"endTime\":\"2025-06-16T06:38:01.5439232Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+5": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "7" ], + "x-ms-client-request-id": [ "715082e5-aa1c-48c4-9098-28be087d2a14" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02005002-0000-0800-0000-684fbbc90000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/5f9bb6a3-23b8-46c2-8c94-355e182418da" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "65f1d14f-6eca-4026-9cae-097a3a0a3783" ], + "x-ms-correlation-request-id": [ "0a31b961-2538-4887-bcda-252e822aadbe" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063924Z:0a31b961-2538-4887-bcda-252e822aadbe" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: C45CE009EF2E4857BCF75BDDD55C1212 Ref B: MAA201060516039 Ref C: 2025-06-16T06:39:23Z" ], + "Date": [ "Mon, 16 Jun 2025 06:39:23 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "659" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"name\":\"testassignment01\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"executionContext\":{\"trigger\":{\"type\":\"RunOnce\",\"parameters\":{\"startOn\":\"2201-11-09T18:35:29Z\"}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$PUT+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+6": { + "Request": { + "Method": "PUT", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": "{\r\n \"properties\": {\r\n \"executionContext\": {\r\n \"trigger\": {\r\n \"parameters\": {\r\n \"startFrom\": \"2225-01-09T17:30:07.3534556Z\",\r\n \"interval\": 10,\r\n \"intervalUnit\": \"Days\",\r\n \"endBy\": \"2226-01-09T18:35:07.3535271Z\"\r\n },\r\n \"type\": \"OnSchedule\"\r\n }\r\n },\r\n \"report\": {\r\n \"prefix\": \"testc1\"\r\n },\r\n \"taskId\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\r\n \"enabled\": false,\r\n \"description\": \"test assignment2\"\r\n }\r\n}", + "isContentBase64": false, + "Headers": { + }, + "ContentHeaders": { + "Content-Type": [ "application/json" ], + "Content-Length": [ "589" ] + } + }, + "Response": { + "StatusCode": 201, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000bf02-0000-0200-0000-684fbc1e0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/880904cf-7ab0-4a11-adf5-2bf26648ef5c" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA" ], + "x-ms-request-id": [ "8f8170de-a7ab-472d-ba95-c95235db63d2" ], + "x-ms-correlation-request-id": [ "df07a832-a8cb-476f-b469-14783c3f1330" ], + "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-writes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063926Z:df07a832-a8cb-476f-b469-14783c3f1330" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 1A78EC442BFC47B79BC3BD8FEBE1528D Ref B: MAA201060516039 Ref C: 2025-06-16T06:39:24Z" ], + "Date": [ "Mon, 16 Jun 2025 06:39:26 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "746" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"name\":\"testassignment02\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"executionContext\":{\"trigger\":{\"parameters\":{\"startFrom\":\"2225-01-09T17:30:07.3534556Z\",\"interval\":10,\"intervalUnit\":\"Days\",\"endBy\":\"2226-01-09T18:35:07.3535271Z\"},\"type\":\"OnSchedule\"}},\"report\":{\"prefix\":\"testc1\"},\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"test assignment2\",\"provisioningState\":\"Accepted\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA+7": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "9" ], + "x-ms-client-request-id": [ "3a39344d-ad76-465d-9b29-c29099538788" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800caa6-0000-0200-0000-684fbc1e0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/744f7034-85cd-4f7e-916e-af024289903e" ], + "x-ms-request-id": [ "6d5076a8-8e51-43c0-9745-9697e879a40e" ], + "x-ms-correlation-request-id": [ "197545de-bdef-4a31-8cb9-fdf86f7dad65" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T063958Z:197545de-bdef-4a31-8cb9-fdf86f7dad65" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 4999FEA8D0DA469684C354C169C1634A Ref B: MAA201060516039 Ref C: 2025-06-16T06:39:57Z" ], + "Date": [ "Mon, 16 Jun 2025 06:39:57 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:39:26.4580745Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA+8": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "10" ], + "x-ms-client-request-id": [ "3a39344d-ad76-465d-9b29-c29099538788" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800caa6-0000-0200-0000-684fbc1e0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/1a0e28ac-531f-45e9-8fb7-235471af7078" ], + "x-ms-request-id": [ "11f24a52-e07c-4b87-a7b6-739f08bceced" ], + "x-ms-correlation-request-id": [ "52aa0ff9-2b8b-4a05-b61b-82891cfd26f1" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064029Z:52aa0ff9-2b8b-4a05-b61b-82891cfd26f1" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 4FD1DD49E3EE4C0B96C201A74F0A2C49 Ref B: MAA201060516039 Ref C: 2025-06-16T06:40:28Z" ], + "Date": [ "Mon, 16 Jun 2025 06:40:28 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:39:26.4580745Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA+9": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856527669173170\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=EKtlq74xZO0hcXz9E_r7nHCuytTgvM0HIcUmbxhXX-gMVMtdbddnr2wV6gMdTgGJ_go2GdVFjfXDvOf1GMdmnT_WeZiDroyN6GVk1f3Ii6jvFoGSH6ue8WfThOXnfSGF4aY1E8iWiRlThqqnogd9lVdm9NGYuI6bUIoYQC3vggLHIUuCY-7DohT4KaWhqKR32Ac51Z9mOqK3wNTY9gAuGU8b90tCBrMvlJdMpYYhUzg0MzAnGcv01sC8c-n7lY1YAxpftlk4ACRIeYItExI2PD4mhk60WTsh2Q0G6N3lpu31W-CRjr-twIlAuZVbXR9F18matVg269ua-o5y3eGoHg\u0026h=DPkd4DYOHjgIwB7roUSxwkUqCsrFEcSV8r5gjE6FmXA", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "11" ], + "x-ms-client-request-id": [ "3a39344d-ad76-465d-9b29-c29099538788" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007823-0000-0600-0000-684fbc620000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/79b8c00b-960f-43b0-9472-88281d205285" ], + "x-ms-request-id": [ "008ce31b-2534-4325-adb3-d86c54b2f3d7" ], + "x-ms-correlation-request-id": [ "fc1e85a3-a6d3-4fe5-a767-65f06f964849" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064100Z:fc1e85a3-a6d3-4fe5-a767-65f06f964849" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 6527FA6887634969A53F80FAFEEFF3B7 Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:00Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:00 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"8f8170de-a7ab-472d-ba95-c95235db63d2*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:39:26.4580745Z\",\"endTime\":\"2025-06-16T06:39:41.2177016Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+10": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "12" ], + "x-ms-client-request-id": [ "3a39344d-ad76-465d-9b29-c29099538788" ], + "CommandName": [ "New-AzStorageTaskAssignment" ], + "FullCommandName": [ "New-AzStorageTaskAssignment_CreateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02005f02-0000-0800-0000-684fbc2d0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/06bd8843-1413-498a-955f-b0f8bb168e44" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "a2172581-e76f-4354-b968-0dc8898a6925" ], + "x-ms-correlation-request-id": [ "0309ba10-9f84-40ad-a1d4-62f0fedeb10a" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064102Z:0309ba10-9f84-40ad-a1d4-62f0fedeb10a" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 2815B93F297D44A8A5978731C54378DC Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:01Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:01 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "731" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"name\":\"testassignment02\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"test assignment2\",\"executionContext\":{\"trigger\":{\"type\":\"OnSchedule\",\"parameters\":{\"startFrom\":\"2225-01-09T17:30:07Z\",\"intervalUnit\":\"Days\",\"endBy\":\"2226-01-09T18:35:07Z\",\"interval\":10}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+11": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "13" ], + "x-ms-client-request-id": [ "471adcaa-c3d3-4382-a175-a123222493c0" ], + "CommandName": [ "Get-AzStorageTaskAssignment" ], + "FullCommandName": [ "Get-AzStorageTaskAssignment_Get" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02005002-0000-0800-0000-684fbbc90000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/05171bc6-a0f0-4f22-8633-d71297599eda" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "fede431f-426c-4701-b304-76d90a79fb4e" ], + "x-ms-correlation-request-id": [ "89e90ba6-194a-44eb-aebb-19ca08752a5b" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064103Z:89e90ba6-194a-44eb-aebb-19ca08752a5b" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: C0A3B27E576A4A92BF8AD1201CA5B27E Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:02Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:02 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "659" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"name\":\"testassignment01\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"executionContext\":{\"trigger\":{\"type\":\"RunOnce\",\"parameters\":{\"startOn\":\"2201-11-09T18:35:29Z\"}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+12": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "14" ], + "x-ms-client-request-id": [ "c9443dfd-63d4-4546-83f7-c1b4eeee14ae" ], + "CommandName": [ "Get-AzStorageTaskAssignment" ], + "FullCommandName": [ "Get-AzStorageTaskAssignment_Get" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02005f02-0000-0800-0000-684fbc2d0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/53185db3-9692-4e24-828d-073070405463" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "e2fe0103-4e0c-4311-b00d-917a5b8dc198" ], + "x-ms-correlation-request-id": [ "222848d2-6e22-43b7-b84d-246132102679" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064104Z:222848d2-6e22-43b7-b84d-246132102679" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 481974B8B8B64665A7B8997306E78A7A Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:03Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:03 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "731" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"name\":\"testassignment02\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"test assignment2\",\"executionContext\":{\"trigger\":{\"type\":\"OnSchedule\",\"parameters\":{\"startFrom\":\"2225-01-09T17:30:07Z\",\"intervalUnit\":\"Days\",\"endBy\":\"2226-01-09T18:35:07Z\",\"interval\":10}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments?api-version=2025-01-01+13": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "15" ], + "x-ms-client-request-id": [ "abd39255-ad36-4c1e-a41c-c1c73e2a8d66" ], + "CommandName": [ "Get-AzStorageTaskAssignment" ], + "FullCommandName": [ "Get-AzStorageTaskAssignment_List" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/13d1ca7e-46c3-4107-8a3c-dbfa864b0c9f" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "b242367a-f52b-4234-8ddb-4ff6db12110a" ], + "x-ms-correlation-request-id": [ "aa9a667c-7a23-45fe-bebf-1f44a7024011" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064105Z:aa9a667c-7a23-45fe-bebf-1f44a7024011" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: D9BD46861E314664B98C7FC54D470F08 Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:04Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:05 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "2063" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"value\":[{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment03\",\"name\":\"testassignment03\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"executionContext\":{\"trigger\":{\"type\":\"RunOnce\",\"parameters\":{\"startOn\":\"2025-06-16T06:39:30Z\"}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}},{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"name\":\"testassignment01\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"executionContext\":{\"trigger\":{\"type\":\"RunOnce\",\"parameters\":{\"startOn\":\"2201-11-09T18:35:29Z\"}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}},{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"name\":\"testassignment02\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"test assignment2\",\"executionContext\":{\"trigger\":{\"type\":\"OnSchedule\",\"parameters\":{\"startFrom\":\"2225-01-09T17:30:07Z\",\"intervalUnit\":\"Days\",\"endBy\":\"2226-01-09T18:35:07Z\",\"interval\":10}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}]}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$PATCH+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+14": { + "Request": { + "Method": "PATCH", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": "{\r\n \"properties\": {\r\n \"executionContext\": {\r\n \"trigger\": {\r\n \"parameters\": {\r\n \"startOn\": \"2226-01-09T18:35:07.3535271Z\"\r\n }\r\n }\r\n }\r\n }\r\n}", + "isContentBase64": false, + "Headers": { + }, + "ContentHeaders": { + "Content-Type": [ "application/json" ], + "Content-Length": [ "180" ] + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000c602-0000-0200-0000-684fbc830000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/1fc4ebe3-0975-42ac-9fb8-04e7812bbf50" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg" ], + "x-ms-request-id": [ "a43c1aca-93d8-48bc-b337-d4cfb1a25c91" ], + "x-ms-correlation-request-id": [ "a3287992-e5c9-458b-b867-0bf178ae9dbf" ], + "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-writes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064107Z:a3287992-e5c9-458b-b867-0bf178ae9dbf" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 17B2CE1843C94192916460F3A21AC742 Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:06Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:06 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "4" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "bnVsbA==", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg+15": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "17" ], + "x-ms-client-request-id": [ "2c7e8e94-15b2-4c43-a0ff-f6c63874b361" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"480043ac-0000-0200-0000-684fbc830000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/40cd1921-0efd-4f64-9b7c-87d71b8c3f00" ], + "x-ms-request-id": [ "2fb668ad-6d14-49d8-afbc-eea5902b9a80" ], + "x-ms-correlation-request-id": [ "47866481-5836-40ec-abf9-d0fa86d819d7" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064138Z:47866481-5836-40ec-abf9-d0fa86d819d7" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 76A9BBECEA284663AE48922DD680B51C Ref B: MAA201060516039 Ref C: 2025-06-16T06:41:38Z" ], + "Date": [ "Mon, 16 Jun 2025 06:41:38 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:41:07.1462722Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg+16": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "18" ], + "x-ms-client-request-id": [ "2c7e8e94-15b2-4c43-a0ff-f6c63874b361" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"480043ac-0000-0200-0000-684fbc830000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/c1119814-cf83-4ba0-8243-037e88a0b938" ], + "x-ms-request-id": [ "8207451b-66b0-48b7-9b18-2aea37c6ab00" ], + "x-ms-correlation-request-id": [ "d9293cb4-fd6a-46a9-93e2-3ff9765e1d30" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064210Z:d9293cb4-fd6a-46a9-93e2-3ff9765e1d30" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 499E9B77A9934DB9B9F3443D4892B784 Ref B: MAA201060516039 Ref C: 2025-06-16T06:42:09Z" ], + "Date": [ "Mon, 16 Jun 2025 06:42:09 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:41:07.1462722Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg+17": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856528677028567\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=nT40d5vN8JVc9QxogDuu8huctFVlmZx0pjauz7pcXUYl8buh3iy4RrR3MmRsLYk7MiJqpb2WH01q3nA4_Y_-a4tOwrxcJYOLYAjKO7XaNyh8O12zvg9PB088A_dCKHpIgdfAapB13T4YtynAZX_BWDiqReouOFFrGsyd8dig2yJgi_J1R0NzwfGCoKJDg57bW267OTjKTR8vl7iVdg4dpGuXJsD5vnMt3o0pri6BONftpQxxGyrMviqNypGIflXMfiMwJwByqrJDHskiffBH_H-Srcf8CdS8pHCpmkiZteFooJbJJSo4gYpOuHxaK88zQXfBn-Ye0msiO3m5_SA52g\u0026h=sY7uAuoSspbShuqwZaGdmZnNoPLevuVLoM6VzBjZRXg", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "19" ], + "x-ms-client-request-id": [ "2c7e8e94-15b2-4c43-a0ff-f6c63874b361" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007a23-0000-0600-0000-684fbcc60000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/443469bc-af57-45fb-8826-057d80732057" ], + "x-ms-request-id": [ "93fe7a9e-9fbe-4f9b-8f34-b7fa778c9c10" ], + "x-ms-correlation-request-id": [ "119feb59-387f-43dc-b4bb-53e58416ef2d" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064241Z:119feb59-387f-43dc-b4bb-53e58416ef2d" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: D26C42764B0843578EB35747B10C8AB8 Ref B: MAA201060516039 Ref C: 2025-06-16T06:42:40Z" ], + "Date": [ "Mon, 16 Jun 2025 06:42:40 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"a43c1aca-93d8-48bc-b337-d4cfb1a25c91*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:41:07.1462722Z\",\"endTime\":\"2025-06-16T06:41:18.4524512Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+18": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "20" ], + "x-ms-client-request-id": [ "2c7e8e94-15b2-4c43-a0ff-f6c63874b361" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02007002-0000-0800-0000-684fbc8e0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/85b83aaa-f679-481e-8c61-856edcfa2566" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "5c560d31-41fb-455a-806a-1580d4c58477" ], + "x-ms-correlation-request-id": [ "daf17007-5a72-4b72-a899-11a3ac07edbc" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064242Z:daf17007-5a72-4b72-a899-11a3ac07edbc" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 541BD3A51A63413682DC71A1958A813D Ref B: MAA201060516039 Ref C: 2025-06-16T06:42:41Z" ], + "Date": [ "Mon, 16 Jun 2025 06:42:41 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "659" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"name\":\"testassignment01\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"task assignment1\",\"executionContext\":{\"trigger\":{\"type\":\"RunOnce\",\"parameters\":{\"startOn\":\"2226-01-09T18:35:07Z\"}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$PATCH+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+19": { + "Request": { + "Method": "PATCH", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": "{\r\n \"properties\": {\r\n \"executionContext\": {\r\n \"target\": {\r\n \"excludePrefix\": [ \"ttt\" ]\r\n },\r\n \"trigger\": {\r\n \"parameters\": {\r\n \"interval\": 20,\r\n \"intervalUnit\": \"Days\"\r\n }\r\n }\r\n },\r\n \"enabled\": false,\r\n \"description\": \"update atask assignment\"\r\n }\r\n}", + "isContentBase64": false, + "Headers": { + }, + "ContentHeaders": { + "Content-Type": [ "application/json" ], + "Content-Length": [ "323" ] + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000ce02-0000-0200-0000-684fbce40000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/409ed2fd-5d2a-4386-84fa-5fd28c9f0348" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY" ], + "x-ms-request-id": [ "c003ab53-398e-49eb-bf4a-438b5589828d" ], + "x-ms-correlation-request-id": [ "070102bc-c223-428a-a28f-9f35e061cf7a" ], + "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-writes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064244Z:070102bc-c223-428a-a28f-9f35e061cf7a" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 9E898A9839E941F1B56E3C13346D15AC Ref B: MAA201060516039 Ref C: 2025-06-16T06:42:42Z" ], + "Date": [ "Mon, 16 Jun 2025 06:42:44 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "4" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "bnVsbA==", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY+20": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "22" ], + "x-ms-client-request-id": [ "b844abfa-01c6-42ea-880d-80742d997d9d" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"480061b3-0000-0200-0000-684fbce40000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/20cebef3-1414-49c4-b958-afd158bd3a5d" ], + "x-ms-request-id": [ "3938099d-59f6-4aae-b0b8-92f9751acffc" ], + "x-ms-correlation-request-id": [ "e34bbb5d-cc23-4f26-944a-0cca1df3fb4b" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064316Z:e34bbb5d-cc23-4f26-944a-0cca1df3fb4b" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 7A748365035B4C45AC65F41C5C3AEAEB Ref B: MAA201060516039 Ref C: 2025-06-16T06:43:16Z" ], + "Date": [ "Mon, 16 Jun 2025 06:43:16 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:42:44.4518822Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY+21": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "23" ], + "x-ms-client-request-id": [ "b844abfa-01c6-42ea-880d-80742d997d9d" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"480061b3-0000-0200-0000-684fbce40000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/1d0b4b1b-9edf-44ca-9856-cb29593d1965" ], + "x-ms-request-id": [ "20605172-94aa-4ac8-b951-4060ef9d087f" ], + "x-ms-correlation-request-id": [ "d1b7860b-5f8e-4575-8d39-f8a3cdea7281" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064348Z:d1b7860b-5f8e-4575-8d39-f8a3cdea7281" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 410ADC5B36E44D1AB633AE0F1DA03053 Ref B: MAA201060516039 Ref C: 2025-06-16T06:43:47Z" ], + "Date": [ "Mon, 16 Jun 2025 06:43:47 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Accepted\",\"startTime\":\"2025-06-16T06:42:44.4518822Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY+22": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856529649376040\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=OofMmrLdnQpL2aaIwiBxn1f8pr2foSjcJ8tZx9R8lnoauN7LI2e3iYG5DIhzTx_4eIkJeE1BmiL0T0s8QPz90aqZ4pVXVgpJ3fydaX-R6vDXEHmV2IciThljfneO0KZVNMmq9Nt143NpfHlePuX-c4DZLxiwmylmKrJ_paoE-TZqD7GjuZgGjVmRCe04D2rgCsQeIUzNyVziR7AvcgrtY15GrAUyiT8Bv1NPlIQpcs-zAarpRLN6dCrIcnxjdk0RObnd4YeDPqXn_im_QyKegHXh0fwdDMWPiBBXxHsToXSE6QFcvXd3UaM34R6VT6JmvQhAO1kVaC8hNXb89gTJEw\u0026h=V2uEwA46fQHPHa_ToMmFJahW-Q-dQxgUmCpCOYAChZY", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "24" ], + "x-ms-client-request-id": [ "b844abfa-01c6-42ea-880d-80742d997d9d" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007c23-0000-0600-0000-684fbd280000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/b81a6af2-a581-4620-b28d-dd56347bab80" ], + "x-ms-request-id": [ "f0a86d82-d28b-4f24-b616-2680a6ea5a02" ], + "x-ms-correlation-request-id": [ "82a1c11d-271b-4863-abf6-fd2907f3836f" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064419Z:82a1c11d-271b-4863-abf6-fd2907f3836f" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 94AAA038BD5C421BB99B5E81DF85037D Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:18Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:18 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"c003ab53-398e-49eb-bf4a-438b5589828d*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:42:44.4518822Z\",\"endTime\":\"2025-06-16T06:42:56.1264409Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+23": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "25" ], + "x-ms-client-request-id": [ "b844abfa-01c6-42ea-880d-80742d997d9d" ], + "CommandName": [ "Update-AzStorageTaskAssignment" ], + "FullCommandName": [ "Update-AzStorageTaskAssignment_UpdateExpanded" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"02009602-0000-0800-0000-684fbcf00000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/0b1471a3-e74a-4227-84c6-226b6c08eb3f" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "50e33c98-7353-4a37-96fd-9cbc0b8ca091" ], + "x-ms-correlation-request-id": [ "09ecd03d-b1b5-4632-b466-a42986806e4c" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064420Z:09ecd03d-b1b5-4632-b466-a42986806e4c" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: BBF357DF169744A0A64F7A80BD39E973 Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:19Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:19 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "773" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"name\":\"testassignment02\",\"type\":\"microsoft.storage/storageaccounts/storagetaskassignments\",\"properties\":{\"taskId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/weitry/providers/Microsoft.StorageActions/storageTasks/mytask1\",\"enabled\":false,\"description\":\"update atask assignment\",\"executionContext\":{\"target\":{\"excludePrefix\":[\"ttt\"]},\"trigger\":{\"type\":\"OnSchedule\",\"parameters\":{\"startFrom\":\"2225-01-09T17:30:07Z\",\"intervalUnit\":\"Days\",\"endBy\":\"2226-01-09T18:35:07Z\",\"interval\":20}}},\"report\":{\"prefix\":\"testc1\"},\"provisioningState\":\"Succeeded\"}}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01/reports?api-version=2025-01-01+24": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01/reports?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "26" ], + "x-ms-client-request-id": [ "c4356ffa-d8d6-4131-8fe3-efcd2c04c40a" ], + "CommandName": [ "Get-AzStorageTaskAssignmentInstancesReport" ], + "FullCommandName": [ "Get-AzStorageTaskAssignmentInstancesReport_Get" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/af8186cd-174d-49f7-a0d1-2f2d5dffe520" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "6b6aa0de-8a63-4a41-b9c9-c997154c10eb" ], + "x-ms-correlation-request-id": [ "52ab651a-d1d7-493a-904a-7fb52b4ab59d" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064422Z:52ab651a-d1d7-493a-904a-7fb52b4ab59d" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: B6B61D185A9B4BB49A93CCD9E8207405 Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:20Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:21 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "12" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"value\":[]}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/reports?api-version=2025-01-01+25": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/reports?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "27" ], + "x-ms-client-request-id": [ "34e69574-1caf-4b4c-9788-00299fa609fc" ], + "CommandName": [ "Get-AzStorageTaskAssignmentInstancesReport" ], + "FullCommandName": [ "Get-AzStorageTaskAssignmentInstancesReport_List" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/51f9e20c-6d53-4ba9-8f85-0d5ff3eaffcb" ], + "x-ms-providerhub-traffic": [ "True" ], + "x-ms-request-id": [ "0d2a885c-6533-4dcc-aed7-8ea92a677a20" ], + "x-ms-correlation-request-id": [ "ffb771b8-c5b5-4d9f-8063-159c63249fe6" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064423Z:ffb771b8-c5b5-4d9f-8063-159c63249fe6" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 5481DB02D7DF404986DC7B2E1C35ED4C Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:22Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:22 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "12" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"value\":[]}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$DELETE+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01+26": { + "Request": { + "Method": "DELETE", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "28" ], + "x-ms-client-request-id": [ "b19cafca-c3eb-4860-a941-24521903a043" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000d602-0000-0200-0000-684fbd490000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/8fea24ac-fc66-4c33-86df-4dd5619de6dc" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E" ], + "x-ms-request-id": [ "399e749a-bfaf-4551-82cc-92a255dbc925" ], + "x-ms-correlation-request-id": [ "796be6d7-3318-42f4-a306-191d89198f43" ], + "x-ms-ratelimit-remaining-subscription-deletes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-deletes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064425Z:796be6d7-3318-42f4-a306-191d89198f43" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 9F562216417E43329C08FB512737A91F Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:23Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:24 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "4" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "bnVsbA==", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E+27": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "29" ], + "x-ms-client-request-id": [ "b19cafca-c3eb-4860-a941-24521903a043" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"48000ab6-0000-0200-0000-684fbd480000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530966127318\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=FVxi60guPUAVjg_p1M8Ev8nFr9wIiLoHEHml_L8sRkjTkSDsu0SvtfvlPGqKb7k4cpS11gt5ebUoi_vIjLwz-bCGhojRaHlmoWTW_5CeoUULanxg7fyX3JZlcc0GCMH3-wv_KjO2LLDPu3RvBHELDHY14KSmJ64OT3UFOB--qKs2N5LYubjY8a5ZAn7SKgizx0Idnl40sEKahQu33yWNfe4_6u_L3Xqtk7RZ3vkweEFeKF7eoz20hCV6pT-Q8QhlzX2jycCMyXlVls9ociaiAXVJBNWNYtPmDHJsF7BWDfqeJGXnqu5287LDTngtImJOgSsG8T2dY81I8r-RAI2lzA\u0026h=WLf9rCj1UHX50xUUAZRXOJjFQfBmpUIDtgriGbrKN3Y" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/38006840-b1b9-4f8b-927d-fddf29533cf8" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530965970305\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=MUy-5lPJEGMSd7cd8hsqQy5emZwPs8Ngu0X9JZz19ZzKSc933rZDnacnahAYzwreWHI3T9dm8nMUL4Jtk__3ME28JdFDyor96mZT00NkAZdDSc78zMuIZdGZwJ4y1FgjGHgfy9OOBM7SLD90vN6PMLUBg9p1hAxBjCtHlGPaVASGUGIp8f77OIBBgA6jT8VgtQXuj-BdE9BMexlT4yu_hW8mPPr3n5dL2Uq4wazyVPia40raoBEEvMD9d8bpx5eNtqOjSe4pT3Y49_9f1VHrjZjBXl0mvwtVgESFo3ElUMJVjJh-dewNSQCIGdk5E4EBwsXMaDSBz-ARNzFPQL1PnA\u0026h=4UU0aQS1dd3iIT1oyNuGRXEZpr_Mzn6VFQbIFHZWsKg" ], + "x-ms-request-id": [ "5a7cd18f-5c32-40a4-a4b4-3bddcd65f4f2" ], + "x-ms-correlation-request-id": [ "f058e48f-d000-41d2-abbd-c77429427085" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064456Z:f058e48f-d000-41d2-abbd-c77429427085" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: C2EC968C58AA485EA2CBC914C5E46A17 Ref B: MAA201060516039 Ref C: 2025-06-16T06:44:55Z" ], + "Date": [ "Mon, 16 Jun 2025 06:44:55 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Deleting\",\"startTime\":\"2025-06-16T06:44:24.8380655Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530965970305\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=MUy-5lPJEGMSd7cd8hsqQy5emZwPs8Ngu0X9JZz19ZzKSc933rZDnacnahAYzwreWHI3T9dm8nMUL4Jtk__3ME28JdFDyor96mZT00NkAZdDSc78zMuIZdGZwJ4y1FgjGHgfy9OOBM7SLD90vN6PMLUBg9p1hAxBjCtHlGPaVASGUGIp8f77OIBBgA6jT8VgtQXuj-BdE9BMexlT4yu_hW8mPPr3n5dL2Uq4wazyVPia40raoBEEvMD9d8bpx5eNtqOjSe4pT3Y49_9f1VHrjZjBXl0mvwtVgESFo3ElUMJVjJh-dewNSQCIGdk5E4EBwsXMaDSBz-ARNzFPQL1PnA\u0026h=4UU0aQS1dd3iIT1oyNuGRXEZpr_Mzn6VFQbIFHZWsKg+28": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530965970305\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=MUy-5lPJEGMSd7cd8hsqQy5emZwPs8Ngu0X9JZz19ZzKSc933rZDnacnahAYzwreWHI3T9dm8nMUL4Jtk__3ME28JdFDyor96mZT00NkAZdDSc78zMuIZdGZwJ4y1FgjGHgfy9OOBM7SLD90vN6PMLUBg9p1hAxBjCtHlGPaVASGUGIp8f77OIBBgA6jT8VgtQXuj-BdE9BMexlT4yu_hW8mPPr3n5dL2Uq4wazyVPia40raoBEEvMD9d8bpx5eNtqOjSe4pT3Y49_9f1VHrjZjBXl0mvwtVgESFo3ElUMJVjJh-dewNSQCIGdk5E4EBwsXMaDSBz-ARNzFPQL1PnA\u0026h=4UU0aQS1dd3iIT1oyNuGRXEZpr_Mzn6VFQbIFHZWsKg", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "30" ], + "x-ms-client-request-id": [ "b19cafca-c3eb-4860-a941-24521903a043" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"48000ab6-0000-0200-0000-684fbd480000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856531278912514\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=qXqLq_4Yp8dbpgo0oypO2Kgy08pm06TWN26rtzOT0E45SDId_Vfx_eofO7pOE2WlcceUyzoZFhzSflnMI7nv8u6NeM2-L1vxlFSQqXI1EDBxQ44yUFvy03_pv_aBlvY1NzRIu7DEw5nLHsholNqSHuwF6OOuLpOZK7TFFgLzw4eHM46dPPC_6Lm4Jj77BBz2LdWTwYsPIO4YamKoA_s6eHMjY3QJWqT_rcIL9_Sf4oEdB0Te9FGjHHPvUoUGOXL_tUwYZneD1AkQZMgK2bo_xY8ONewvCbwZcllktwi3MdzxUX2xvH8miUjMIn5i67JydcSr4LEMs0c-eGG6ktIkLw\u0026h=0Etm9FwD0Txk8jvTTfI-kGl_3O_52dcBL03FrCcSXLI" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/60bb6082-b8e0-4281-b055-41dfba2c337b" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856531278912514\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=qXqLq_4Yp8dbpgo0oypO2Kgy08pm06TWN26rtzOT0E45SDId_Vfx_eofO7pOE2WlcceUyzoZFhzSflnMI7nv8u6NeM2-L1vxlFSQqXI1EDBxQ44yUFvy03_pv_aBlvY1NzRIu7DEw5nLHsholNqSHuwF6OOuLpOZK7TFFgLzw4eHM46dPPC_6Lm4Jj77BBz2LdWTwYsPIO4YamKoA_s6eHMjY3QJWqT_rcIL9_Sf4oEdB0Te9FGjHHPvUoUGOXL_tUwYZneD1AkQZMgK2bo_xY8ONewvCbwZcllktwi3MdzxUX2xvH8miUjMIn5i67JydcSr4LEMs0c-eGG6ktIkLw\u0026h=0Etm9FwD0Txk8jvTTfI-kGl_3O_52dcBL03FrCcSXLI" ], + "x-ms-request-id": [ "c4b25d9b-3dad-43f6-be5b-f92b9271e557" ], + "x-ms-correlation-request-id": [ "a23e642e-731f-4483-922e-9f5fd51799c0" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064527Z:a23e642e-731f-4483-922e-9f5fd51799c0" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 1AD2E553B5D048129076DA081C313969 Ref B: MAA201060516039 Ref C: 2025-06-16T06:45:27Z" ], + "Date": [ "Mon, 16 Jun 2025 06:45:27 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Deleting\",\"startTime\":\"2025-06-16T06:44:24.8380655Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856531278912514\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=qXqLq_4Yp8dbpgo0oypO2Kgy08pm06TWN26rtzOT0E45SDId_Vfx_eofO7pOE2WlcceUyzoZFhzSflnMI7nv8u6NeM2-L1vxlFSQqXI1EDBxQ44yUFvy03_pv_aBlvY1NzRIu7DEw5nLHsholNqSHuwF6OOuLpOZK7TFFgLzw4eHM46dPPC_6Lm4Jj77BBz2LdWTwYsPIO4YamKoA_s6eHMjY3QJWqT_rcIL9_Sf4oEdB0Te9FGjHHPvUoUGOXL_tUwYZneD1AkQZMgK2bo_xY8ONewvCbwZcllktwi3MdzxUX2xvH8miUjMIn5i67JydcSr4LEMs0c-eGG6ktIkLw\u0026h=0Etm9FwD0Txk8jvTTfI-kGl_3O_52dcBL03FrCcSXLI+29": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856531278912514\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=qXqLq_4Yp8dbpgo0oypO2Kgy08pm06TWN26rtzOT0E45SDId_Vfx_eofO7pOE2WlcceUyzoZFhzSflnMI7nv8u6NeM2-L1vxlFSQqXI1EDBxQ44yUFvy03_pv_aBlvY1NzRIu7DEw5nLHsholNqSHuwF6OOuLpOZK7TFFgLzw4eHM46dPPC_6Lm4Jj77BBz2LdWTwYsPIO4YamKoA_s6eHMjY3QJWqT_rcIL9_Sf4oEdB0Te9FGjHHPvUoUGOXL_tUwYZneD1AkQZMgK2bo_xY8ONewvCbwZcllktwi3MdzxUX2xvH8miUjMIn5i67JydcSr4LEMs0c-eGG6ktIkLw\u0026h=0Etm9FwD0Txk8jvTTfI-kGl_3O_52dcBL03FrCcSXLI", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "31" ], + "x-ms-client-request-id": [ "b19cafca-c3eb-4860-a941-24521903a043" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007e23-0000-0600-0000-684fbd8c0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/a16eb02e-6de5-4d33-b432-e8eb1ff6430d" ], + "x-ms-request-id": [ "c4bfa932-5adc-4629-8080-2d388862367c" ], + "x-ms-correlation-request-id": [ "dfe59f4d-a0cb-4a4e-93b6-0cddbec2f84d" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064559Z:dfe59f4d-a0cb-4a4e-93b6-0cddbec2f84d" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 1D3A054AEFF04375A9386C9E3DEBDA2C Ref B: MAA201060516039 Ref C: 2025-06-16T06:45:58Z" ], + "Date": [ "Mon, 16 Jun 2025 06:45:58 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:44:24.8380655Z\",\"endTime\":\"2025-06-16T06:44:35.7489967Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E+30": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64?api-version=2025-01-01\u0026t=638856530653270484\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=fJVnv3dlq3JMXUKAuFY_-GErxqpMsztcnVvfZoNX3TNrTNyjjTRDLWy_Pyp6FsH_WIWLr-nfLoLgnhdzmre17xsPQ5JzW4lhCS4d8JsP6RPJKI7R8-cHWjoVkQTjt1s6mU4xdfFtebEEGKGorKe_xW1IgQ0QeVqRE0LDQP_CvYQSUvUuMRYFFMG5HuWYm-e0jSCu4OFH-3sq-WX2w6Zafu1B6pB3fiEYNZHb9gy1VJVjhzAW4bks1UKbWzQbf_cDidwdOax4iKi7tL4UQDperZtdAHSAeuthqWI3fHd2MswULtlE9jSKKLyATNPiE6HEuB5P8_ximphECq8bPTXuKA\u0026h=aBDHdiy3Zc_LUnsP_9lPxnbtC4ARVNoaWskM6vj6B_E", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "32" ], + "x-ms-client-request-id": [ "b19cafca-c3eb-4860-a941-24521903a043" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"00007e23-0000-0600-0000-684fbd8c0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/8ecc70c3-1fe0-4703-a50a-f07690c05f96" ], + "x-ms-request-id": [ "b46d63fd-9355-4747-8085-38c62960a6f5" ], + "x-ms-correlation-request-id": [ "58aadbc5-14f8-4872-aa89-0faa3cfe3853" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1098" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16498" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064559Z:58aadbc5-14f8-4872-aa89-0faa3cfe3853" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: F6C832C5B1C949ED9117A86478A34404 Ref B: MAA201060516039 Ref C: 2025-06-16T06:45:59Z" ], + "Date": [ "Mon, 16 Jun 2025 06:45:58 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"name\":\"399e749a-bfaf-4551-82cc-92a255dbc925*B281AB9F49FD2066E1FB57AE8DE178D75C652BD43A847B2CC21517B6ABBD3A64\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment01\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:44:24.8380655Z\",\"endTime\":\"2025-06-16T06:44:35.7489967Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$DELETE+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01+31": { + "Request": { + "Method": "DELETE", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02?api-version=2025-01-01", + "Content": null, + "isContentBase64": false, + "Headers": { + "x-ms-unique-id": [ "33" ], + "x-ms-client-request-id": [ "2c3c8e62-16da-4fab-be6a-b918d08a59b1" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ], + "Authorization": [ "[Filtered]" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"0000d902-0000-0200-0000-684fbda90000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/512e29ac-6be7-43cd-88cd-aa41ce6f7ffb" ], + "x-ms-providerhub-traffic": [ "True" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M" ], + "x-ms-request-id": [ "42e4c176-da5a-48ce-94be-160fbac8a645" ], + "x-ms-correlation-request-id": [ "9a67458a-05a8-4a24-944e-b786ba5603a5" ], + "x-ms-ratelimit-remaining-subscription-deletes": [ "799" ], + "x-ms-ratelimit-remaining-subscription-global-deletes": [ "11999" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064601Z:9a67458a-05a8-4a24-944e-b786ba5603a5" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 549ADDDE72D8435C9FF56D45726E21CC Ref B: MAA201060516039 Ref C: 2025-06-16T06:45:59Z" ], + "Date": [ "Mon, 16 Jun 2025 06:46:00 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "4" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "bnVsbA==", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M+32": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "34" ], + "x-ms-client-request-id": [ "2c3c8e62-16da-4fab-be6a-b918d08a59b1" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800bcb8-0000-0200-0000-684fbda80000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531926564466\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=kCQmK7nkAxx_To2zEfvDHnEV3FFQdDkK4R7ILWu1aM-q3UZeHQLJ_QWYCO2pg5RZdK5XULTjeFj9_KnXNR9s5A8ImGrAJR23-PxT9u1KscO1RH25ah3fgjqE-Pj1TFawOUq1BAG3WSMHIOIuacZL_l28VtkJEvJIpzKF7fYCnUkMCT2UzA3YcKhZpw4OzQLwG3CqQ1yqn6AESndhpbiQS5Vbu9FM0VYvYETaG_RyCFxF4XMgePGMsNVxn4V723ksx0bz_s3PjPBWHEu5tyem--fz8XrhFA8in0Ud5ycwDbxPRojP5j_1e3ZN5xPPygVR3j2eXXoa8rtlxmU0ZEc1fg\u0026h=-HiIynZo_DBzyPuGzKzPMpJ_NjVD-5BUauNGhXeRMeI" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/3f44a3b2-7479-42fb-abe6-fc3bbe734342" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531926564466\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=kCQmK7nkAxx_To2zEfvDHnEV3FFQdDkK4R7ILWu1aM-q3UZeHQLJ_QWYCO2pg5RZdK5XULTjeFj9_KnXNR9s5A8ImGrAJR23-PxT9u1KscO1RH25ah3fgjqE-Pj1TFawOUq1BAG3WSMHIOIuacZL_l28VtkJEvJIpzKF7fYCnUkMCT2UzA3YcKhZpw4OzQLwG3CqQ1yqn6AESndhpbiQS5Vbu9FM0VYvYETaG_RyCFxF4XMgePGMsNVxn4V723ksx0bz_s3PjPBWHEu5tyem--fz8XrhFA8in0Ud5ycwDbxPRojP5j_1e3ZN5xPPygVR3j2eXXoa8rtlxmU0ZEc1fg\u0026h=-HiIynZo_DBzyPuGzKzPMpJ_NjVD-5BUauNGhXeRMeI" ], + "x-ms-request-id": [ "82720a41-9a04-4078-b878-a368a6c4cacd" ], + "x-ms-correlation-request-id": [ "96b3a2e6-6109-4278-9c2e-85c6e0ccb6b4" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064632Z:96b3a2e6-6109-4278-9c2e-85c6e0ccb6b4" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 402B0627829E44F6B410415E07791B89 Ref B: MAA201060516039 Ref C: 2025-06-16T06:46:31Z" ], + "Date": [ "Mon, 16 Jun 2025 06:46:31 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Deleting\",\"startTime\":\"2025-06-16T06:46:00.8864342Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531926564466\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=kCQmK7nkAxx_To2zEfvDHnEV3FFQdDkK4R7ILWu1aM-q3UZeHQLJ_QWYCO2pg5RZdK5XULTjeFj9_KnXNR9s5A8ImGrAJR23-PxT9u1KscO1RH25ah3fgjqE-Pj1TFawOUq1BAG3WSMHIOIuacZL_l28VtkJEvJIpzKF7fYCnUkMCT2UzA3YcKhZpw4OzQLwG3CqQ1yqn6AESndhpbiQS5Vbu9FM0VYvYETaG_RyCFxF4XMgePGMsNVxn4V723ksx0bz_s3PjPBWHEu5tyem--fz8XrhFA8in0Ud5ycwDbxPRojP5j_1e3ZN5xPPygVR3j2eXXoa8rtlxmU0ZEc1fg\u0026h=-HiIynZo_DBzyPuGzKzPMpJ_NjVD-5BUauNGhXeRMeI+33": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531926564466\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=kCQmK7nkAxx_To2zEfvDHnEV3FFQdDkK4R7ILWu1aM-q3UZeHQLJ_QWYCO2pg5RZdK5XULTjeFj9_KnXNR9s5A8ImGrAJR23-PxT9u1KscO1RH25ah3fgjqE-Pj1TFawOUq1BAG3WSMHIOIuacZL_l28VtkJEvJIpzKF7fYCnUkMCT2UzA3YcKhZpw4OzQLwG3CqQ1yqn6AESndhpbiQS5Vbu9FM0VYvYETaG_RyCFxF4XMgePGMsNVxn4V723ksx0bz_s3PjPBWHEu5tyem--fz8XrhFA8in0Ud5ycwDbxPRojP5j_1e3ZN5xPPygVR3j2eXXoa8rtlxmU0ZEc1fg\u0026h=-HiIynZo_DBzyPuGzKzPMpJ_NjVD-5BUauNGhXeRMeI", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "35" ], + "x-ms-client-request-id": [ "2c3c8e62-16da-4fab-be6a-b918d08a59b1" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 202, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"4800bcb8-0000-0200-0000-684fbda80000\"" ], + "Location": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856532239418588\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=gjwPDor3vgARNNwRwx1K9KIswTJ7pdfN-6QbZqiDF2-4GGz7wkTT6f7p_24YMLf4C32YU3iL7fMkcS_brD4rTmIr7R9n7Olb2Qpp4doJiwt9qHytNMERXjjILi3JjLiEPTre-aTAL9Sa3fYJF9xjs5EXLAl__Pit0MX8LSfsqkJXoTMVZHlKk-gEBzzOaArFrjPn65RKJ4vbfUnpTsjYWoX8gA14xb6BtECP5ZSUbCzXR88wYPqNo9PUHJ9GwlaDuo3Jq2RFiJZOspeZBM0UX7pPBGu4a18fGBDQ9PYCjbI6t0XlXAEvpDSZu6ZvqpXMuRYKarP3QCYV-FrenotSiw\u0026h=O06WwAFdlGFRRpwDPr_wlbNQpDe2siT6PIQcYWUsIK4" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/78438f02-7c57-48bd-aa83-dc79b810f965" ], + "Azure-AsyncOperation": [ "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856532239418588\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=gjwPDor3vgARNNwRwx1K9KIswTJ7pdfN-6QbZqiDF2-4GGz7wkTT6f7p_24YMLf4C32YU3iL7fMkcS_brD4rTmIr7R9n7Olb2Qpp4doJiwt9qHytNMERXjjILi3JjLiEPTre-aTAL9Sa3fYJF9xjs5EXLAl__Pit0MX8LSfsqkJXoTMVZHlKk-gEBzzOaArFrjPn65RKJ4vbfUnpTsjYWoX8gA14xb6BtECP5ZSUbCzXR88wYPqNo9PUHJ9GwlaDuo3Jq2RFiJZOspeZBM0UX7pPBGu4a18fGBDQ9PYCjbI6t0XlXAEvpDSZu6ZvqpXMuRYKarP3QCYV-FrenotSiw\u0026h=O06WwAFdlGFRRpwDPr_wlbNQpDe2siT6PIQcYWUsIK4" ], + "x-ms-request-id": [ "8553d6fd-6005-4ad8-a578-bd0414cf3c03" ], + "x-ms-correlation-request-id": [ "a0d6b4db-e589-420e-badc-cf1c7974aabf" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064703Z:a0d6b4db-e589-420e-badc-cf1c7974aabf" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: FB2FB6A804B64EE7BBF4D34B66115B88 Ref B: MAA201060516039 Ref C: 2025-06-16T06:47:03Z" ], + "Date": [ "Mon, 16 Jun 2025 06:47:03 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "619" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Deleting\",\"startTime\":\"2025-06-16T06:46:00.8864342Z\"}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856532239418588\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=gjwPDor3vgARNNwRwx1K9KIswTJ7pdfN-6QbZqiDF2-4GGz7wkTT6f7p_24YMLf4C32YU3iL7fMkcS_brD4rTmIr7R9n7Olb2Qpp4doJiwt9qHytNMERXjjILi3JjLiEPTre-aTAL9Sa3fYJF9xjs5EXLAl__Pit0MX8LSfsqkJXoTMVZHlKk-gEBzzOaArFrjPn65RKJ4vbfUnpTsjYWoX8gA14xb6BtECP5ZSUbCzXR88wYPqNo9PUHJ9GwlaDuo3Jq2RFiJZOspeZBM0UX7pPBGu4a18fGBDQ9PYCjbI6t0XlXAEvpDSZu6ZvqpXMuRYKarP3QCYV-FrenotSiw\u0026h=O06WwAFdlGFRRpwDPr_wlbNQpDe2siT6PIQcYWUsIK4+34": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856532239418588\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=gjwPDor3vgARNNwRwx1K9KIswTJ7pdfN-6QbZqiDF2-4GGz7wkTT6f7p_24YMLf4C32YU3iL7fMkcS_brD4rTmIr7R9n7Olb2Qpp4doJiwt9qHytNMERXjjILi3JjLiEPTre-aTAL9Sa3fYJF9xjs5EXLAl__Pit0MX8LSfsqkJXoTMVZHlKk-gEBzzOaArFrjPn65RKJ4vbfUnpTsjYWoX8gA14xb6BtECP5ZSUbCzXR88wYPqNo9PUHJ9GwlaDuo3Jq2RFiJZOspeZBM0UX7pPBGu4a18fGBDQ9PYCjbI6t0XlXAEvpDSZu6ZvqpXMuRYKarP3QCYV-FrenotSiw\u0026h=O06WwAFdlGFRRpwDPr_wlbNQpDe2siT6PIQcYWUsIK4", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "36" ], + "x-ms-client-request-id": [ "2c3c8e62-16da-4fab-be6a-b918d08a59b1" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"04000d73-0000-4d00-0000-684fbdec0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/609a77fd-c198-49a2-a9ab-abf1f5e32815" ], + "x-ms-request-id": [ "2fe33c3f-b17a-4c37-9689-90c0624aef8e" ], + "x-ms-correlation-request-id": [ "5234d0f2-1a39-446f-8992-74d8fda7ef02" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064735Z:5234d0f2-1a39-446f-8992-74d8fda7ef02" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: 4A72C0A60ADF48BC958FEF57A5641A01 Ref B: MAA201060516039 Ref C: 2025-06-16T06:47:34Z" ], + "Date": [ "Mon, 16 Jun 2025 06:47:34 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:46:00.8864342Z\",\"endTime\":\"2025-06-16T06:46:13.0350146Z\",\"properties\":null}", + "isContentBase64": false + } + }, + "New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+[NoContext]+New/Get/Update/Remove-AzStorageTaskAssignment, List task assignment reports+$GET+https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M+35": { + "Request": { + "Method": "GET", + "RequestUri": "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA?api-version=2025-01-01\u0026t=638856531613486291\u0026c=MIIHhzCCBm-gAwIBAgITfAeDEnPW_KxJbq8EjgAAB4MSczANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUwHhcNMjUwNDIwMTUyMDI3WhcNMjUxMDE3MTUyMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALO1SAvt4DI7FxxBmZBcfoKDLiXpS8U5adZbRlRvVm-EcAWqGNnVo1AxaXu3ghKMY95LxffhvcYAZ56WhgOxA_gpAUzm4t0yW0aVzv7vAOWZHIG1fvTcWY_sHCkuTyCNAcRbNbaqbidaK9ZOTQ19baUQ26kVkP7tjTi6DWWRlM25d4YQcGaWJoBwUtol-hgB5Z_rVMljRF5Q1T9_3YpRBw57SpHvmb30JNQSpndyeu--Ip8pMwpNaiIRF70G8WfbTBoJhRqNqNAKBLU3CAVV4H6lYrXtSK-gkZC0EzjZ4ze_XVDGBd1sOPsbMx4aQgZEiuDJuuk9eqTzzur3IDUdrP0CAwEAAaOCBHQwggRwMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHLBggrBgEFBQcBAQSCAb0wggG5MGMGCCsGAQUFBzAChldodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9DTzFQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA1LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDMuYW1lLmdibC9haWEvQ08xUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNS5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0NPMVBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3J0MB0GA1UdDgQWBBSRrAa71kVppeoZonY7QPy_R7XWQzAOBgNVHQ8BAf8EBAMCBaAwggEmBgNVHR8EggEdMIIBGTCCARWgggERoIIBDYY_aHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JshjFodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDUuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBR61hmFKHlscXYeYPjzS--iBUIWHTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAChQXwS0_EaMb7G3BWGDeoNhAAEaoKkJVUy5HVGyWKADFm6Tp2WidwOIMoOu-IuoA634ORJ7bIwsC2WhUA0Z8-c2AAD956dAtCkn5pEBXSqwuKMM3l9KOClAY1RiAQcP-GWtmb_mqZspO78GHaq-mwiyIDUICM-uZl-qR6UVt6rLn5xPqHNkenxrslS_G3IJ9yCV1sflxhz93B7VR9H7BtOxd_nqZOD5uSV3OpPnATTRO0KB3VBbZ0KqvdtWoHjNywLqMuhJUufHw2zmlQ-Yj3ndha_yTvOQlT-85ikSoyWI0P4_GeEwX9RdkiVHVzx3gR8HzFKkJXOwRvxQE_9Ov_0\u0026s=jyMdlp0ZbytWizgg0dRssXBERTceALrpou4jWwbwsag-Di2LLX5b1VioMwO-dVIIWBCphqKGWFbMGyIlk31t5ddLSzmrPvDLkyMFqEouYrIiYjCIkRl3FDpEzNAcD63QY6VaO_2xDGEjTC0H5jrdxE-oSKF0oXUpGkg2j_f40sHg6688ArRjB3JYA3W-3v_QZEA1pMghEbmIAWTJr9QaJZ_aO5qtAhSKqlPdiEhh5URm9_njyZFesHUiJqQtoRkh3Gu904A-CnCF626IBw1k9BOqQRkz9cmKWV0vbjyDd4x2G2_j-oD0k_krdCt6ZHdSyBBqfbiTF1B_DmnTGZfU0g\u0026h=i7mcvlFharb8vp2P4rkpLA35n_NdkgXVXw27O33MO_M", + "Content": null, + "isContentBase64": false, + "Headers": { + "Authorization": [ "[Filtered]" ], + "x-ms-unique-id": [ "37" ], + "x-ms-client-request-id": [ "2c3c8e62-16da-4fab-be6a-b918d08a59b1" ], + "CommandName": [ "Remove-AzStorageTaskAssignment" ], + "FullCommandName": [ "Remove-AzStorageTaskAssignment_Delete" ], + "ParameterSetName": [ "__AllParameterSets" ], + "User-Agent": [ "AzurePowershell/v14.1.0", "PSVersion/v7.5.1", "Az.Storage/0.1.0" ] + }, + "ContentHeaders": { + } + }, + "Response": { + "StatusCode": 200, + "Headers": { + "Cache-Control": [ "no-cache" ], + "Pragma": [ "no-cache" ], + "ETag": [ "\"04000d73-0000-4d00-0000-684fbdec0000\"" ], + "x-ms-operation-identifier": [ "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/b981e940-b52c-442c-ac51-6732ebef5246" ], + "x-ms-request-id": [ "e160e70c-d393-4d4e-b0aa-45c4254ae995" ], + "x-ms-correlation-request-id": [ "da961cc4-cada-4caa-bcd3-05995362a12c" ], + "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], + "x-ms-ratelimit-remaining-subscription-global-reads": [ "16499" ], + "x-ms-routing-request-id": [ "SOUTHEASTASIA:20250616T064736Z:da961cc4-cada-4caa-bcd3-05995362a12c" ], + "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "X-Content-Type-Options": [ "nosniff" ], + "X-Cache": [ "CONFIG_NOCACHE" ], + "X-MSEdge-Ref": [ "Ref A: F303B533562543088A40E141BE1831F1 Ref B: MAA201060516039 Ref C: 2025-06-16T06:47:35Z" ], + "Date": [ "Mon, 16 Jun 2025 06:47:35 GMT" ] + }, + "ContentHeaders": { + "Content-Length": [ "679" ], + "Content-Type": [ "application/json; charset=utf-8" ], + "Expires": [ "-1" ] + }, + "Content": "{\"id\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/EASTUS2/ActionsRPOperationStatuses/42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"name\":\"42e4c176-da5a-48ce-94be-160fbac8a645*0B0AB8B1C84235486E3A9769A888BEA3F2894225183C5EDB8E6E5BB77607CBEA\",\"resourceId\":\"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/testtaskassignmentrg/providers/Microsoft.Storage/storageAccounts/testassignmentaccount2/storageTaskAssignments/testassignment02\",\"status\":\"Succeeded\",\"startTime\":\"2025-06-16T06:46:00.8864342Z\",\"endTime\":\"2025-06-16T06:46:13.0350146Z\",\"properties\":null}", + "isContentBase64": false + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperations.cs index 6db85dd7e65f..cffe3aa6adb2 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperations.cs @@ -43,8 +43,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// SRP today does not return continuation token. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -89,6 +88,12 @@ internal BlobContainersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -103,10 +108,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -127,22 +128,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } @@ -167,9 +152,9 @@ internal BlobContainersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -248,14 +233,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -265,10 +249,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -295,7 +275,7 @@ internal BlobContainersOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -319,14 +299,10 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Creates a new container under the specified account as described by request - /// body. The container resource includes metadata and properties for that - /// container. It does not include a list of the blobs contained by the - /// container. + /// Gets properties of a specified container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -339,9 +315,6 @@ internal BlobContainersOperations (StorageManagementClient client) /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Properties of the blob container to create. - /// /// /// Headers that will be added to request. /// @@ -363,17 +336,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (blobContainer == null) + if (this.Client.ApiVersion == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "blobContainer"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -388,10 +362,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -427,22 +397,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -454,19 +408,18 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("blobContainer", blobContainer); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -480,7 +433,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -509,12 +462,6 @@ internal BlobContainersOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(blobContainer != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(blobContainer, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -537,16 +484,15 @@ internal BlobContainersOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200 && (int)_statusCode != 201) + if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -556,10 +502,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -598,24 +540,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } - // Deserialize Response - if ((int)_statusCode == 201) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -628,13 +552,13 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Updates container properties as specified in request body. Properties not - /// mentioned in the request will be unchanged. Update fails if the specified - /// container doesn't already exist. + /// Creates a new container under the specified account as described by request + /// body. The container resource includes metadata and properties for that + /// container. It does not include a list of the blobs contained by the + /// container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -648,7 +572,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// must be immediately preceded and followed by a letter or number. /// /// - /// Properties to update for the blob container. + /// Properties of the blob container to create. /// /// /// Headers that will be added to request. @@ -671,7 +595,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -681,6 +605,13 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "blobContainer"); } + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -695,10 +626,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -734,22 +661,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -764,16 +675,16 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("blobContainer", blobContainer); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -787,7 +698,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -844,16 +755,15 @@ internal BlobContainersOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200) + if ((int)_statusCode != 200 && (int)_statusCode != 201) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -863,10 +773,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -905,6 +811,24 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } + // Deserialize Response + if ((int)_statusCode == 201) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -917,11 +841,12 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Gets properties of a specified container. + /// Updates container properties as specified in request body. Properties not + /// mentioned in the request will be unchanged. Update fails if the specified + /// container doesn't already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -934,6 +859,9 @@ internal BlobContainersOperations (StorageManagementClient client) /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// Properties to update for the blob container. + /// /// /// Headers that will be added to request. /// @@ -955,12 +883,22 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (blobContainer == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "blobContainer"); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -975,10 +913,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1014,22 +948,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1041,18 +959,19 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); + tracingParameters.Add("blobContainer", blobContainer); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1066,7 +985,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1095,6 +1014,12 @@ internal BlobContainersOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(blobContainer != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(blobContainer, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -1119,14 +1044,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1136,10 +1060,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1193,8 +1113,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// Deletes specified container under its account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1231,6 +1150,12 @@ internal BlobContainersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1245,10 +1170,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1284,22 +1205,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1319,10 +1224,10 @@ internal BlobContainersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1389,14 +1294,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 204) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1406,10 +1310,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1442,13 +1342,12 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Sets legal hold tags. Setting the same tag results in an idempotent - /// operation. SetLegalHold follows an append pattern and does not clear out - /// the existing tags that are not specified in the request. + /// Clears legal hold tags. Clearing the same or non-existent tag results in an + /// idempotent operation. ClearLegalHold clears out only the specified tags in + /// the request. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1491,12 +1390,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> SetLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> ClearLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1511,10 +1416,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1550,27 +1451,11 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) + LegalHold legalHold = new LegalHold(); + if(tags != null||allowProtectedAppendWritesAll != null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - LegalHold legalHold = new LegalHold(); - if(tags != null||allowProtectedAppendWritesAll != null) - { - legalHold.Tags = tags; - legalHold.AllowProtectedAppendWritesAll = allowProtectedAppendWritesAll; + legalHold.Tags = tags; + legalHold.AllowProtectedAppendWritesAll = allowProtectedAppendWritesAll; } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -1586,16 +1471,16 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("legalHold", legalHold); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetLegalHold", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ClearLegalHold", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1668,14 +1553,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1685,10 +1569,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1739,13 +1619,11 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Clears legal hold tags. Clearing the same or non-existent tag results in an - /// idempotent operation. ClearLegalHold clears out only the specified tags in - /// the request. + /// Gets the existing immutability policy along with the corresponding ETag in + /// response headers and body. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1758,14 +1636,10 @@ internal BlobContainersOperations (StorageManagementClient client) /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Each tag should be 3 to 23 alphanumeric characters and is normalized to - /// lower case at SRP. - /// - /// - /// When enabled, new blocks can be written to both 'Append and Bock Blobs' - /// while maintaining legal hold protection and compliance. Only new blocks can - /// be added and any existing blocks cannot be modified or deleted. + /// + /// The entity state (ETag) version of the immutability policy to update must + /// be returned to the server for all update operations. The ETag value must + /// include the leading and trailing double quotes as returned by the service. /// /// /// Headers that will be added to request. @@ -1788,12 +1662,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> ClearLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1808,10 +1688,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1847,28 +1723,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - LegalHold legalHold = new LegalHold(); - if(tags != null||allowProtectedAppendWritesAll != null) - { - legalHold.Tags = tags; - legalHold.AllowProtectedAppendWritesAll = allowProtectedAppendWritesAll; - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1879,20 +1734,20 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); + tracingParameters.Add("ifMatch", ifMatch); - tracingParameters.Add("legalHold", legalHold); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ClearLegalHold", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetImmutabilityPolicy", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/clearLegalHold").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1906,7 +1761,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1921,6 +1776,14 @@ internal BlobContainersOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } + if (ifMatch != null) + { + if (_httpRequest.Headers.Contains("If-Match")) + { + _httpRequest.Headers.Remove("If-Match"); + } + _httpRequest.Headers.TryAddWithoutValidation("If-Match", ifMatch); + } if (customHeaders != null) { @@ -1935,12 +1798,6 @@ internal BlobContainersOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(legalHold != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(legalHold, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -1965,14 +1822,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1982,10 +1838,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1998,7 +1850,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2012,7 +1864,7 @@ internal BlobContainersOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -2024,6 +1876,19 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -2040,8 +1905,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// honored if given but not required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2088,9 +1952,15 @@ internal BlobContainersOperations (StorageManagementClient client) { - string immutabilityPolicyName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2105,10 +1975,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2145,23 +2011,6 @@ internal BlobContainersOperations (StorageManagementClient client) } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -2172,7 +2021,6 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("immutabilityPolicyName", immutabilityPolicyName); tracingParameters.Add("ifMatch", ifMatch); tracingParameters.Add("parameters", parameters); @@ -2183,12 +2031,11 @@ internal BlobContainersOperations (StorageManagementClient client) // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{immutabilityPolicyName}", System.Uri.EscapeDataString(immutabilityPolicyName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -2269,14 +2116,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -2286,10 +2132,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -2353,12 +2195,14 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Gets the existing immutability policy along with the corresponding ETag in - /// response headers and body. + /// Aborts an unlocked immutability policy. The response of delete has + /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + /// required for this operation. Deleting a locked immutability policy is not + /// allowed, the only way is to delete the container after deleting all expired + /// blobs inside the policy locked container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2397,12 +2241,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> DeleteImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string immutabilityPolicyName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2417,10 +2267,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2456,22 +2302,9 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + if (ifMatch == null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "ifMatch"); } // Tracing @@ -2484,22 +2317,20 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("immutabilityPolicyName", immutabilityPolicyName); tracingParameters.Add("ifMatch", ifMatch); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetImmutabilityPolicy", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "DeleteImmutabilityPolicy", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{immutabilityPolicyName}", System.Uri.EscapeDataString(immutabilityPolicyName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -2513,7 +2344,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -2574,14 +2405,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -2591,10 +2421,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -2607,7 +2433,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2635,7 +2461,7 @@ internal BlobContainersOperations (StorageManagementClient client) } try { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); } catch (Newtonsoft.Json.JsonException ex) { @@ -2658,15 +2484,12 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Aborts an unlocked immutability policy. The response of delete has - /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is - /// required for this operation. Deleting a locked immutability policy is not - /// allowed, the only way is to delete the container after deleting all expired - /// blobs inside the policy locked container. + /// Extends the immutabilityPeriodSinceCreationInDays of a locked + /// immutabilityPolicy. The only action allowed on a Locked policy will be this + /// action. ETag in If-Match is required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2684,6 +2507,9 @@ internal BlobContainersOperations (StorageManagementClient client) /// be returned to the server for all update operations. The ETag value must /// include the leading and trailing double quotes as returned by the service. /// + /// + /// The content of the action request + /// /// /// Headers that will be added to request. /// @@ -2705,12 +2531,19 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> DeleteImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> ExtendImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string immutabilityPolicyName = "default"; + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2725,10 +2558,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2764,23 +2593,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (ifMatch == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "ifMatch"); @@ -2796,22 +2608,21 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("immutabilityPolicyName", immutabilityPolicyName); tracingParameters.Add("ifMatch", ifMatch); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "DeleteImmutabilityPolicy", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ExtendImmutabilityPolicy", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/{immutabilityPolicyName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{immutabilityPolicyName}", System.Uri.EscapeDataString(immutabilityPolicyName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -2825,7 +2636,7 @@ internal BlobContainersOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); + _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -2862,6 +2673,12 @@ internal BlobContainersOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -2886,14 +2703,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -2903,10 +2719,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -2919,7 +2731,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2947,7 +2759,7 @@ internal BlobContainersOperations (StorageManagementClient client) } try { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); } catch (Newtonsoft.Json.JsonException ex) { @@ -2975,8 +2787,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -3021,6 +2832,12 @@ internal BlobContainersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3035,10 +2852,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3074,22 +2887,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (ifMatch == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "ifMatch"); @@ -3115,10 +2912,10 @@ internal BlobContainersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/lock").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -3193,14 +2990,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3210,10 +3006,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3277,13 +3069,12 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// Extends the immutabilityPeriodSinceCreationInDays of a locked - /// immutabilityPolicy. The only action allowed on a Locked policy will be this - /// action. ETag in If-Match is required for this operation. + /// The Lease Container operation establishes and manages a lock on a container + /// for delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -3296,14 +3087,8 @@ internal BlobContainersOperations (StorageManagementClient client) /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// The entity state (ETag) version of the immutability policy to update must - /// be returned to the server for all update operations. The ETag value must - /// include the leading and trailing double quotes as returned by the service. - /// /// - /// The ImmutabilityPolicy Properties that will be extended for a blob - /// container. + /// The content of the action request /// /// /// Headers that will be added to request. @@ -3326,12 +3111,21 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> ExtendImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (parameters != null) + { + parameters.Validate(); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + if (resourceGroupName == null) { @@ -3347,10 +3141,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3386,27 +3176,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - if (ifMatch == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "ifMatch"); - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -3417,21 +3186,20 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("ifMatch", ifMatch); tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ExtendImmutabilityPolicy", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Lease", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/immutabilityPolicies/default/extend").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -3460,14 +3228,6 @@ internal BlobContainersOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } - if (ifMatch != null) - { - if (_httpRequest.Headers.Contains("If-Match")) - { - _httpRequest.Headers.Remove("If-Match"); - } - _httpRequest.Headers.TryAddWithoutValidation("If-Match", ifMatch); - } if (customHeaders != null) { @@ -3512,14 +3272,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3529,10 +3288,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3545,7 +3300,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -3559,7 +3314,7 @@ internal BlobContainersOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -3571,19 +3326,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } - try - { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -3596,13 +3338,14 @@ internal BlobContainersOperations (StorageManagementClient client) } /// - /// The Lease Container operation establishes and manages a lock on a container - /// for delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// This operation migrates a blob container from container level WORM to + /// object level immutability enabled container. Prerequisites require a + /// container level immutability policy either in locked or unlocked state, + /// Account level versioning must be enabled and there should be no Legal hold + /// on the container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -3615,8 +3358,46 @@ internal BlobContainersOperations (StorageManagementClient client) /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Lease Container request body. + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> ObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Sets legal hold tags. Setting the same tag results in an idempotent + /// operation. SetLegalHold follows an append pattern and does not clear out + /// the existing tags that are not specified in the request. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the blob container within the specified storage account. Blob + /// container 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. + /// + /// + /// Each tag should be 3 to 23 alphanumeric characters and is normalized to + /// lower case at SRP. + /// + /// + /// When enabled, new blocks can be written to both 'Append and Bock Blobs' + /// while maintaining legal hold protection and compliance. Only new blocks can + /// be added and any existing blocks cannot be modified or deleted. /// /// /// Headers that will be added to request. @@ -3639,16 +3420,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> SetLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3663,10 +3446,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3702,21 +3481,11 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + LegalHold legalHold = new LegalHold(); + if(tags != null||allowProtectedAppendWritesAll != null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + legalHold.Tags = tags; + legalHold.AllowProtectedAppendWritesAll = allowProtectedAppendWritesAll; } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -3729,19 +3498,19 @@ internal BlobContainersOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("containerName", containerName); - tracingParameters.Add("parameters", parameters); + tracingParameters.Add("legalHold", legalHold); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Lease", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetLegalHold", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/lease").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/setLegalHold").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -3784,9 +3553,9 @@ internal BlobContainersOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) + if(legalHold != null) { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(legalHold, this.Client.SerializationSettings); _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } @@ -3814,14 +3583,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3831,10 +3599,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3847,7 +3611,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -3861,7 +3625,7 @@ internal BlobContainersOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -3892,43 +3656,7 @@ internal BlobContainersOperations (StorageManagementClient client) /// on the container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The name of the blob container within the specified storage account. Blob - /// container 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. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task ObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } - - /// - /// This operation migrates a blob container from container level WORM to - /// object level immutability enabled container. Prerequisites require a - /// container level immutability policy either in locked or unlocked state, - /// Account level versioning must be enabled and there should be no Legal hold - /// on the container. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -3959,12 +3687,18 @@ internal BlobContainersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task BeginObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3979,10 +3713,6 @@ internal BlobContainersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -4018,22 +3748,6 @@ internal BlobContainersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "containerName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -4053,10 +3767,10 @@ internal BlobContainersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default/containers/{containerName}/migrate").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{containerName}", System.Uri.EscapeDataString(containerName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -4156,7 +3870,7 @@ internal BlobContainersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -4164,6 +3878,19 @@ internal BlobContainersOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -4288,14 +4015,13 @@ internal BlobContainersOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -4305,10 +4031,6 @@ internal BlobContainersOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -4335,7 +4057,7 @@ internal BlobContainersOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperationsExtensions.cs index 4048121e8a2b..214ccdbc1009 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobContainersOperationsExtensions.cs @@ -20,8 +20,7 @@ public static partial class BlobContainersOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -52,8 +51,7 @@ public static partial class BlobContainersOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -82,17 +80,13 @@ public static partial class BlobContainersOperationsExtensions } } /// - /// Creates a new container under the specified account as described by request - /// body. The container resource includes metadata and properties for that - /// container. It does not include a list of the blobs contained by the - /// container. + /// Gets properties of a specified container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -105,23 +99,19 @@ public static partial class BlobContainersOperationsExtensions /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static BlobContainer Create(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer) + public static BlobContainer Get(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) { - return ((IBlobContainersOperations)operations).CreateAsync(resourceGroupName, accountName, containerName, blobContainer).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).GetAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); } /// - /// Creates a new container under the specified account as described by request - /// body. The container resource includes metadata and properties for that - /// container. It does not include a list of the blobs contained by the - /// container. + /// Gets properties of a specified container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -137,24 +127,24 @@ public static BlobContainer Create(this IBlobContainersOperations operations, st /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task CreateAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, containerName, blobContainer, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Updates container properties as specified in request body. Properties not - /// mentioned in the request will be unchanged. Update fails if the specified - /// container doesn't already exist. + /// Creates a new container under the specified account as described by request + /// body. The container resource includes metadata and properties for that + /// container. It does not include a list of the blobs contained by the + /// container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -167,22 +157,22 @@ public static BlobContainer Create(this IBlobContainersOperations operations, st /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static BlobContainer Update(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer) + public static BlobContainer Create(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer) { - return ((IBlobContainersOperations)operations).UpdateAsync(resourceGroupName, accountName, containerName, blobContainer).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).CreateAsync(resourceGroupName, accountName, containerName, blobContainer).GetAwaiter().GetResult(); } /// - /// Updates container properties as specified in request body. Properties not - /// mentioned in the request will be unchanged. Update fails if the specified - /// container doesn't already exist. + /// Creates a new container under the specified account as described by request + /// body. The container resource includes metadata and properties for that + /// container. It does not include a list of the blobs contained by the + /// container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -198,22 +188,23 @@ public static BlobContainer Update(this IBlobContainersOperations operations, st /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task UpdateAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task CreateAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, containerName, blobContainer, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, containerName, blobContainer, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Gets properties of a specified container. + /// Updates container properties as specified in request body. Properties not + /// mentioned in the request will be unchanged. Update fails if the specified + /// container doesn't already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -226,20 +217,21 @@ public static BlobContainer Update(this IBlobContainersOperations operations, st /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static BlobContainer Get(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) + public static BlobContainer Update(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer) { - return ((IBlobContainersOperations)operations).GetAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).UpdateAsync(resourceGroupName, accountName, containerName, blobContainer).GetAwaiter().GetResult(); } /// - /// Gets properties of a specified container. + /// Updates container properties as specified in request body. Properties not + /// mentioned in the request will be unchanged. Update fails if the specified + /// container doesn't already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -255,9 +247,9 @@ public static BlobContainer Get(this IBlobContainersOperations operations, strin /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task UpdateAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, containerName, blobContainer, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -269,8 +261,7 @@ public static BlobContainer Get(this IBlobContainersOperations operations, strin /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -295,8 +286,7 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -317,16 +307,15 @@ public static void Delete(this IBlobContainersOperations operations, string reso (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)).Dispose(); } /// - /// Sets legal hold tags. Setting the same tag results in an idempotent - /// operation. SetLegalHold follows an append pattern and does not clear out - /// the existing tags that are not specified in the request. + /// Clears legal hold tags. Clearing the same or non-existent tag results in an + /// idempotent operation. ClearLegalHold clears out only the specified tags in + /// the request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -339,22 +328,21 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static LegalHold SetLegalHold(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?)) + public static LegalHold ClearLegalHold(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?)) { - return ((IBlobContainersOperations)operations).SetLegalHoldAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).ClearLegalHoldAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll).GetAwaiter().GetResult(); } /// - /// Sets legal hold tags. Setting the same tag results in an idempotent - /// operation. SetLegalHold follows an append pattern and does not clear out - /// the existing tags that are not specified in the request. + /// Clears legal hold tags. Clearing the same or non-existent tag results in an + /// idempotent operation. ClearLegalHold clears out only the specified tags in + /// the request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -370,24 +358,22 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task SetLegalHoldAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ClearLegalHoldAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.SetLegalHoldWithHttpMessagesAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ClearLegalHoldWithHttpMessagesAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Clears legal hold tags. Clearing the same or non-existent tag results in an - /// idempotent operation. ClearLegalHold clears out only the specified tags in - /// the request. + /// Gets the existing immutability policy along with the corresponding ETag in + /// response headers and body. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -400,22 +386,25 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static LegalHold ClearLegalHold(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?)) + /// + /// The entity state (ETag) version of the immutability policy to update must + /// be returned to the server for all update operations. The ETag value must + /// include the leading and trailing double quotes as returned by the service. + /// + public static ImmutabilityPolicy GetImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch = default(string)) { - return ((IBlobContainersOperations)operations).ClearLegalHoldAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).GetImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch).GetAwaiter().GetResult(); } /// - /// Clears legal hold tags. Clearing the same or non-existent tag results in an - /// idempotent operation. ClearLegalHold clears out only the specified tags in - /// the request. + /// Gets the existing immutability policy along with the corresponding ETag in + /// response headers and body. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -428,12 +417,17 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// The entity state (ETag) version of the immutability policy to update must + /// be returned to the server for all update operations. The ETag value must + /// include the leading and trailing double quotes as returned by the service. + /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ClearLegalHoldAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ClearLegalHoldWithHttpMessagesAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -446,8 +440,7 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -478,8 +471,7 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -508,15 +500,17 @@ public static void Delete(this IBlobContainersOperations operations, string reso } } /// - /// Gets the existing immutability policy along with the corresponding ETag in - /// response headers and body. + /// Aborts an unlocked immutability policy. The response of delete has + /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + /// required for this operation. Deleting a locked immutability policy is not + /// allowed, the only way is to delete the container after deleting all expired + /// blobs inside the policy locked container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -534,21 +528,23 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// be returned to the server for all update operations. The ETag value must /// include the leading and trailing double quotes as returned by the service. /// - public static ImmutabilityPolicy GetImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch = default(string)) + public static ImmutabilityPolicy DeleteImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch) { - return ((IBlobContainersOperations)operations).GetImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).DeleteImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch).GetAwaiter().GetResult(); } /// - /// Gets the existing immutability policy along with the corresponding ETag in - /// response headers and body. + /// Aborts an unlocked immutability policy. The response of delete has + /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + /// required for this operation. Deleting a locked immutability policy is not + /// allowed, the only way is to delete the container after deleting all expired + /// blobs inside the policy locked container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -569,26 +565,23 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task DeleteImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.DeleteImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Aborts an unlocked immutability policy. The response of delete has - /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is - /// required for this operation. Deleting a locked immutability policy is not - /// allowed, the only way is to delete the container after deleting all expired - /// blobs inside the policy locked container. + /// Extends the immutabilityPeriodSinceCreationInDays of a locked + /// immutabilityPolicy. The only action allowed on a Locked policy will be this + /// action. ETag in If-Match is required for this operation. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -606,24 +599,21 @@ public static void Delete(this IBlobContainersOperations operations, string reso /// be returned to the server for all update operations. The ETag value must /// include the leading and trailing double quotes as returned by the service. /// - public static ImmutabilityPolicy DeleteImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch) + public static ImmutabilityPolicy ExtendImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy)) { - return ((IBlobContainersOperations)operations).DeleteImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).ExtendImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch, parameters).GetAwaiter().GetResult(); } /// - /// Aborts an unlocked immutability policy. The response of delete has - /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is - /// required for this operation. Deleting a locked immutability policy is not - /// allowed, the only way is to delete the container after deleting all expired - /// blobs inside the policy locked container. + /// Extends the immutabilityPeriodSinceCreationInDays of a locked + /// immutabilityPolicy. The only action allowed on a Locked policy will be this + /// action. ETag in If-Match is required for this operation. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -644,9 +634,9 @@ public static ImmutabilityPolicy DeleteImmutabilityPolicy(this IBlobContainersOp /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task DeleteImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ExtendImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.DeleteImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ExtendImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, parameters, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -660,8 +650,7 @@ public static ImmutabilityPolicy DeleteImmutabilityPolicy(this IBlobContainersOp /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -693,8 +682,7 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -723,16 +711,15 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper } } /// - /// Extends the immutabilityPeriodSinceCreationInDays of a locked - /// immutabilityPolicy. The only action allowed on a Locked policy will be this - /// action. ETag in If-Match is required for this operation. + /// The Lease Container operation establishes and manages a lock on a container + /// for delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -745,27 +732,21 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// The entity state (ETag) version of the immutability policy to update must - /// be returned to the server for all update operations. The ETag value must - /// include the leading and trailing double quotes as returned by the service. - /// - public static ImmutabilityPolicy ExtendImmutabilityPolicy(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy)) + public static LeaseContainerResponse Lease(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest)) { - return ((IBlobContainersOperations)operations).ExtendImmutabilityPolicyAsync(resourceGroupName, accountName, containerName, ifMatch, parameters).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).LeaseAsync(resourceGroupName, accountName, containerName, parameters).GetAwaiter().GetResult(); } /// - /// Extends the immutabilityPeriodSinceCreationInDays of a locked - /// immutabilityPolicy. The only action allowed on a Locked policy will be this - /// action. ETag in If-Match is required for this operation. + /// The Lease Container operation establishes and manages a lock on a container + /// for delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -778,32 +759,28 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// The entity state (ETag) version of the immutability policy to update must - /// be returned to the server for all update operations. The ETag value must - /// include the leading and trailing double quotes as returned by the service. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ExtendImmutabilityPolicyAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task LeaseAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ExtendImmutabilityPolicyWithHttpMessagesAsync(resourceGroupName, accountName, containerName, ifMatch, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.LeaseWithHttpMessagesAsync(resourceGroupName, accountName, containerName, parameters, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// The Lease Container operation establishes and manages a lock on a container - /// for delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// This operation migrates a blob container from container level WORM to + /// object level immutability enabled container. Prerequisites require a + /// container level immutability policy either in locked or unlocked state, + /// Account level versioning must be enabled and there should be no Legal hold + /// on the container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -816,22 +793,23 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static LeaseContainerResponse Lease(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest)) + public static BlobContainersObjectLevelWormHeaders ObjectLevelWorm(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) { - return ((IBlobContainersOperations)operations).LeaseAsync(resourceGroupName, accountName, containerName, parameters).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).ObjectLevelWormAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); } /// - /// The Lease Container operation establishes and manages a lock on a container - /// for delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// This operation migrates a blob container from container level WORM to + /// object level immutability enabled container. Prerequisites require a + /// container level immutability policy either in locked or unlocked state, + /// Account level versioning must be enabled and there should be no Legal hold + /// on the container. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -847,26 +825,23 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task LeaseAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ObjectLevelWormAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.LeaseWithHttpMessagesAsync(resourceGroupName, accountName, containerName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)) { - return _result.Body; + return _result.Headers; } } /// - /// This operation migrates a blob container from container level WORM to - /// object level immutability enabled container. Prerequisites require a - /// container level immutability policy either in locked or unlocked state, - /// Account level versioning must be enabled and there should be no Legal hold - /// on the container. + /// Sets legal hold tags. Setting the same tag results in an idempotent + /// operation. SetLegalHold follows an append pattern and does not clear out + /// the existing tags that are not specified in the request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -879,24 +854,21 @@ public static ImmutabilityPolicy LockImmutabilityPolicy(this IBlobContainersOper /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static void ObjectLevelWorm(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) + public static LegalHold SetLegalHold(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?)) { - ((IBlobContainersOperations)operations).ObjectLevelWormAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).SetLegalHoldAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll).GetAwaiter().GetResult(); } /// - /// This operation migrates a blob container from container level WORM to - /// object level immutability enabled container. Prerequisites require a - /// container level immutability policy either in locked or unlocked state, - /// Account level versioning must be enabled and there should be no Legal hold - /// on the container. + /// Sets legal hold tags. Setting the same tag results in an idempotent + /// operation. SetLegalHold follows an append pattern and does not clear out + /// the existing tags that are not specified in the request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -912,9 +884,12 @@ public static void ObjectLevelWorm(this IBlobContainersOperations operations, st /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ObjectLevelWormAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task SetLegalHoldAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.ObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.SetLegalHoldWithHttpMessagesAsync(resourceGroupName, accountName, containerName, tags, allowProtectedAppendWritesAll, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } } /// /// This operation migrates a blob container from container level WORM to @@ -927,8 +902,7 @@ public static void ObjectLevelWorm(this IBlobContainersOperations operations, st /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -941,9 +915,9 @@ public static void ObjectLevelWorm(this IBlobContainersOperations operations, st /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static void BeginObjectLevelWorm(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) + public static BlobContainersObjectLevelWormHeaders BeginObjectLevelWorm(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName) { - ((IBlobContainersOperations)operations).BeginObjectLevelWormAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); + return ((IBlobContainersOperations)operations).BeginObjectLevelWormAsync(resourceGroupName, accountName, containerName).GetAwaiter().GetResult(); } /// @@ -957,8 +931,7 @@ public static void BeginObjectLevelWorm(this IBlobContainersOperations operation /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -974,9 +947,12 @@ public static void BeginObjectLevelWorm(this IBlobContainersOperations operation /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task BeginObjectLevelWormAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task BeginObjectLevelWormAsync(this IBlobContainersOperations operations, string resourceGroupName, string accountName, string containerName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.BeginObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.BeginObjectLevelWormWithHttpMessagesAsync(resourceGroupName, accountName, containerName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } } /// /// Lists all containers and does not support a prefix like data plane. Also diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperations.cs index 83bdc51c1050..37b6c2bc0fe8 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperations.cs @@ -43,8 +43,7 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -72,12 +71,18 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string blobInventoryPolicyName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -92,10 +97,6 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -116,20 +117,235 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the blob inventory policy associated with the specified storage + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + string blobInventoryPolicyName = "default"; + if (this.Client.ApiVersion == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) + + if (resourceGroupName == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); } - if (this.Client.SubscriptionId != null) + if (resourceGroupName != null) { - if (this.Client.SubscriptionId.Length < 1) + if (resourceGroupName.Length > 90) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } @@ -152,9 +368,9 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies/{blobInventoryPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{blobInventoryPolicyName}", System.Uri.EscapeDataString(blobInventoryPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -296,8 +512,7 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// Sets the blob inventory policy to the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -335,6 +550,12 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) string blobInventoryPolicyName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -349,10 +570,6 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -373,22 +590,6 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } BlobInventoryPolicy properties = new BlobInventoryPolicy(); if(policy != null) @@ -415,9 +616,9 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies/{blobInventoryPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{blobInventoryPolicyName}", System.Uri.EscapeDataString(blobInventoryPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -566,8 +767,7 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -598,6 +798,12 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) string blobInventoryPolicyName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -612,10 +818,6 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -636,22 +838,6 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -672,9 +858,9 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies/{blobInventoryPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{blobInventoryPolicyName}", System.Uri.EscapeDataString(blobInventoryPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -798,14 +984,8 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// Gets the blob inventory policy associated with the specified storage /// account. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. + /// + /// The NextLink from the previous successful call to List operation. /// /// /// Headers that will be added to request. @@ -828,65 +1008,12 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - - - - if (resourceGroupName == null) + if (nextPageLink == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); - } - if (resourceGroupName != null) - { - if (resourceGroupName.Length > 90) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); - } - if (resourceGroupName.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } - } - if (accountName == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); - } - if (accountName != null) - { - if (accountName.Length > 24) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); - } - if (accountName.Length < 3) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); - } - } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -895,26 +1022,17 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) { _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); - tracingParameters.Add("resourceGroupName", resourceGroupName); - tracingParameters.Add("accountName", accountName); - + tracingParameters.Add("nextPageLink", nextPageLink); + tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); } // Construct URL - - var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/inventoryPolicies").ToString(); - _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); - _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); - if (this.Client.ApiVersion != null) - { - _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -1003,7 +1121,7 @@ internal BlobInventoryPoliciesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperationsExtensions.cs index 4550dc0a7728..f5bd9d2df9a9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobInventoryPoliciesOperationsExtensions.cs @@ -20,8 +20,52 @@ public static partial class BlobInventoryPoliciesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static Microsoft.Rest.Azure.IPage List(this IBlobInventoryPoliciesOperations operations, string resourceGroupName, string accountName) + { + return ((IBlobInventoryPoliciesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets the blob inventory policy associated with the specified storage + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this IBlobInventoryPoliciesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets the blob inventory policy associated with the specified storage + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -41,8 +85,7 @@ public static BlobInventoryPolicy Get(this IBlobInventoryPoliciesOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -66,8 +109,7 @@ public static BlobInventoryPolicy Get(this IBlobInventoryPoliciesOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -86,8 +128,7 @@ public static BlobInventoryPolicy Get(this IBlobInventoryPoliciesOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -112,8 +153,7 @@ public static BlobInventoryPolicy Get(this IBlobInventoryPoliciesOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -133,8 +173,7 @@ public static void Delete(this IBlobInventoryPoliciesOperations operations, stri /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -155,18 +194,12 @@ public static void Delete(this IBlobInventoryPoliciesOperations operations, stri /// /// The operations group for this extension method. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// + /// The NextLink from the previous successful call to List operation. /// - /// - /// 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. - /// - public static System.Collections.Generic.IEnumerable List(this IBlobInventoryPoliciesOperations operations, string resourceGroupName, string accountName) + public static Microsoft.Rest.Azure.IPage ListNext(this IBlobInventoryPoliciesOperations operations, string nextPageLink) { - return ((IBlobInventoryPoliciesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IBlobInventoryPoliciesOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); } /// @@ -176,21 +209,15 @@ public static System.Collections.Generic.IEnumerable List(t /// /// The operations group for this extension method. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. + /// + /// The NextLink from the previous successful call to List operation. /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IBlobInventoryPoliciesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListNextAsync(this IBlobInventoryPoliciesOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperations.cs index d5c77355c613..eaf5af36195f 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperations.cs @@ -43,8 +43,7 @@ internal BlobServicesOperations (StorageManagementClient client) /// object named default. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -72,12 +71,18 @@ internal BlobServicesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -92,10 +97,6 @@ internal BlobServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -116,22 +117,6 @@ internal BlobServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -150,9 +135,9 @@ internal BlobServicesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -219,14 +204,13 @@ internal BlobServicesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -236,10 +220,6 @@ internal BlobServicesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -252,7 +232,7 @@ internal BlobServicesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -290,23 +270,18 @@ internal BlobServicesOperations (StorageManagementClient client) } /// - /// Sets the properties of a storage account’s Blob service, including + /// Gets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The properties of a storage account’s Blob service, including properties - /// for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. - /// /// /// Headers that will be added to request. /// @@ -328,20 +303,18 @@ internal BlobServicesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string blobServicesName = "default"; + - if (parameters == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); - } - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -356,10 +329,6 @@ internal BlobServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -380,23 +349,6 @@ internal BlobServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -406,21 +358,18 @@ internal BlobServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("blobServicesName", blobServicesName); - tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{BlobServicesName}", System.Uri.EscapeDataString(blobServicesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -434,7 +383,7 @@ internal BlobServicesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -463,12 +412,6 @@ internal BlobServicesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -493,14 +436,13 @@ internal BlobServicesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -510,10 +452,6 @@ internal BlobServicesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -564,19 +502,22 @@ internal BlobServicesOperations (StorageManagementClient client) } /// - /// Gets the properties of a storage account’s Blob service, including + /// Sets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The properties of a storage account’s Blob service, including properties + /// for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. + /// /// /// Headers that will be added to request. /// @@ -598,12 +539,26 @@ internal BlobServicesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string blobServicesName = "default"; + + if (parameters == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); + } + if (parameters != null) + { + parameters.Validate(); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -618,10 +573,6 @@ internal BlobServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -642,23 +593,6 @@ internal BlobServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -668,20 +602,19 @@ internal BlobServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("blobServicesName", blobServicesName); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/{BlobServicesName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/blobServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{BlobServicesName}", System.Uri.EscapeDataString(blobServicesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -695,7 +628,7 @@ internal BlobServicesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -724,6 +657,12 @@ internal BlobServicesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -748,14 +687,13 @@ internal BlobServicesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -765,10 +703,6 @@ internal BlobServicesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -817,6 +751,184 @@ internal BlobServicesOperations (StorageManagementClient client) + } + /// + /// List blob services of storage account. It returns a collection of one + /// object named default. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperationsExtensions.cs index 4a51fd8aa0a9..101bfd5506d2 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/BlobServicesOperationsExtensions.cs @@ -20,15 +20,14 @@ public static partial class BlobServicesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static System.Collections.Generic.IEnumerable List(this IBlobServicesOperations operations, string resourceGroupName, string accountName) + public static Microsoft.Rest.Azure.IPage List(this IBlobServicesOperations operations, string resourceGroupName, string accountName) { return ((IBlobServicesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } @@ -41,8 +40,7 @@ public static System.Collections.Generic.IEnumerable List /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -52,7 +50,7 @@ public static System.Collections.Generic.IEnumerable List /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { @@ -60,7 +58,7 @@ public static System.Collections.Generic.IEnumerable List } } /// - /// Sets the properties of a storage account’s Blob service, including + /// Gets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// @@ -68,21 +66,20 @@ public static System.Collections.Generic.IEnumerable List /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static BlobServiceProperties SetServiceProperties(this IBlobServicesOperations operations, string resourceGroupName, string accountName, BlobServiceProperties parameters) + public static BlobServiceProperties GetServiceProperties(this IBlobServicesOperations operations, string resourceGroupName, string accountName) { - return ((IBlobServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IBlobServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } /// - /// Sets the properties of a storage account’s Blob service, including + /// Gets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// @@ -90,8 +87,7 @@ public static BlobServiceProperties SetServiceProperties(this IBlobServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -101,15 +97,15 @@ public static BlobServiceProperties SetServiceProperties(this IBlobServicesOpera /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Gets the properties of a storage account’s Blob service, including + /// Sets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// @@ -117,21 +113,20 @@ public static BlobServiceProperties SetServiceProperties(this IBlobServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static BlobServiceProperties GetServiceProperties(this IBlobServicesOperations operations, string resourceGroupName, string accountName) + public static BlobServiceProperties SetServiceProperties(this IBlobServicesOperations operations, string resourceGroupName, string accountName, BlobServiceProperties parameters) { - return ((IBlobServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IBlobServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// Gets the properties of a storage account’s Blob service, including + /// Sets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// @@ -139,8 +134,7 @@ public static BlobServiceProperties GetServiceProperties(this IBlobServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -150,9 +144,44 @@ public static BlobServiceProperties GetServiceProperties(this IBlobServicesOpera /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this IBlobServicesOperations operations, string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// List blob services of storage account. It returns a collection of one + /// object named default. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IBlobServicesOperations operations, string nextPageLink) + { + return ((IBlobServicesOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List blob services of storage account. It returns a collection of one + /// object named default. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IBlobServicesOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperations.cs index 4b9215cb3be8..1f73ae50aaea 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperations.cs @@ -73,17 +73,7 @@ internal DeletedAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } + // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -100,7 +90,7 @@ internal DeletedAccountsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/deletedAccounts").ToString(); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -209,7 +199,7 @@ internal DeletedAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -235,12 +225,12 @@ internal DeletedAccountsOperations (StorageManagementClient client) /// /// Get properties of specified deleted account resource. /// + /// + /// The name of the Azure region. + /// /// /// Name of the deleted storage account. /// - /// - /// The location of the deleted storage account. - /// /// /// Headers that will be added to request. /// @@ -262,12 +252,29 @@ internal DeletedAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string deletedAccountName, string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string location, string deletedAccountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (location == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "location"); + } + if (location != null) + { + if (location.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "location", 1); + } + } if (deletedAccountName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "deletedAccountName"); @@ -283,27 +290,6 @@ internal DeletedAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "deletedAccountName", 3); } } - if (location == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "location"); - } - - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -311,8 +297,8 @@ internal DeletedAccountsOperations (StorageManagementClient client) { _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); - tracingParameters.Add("deletedAccountName", deletedAccountName); tracingParameters.Add("location", location); + tracingParameters.Add("deletedAccountName", deletedAccountName); tracingParameters.Add("cancellationToken", cancellationToken); @@ -322,9 +308,9 @@ internal DeletedAccountsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/deletedAccounts/{deletedAccountName}").ToString(); - _url = _url.Replace("{deletedAccountName}", System.Uri.EscapeDataString(deletedAccountName)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{location}", System.Uri.EscapeDataString(location)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{deletedAccountName}", System.Uri.EscapeDataString(deletedAccountName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -610,7 +596,7 @@ internal DeletedAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperationsExtensions.cs index 8522c6623374..1758a363d976 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/DeletedAccountsOperationsExtensions.cs @@ -45,15 +45,15 @@ public static Microsoft.Rest.Azure.IPage List(this IDeletedAccou /// /// The operations group for this extension method. /// + /// + /// The name of the Azure region. + /// /// /// Name of the deleted storage account. /// - /// - /// The location of the deleted storage account. - /// - public static DeletedAccount Get(this IDeletedAccountsOperations operations, string deletedAccountName, string location) + public static DeletedAccount Get(this IDeletedAccountsOperations operations, string location, string deletedAccountName) { - return ((IDeletedAccountsOperations)operations).GetAsync(deletedAccountName, location).GetAwaiter().GetResult(); + return ((IDeletedAccountsOperations)operations).GetAsync(location, deletedAccountName).GetAwaiter().GetResult(); } /// @@ -62,18 +62,18 @@ public static DeletedAccount Get(this IDeletedAccountsOperations operations, str /// /// The operations group for this extension method. /// + /// + /// The name of the Azure region. + /// /// /// Name of the deleted storage account. /// - /// - /// The location of the deleted storage account. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetAsync(this IDeletedAccountsOperations operations, string deletedAccountName, string location, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetAsync(this IDeletedAccountsOperations operations, string location, string deletedAccountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetWithHttpMessagesAsync(deletedAccountName, location, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetWithHttpMessagesAsync(location, deletedAccountName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperations.cs index 945122473574..b690c7a5375f 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperations.cs @@ -39,28 +39,28 @@ internal EncryptionScopesOperations (StorageManagementClient client) public StorageManagementClient Client { get; private set; } /// - /// Synchronously creates or updates an encryption scope under the specified - /// storage account. If an encryption scope is already created and a subsequent - /// request is issued with different properties, the encryption scope - /// properties will be updated per the specified request. + /// Lists all the encryption scopes available under the specified storage + /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of the encryption scope within the specified storage account. - /// Encryption scope 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. + /// + /// Optional, specifies the maximum number of encryption scopes that will be + /// included in the list response. /// - /// - /// Encryption scope properties to be used for the create or update. + /// + /// Optional. When specified, only encryption scope names starting with the + /// filter will be listed. + /// + /// + /// Optional, when specified, will list encryption scopes with the specific + /// state. Defaults to All /// /// /// Headers that will be added to request. @@ -83,17 +83,18 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> PutWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (encryptionScope == null) + if (this.Client.ApiVersion == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScope"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -108,10 +109,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -132,37 +129,19 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - if (encryptionScopeName == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScopeName"); - } - if (encryptionScopeName != null) + if (maxpagesize != null) { - if (encryptionScopeName.Length > 63) + if (maxpagesize > 5000) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "encryptionScopeName", 63); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMaximum, "maxpagesize", 5000); } - if (encryptionScopeName.Length < 3) + if (maxpagesize < 1) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "encryptionScopeName", 3); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "maxpagesize", 1); } } + + // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -172,27 +151,39 @@ internal EncryptionScopesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("encryptionScopeName", encryptionScopeName); + tracingParameters.Add("maxpagesize", maxpagesize); + tracingParameters.Add("filter", filter); + tracingParameters.Add("include", include); - tracingParameters.Add("encryptionScope", encryptionScope); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Put", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{encryptionScopeName}", System.Uri.EscapeDataString(encryptionScopeName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (maxpagesize != null) + { + _queryParameters.Add(string.Format("$maxpagesize={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(maxpagesize, this.Client.SerializationSettings).Trim('"')))); + } + if (filter != null) + { + _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); + } + if (include != null) + { + _queryParameters.Add(string.Format("$include={0}", System.Uri.EscapeDataString(include))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -200,7 +191,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -229,12 +220,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(encryptionScope != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(encryptionScope, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -257,7 +242,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200 && (int)_statusCode != 201) + if ((int)_statusCode != 200) { var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try @@ -287,7 +272,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -301,25 +286,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } - // Deserialize Response - if ((int)_statusCode == 201) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -343,12 +310,10 @@ internal EncryptionScopesOperations (StorageManagementClient client) } /// - /// Update encryption scope properties as specified in the request body. Update - /// fails if the specified encryption scope does not already exist. + /// Returns the properties for the specified encryption scope. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -361,9 +326,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Encryption scope properties to be used for the update. - /// /// /// Headers that will be added to request. /// @@ -385,16 +347,18 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> PatchWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (encryptionScope == null) + if (this.Client.ApiVersion == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScope"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -409,10 +373,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -433,22 +393,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (encryptionScopeName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScopeName"); @@ -475,18 +419,17 @@ internal EncryptionScopesOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("encryptionScopeName", encryptionScopeName); - tracingParameters.Add("encryptionScope", encryptionScope); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Patch", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{encryptionScopeName}", System.Uri.EscapeDataString(encryptionScopeName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -501,7 +444,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -530,12 +473,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(encryptionScope != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(encryptionScope, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -626,11 +563,13 @@ internal EncryptionScopesOperations (StorageManagementClient client) } /// - /// Returns the properties for the specified encryption scope. + /// Synchronously creates or updates an encryption scope under the specified + /// storage account. If an encryption scope is already created and a subsequent + /// request is issued with different properties, the encryption scope + /// properties will be updated per the specified request. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -643,6 +582,9 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// Encryption scope properties to be used for the create or update. + /// /// /// Headers that will be added to request. /// @@ -664,12 +606,23 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> PutWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (encryptionScope == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScope"); + } + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -684,10 +637,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -708,22 +657,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (encryptionScopeName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScopeName"); @@ -750,17 +683,18 @@ internal EncryptionScopesOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("encryptionScopeName", encryptionScopeName); + tracingParameters.Add("encryptionScope", encryptionScope); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Put", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{encryptionScopeName}", System.Uri.EscapeDataString(encryptionScopeName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -775,7 +709,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -804,6 +738,12 @@ internal EncryptionScopesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(encryptionScope != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(encryptionScope, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -826,7 +766,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200) + if ((int)_statusCode != 200 && (int)_statusCode != 201) { var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try @@ -882,6 +822,24 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } + // Deserialize Response + if ((int)_statusCode == 201) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -894,29 +852,25 @@ internal EncryptionScopesOperations (StorageManagementClient client) } /// - /// Lists all the encryption scopes available under the specified storage - /// account. + /// Update encryption scope properties as specified in the request body. Update + /// fails if the specified encryption scope does not already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Optional, specifies the maximum number of encryption scopes that will be - /// included in the list response. - /// - /// - /// Optional. When specified, only encryption scope names starting with the - /// filter will be listed. + /// + /// The name of the encryption scope within the specified storage account. + /// Encryption scope 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. /// - /// - /// Optional, when specified, will list encryption scopes with the specific - /// state. Defaults to All + /// + /// Encryption scope properties to be used for the update. /// /// /// Headers that will be added to request. @@ -939,12 +893,22 @@ internal EncryptionScopesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> PatchWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (encryptionScope == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScope"); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -959,10 +923,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -983,35 +943,21 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + if (encryptionScopeName == null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "encryptionScopeName"); } - if (maxpagesize != null) + if (encryptionScopeName != null) { - if (maxpagesize > 5000) + if (encryptionScopeName.Length > 63) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMaximum, "maxpagesize", 5000); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "encryptionScopeName", 63); } - if (maxpagesize < 1) + if (encryptionScopeName.Length < 3) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "maxpagesize", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "encryptionScopeName", 3); } } - - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1021,39 +967,27 @@ internal EncryptionScopesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("maxpagesize", maxpagesize); - tracingParameters.Add("filter", filter); - tracingParameters.Add("include", include); + tracingParameters.Add("encryptionScopeName", encryptionScopeName); + tracingParameters.Add("encryptionScope", encryptionScope); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Patch", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/encryptionScopes/{encryptionScopeName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{encryptionScopeName}", System.Uri.EscapeDataString(encryptionScopeName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (maxpagesize != null) - { - _queryParameters.Add(string.Format("$maxpagesize={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(maxpagesize, this.Client.SerializationSettings).Trim('"')))); - } - if (filter != null) - { - _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); - } - if (include != null) - { - _queryParameters.Add(string.Format("$include={0}", System.Uri.EscapeDataString(include))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -1061,7 +995,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1090,6 +1024,12 @@ internal EncryptionScopesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(encryptionScope != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(encryptionScope, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -1114,14 +1054,13 @@ internal EncryptionScopesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1131,10 +1070,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1147,7 +1082,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1161,7 +1096,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -1297,14 +1232,13 @@ internal EncryptionScopesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1314,10 +1248,6 @@ internal EncryptionScopesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1344,7 +1274,7 @@ internal EncryptionScopesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperationsExtensions.cs index 4b526bf892b3..60f3fa46a0e7 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/EncryptionScopesOperationsExtensions.cs @@ -13,78 +13,82 @@ namespace Microsoft.Azure.Management.Storage public static partial class EncryptionScopesOperationsExtensions { /// - /// Synchronously creates or updates an encryption scope under the specified - /// storage account. If an encryption scope is already created and a subsequent - /// request is issued with different properties, the encryption scope - /// properties will be updated per the specified request. + /// Lists all the encryption scopes available under the specified storage + /// account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of the encryption scope within the specified storage account. - /// Encryption scope 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. + /// + /// Optional, specifies the maximum number of encryption scopes that will be + /// included in the list response. /// - public static EncryptionScope Put(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope) + /// + /// Optional. When specified, only encryption scope names starting with the + /// filter will be listed. + /// + /// + /// Optional, when specified, will list encryption scopes with the specific + /// state. Defaults to All + /// + public static Microsoft.Rest.Azure.IPage List(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string)) { - return ((IEncryptionScopesOperations)operations).PutAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope).GetAwaiter().GetResult(); + return ((IEncryptionScopesOperations)operations).ListAsync(resourceGroupName, accountName, maxpagesize, filter, include).GetAwaiter().GetResult(); } /// - /// Synchronously creates or updates an encryption scope under the specified - /// storage account. If an encryption scope is already created and a subsequent - /// request is issued with different properties, the encryption scope - /// properties will be updated per the specified request. + /// Lists all the encryption scopes available under the specified storage + /// account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of the encryption scope within the specified storage account. - /// Encryption scope 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. + /// + /// Optional, specifies the maximum number of encryption scopes that will be + /// included in the list response. + /// + /// + /// Optional. When specified, only encryption scope names starting with the + /// filter will be listed. + /// + /// + /// Optional, when specified, will list encryption scopes with the specific + /// state. Defaults to All /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task PutAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.PutWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, maxpagesize, filter, include, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Update encryption scope properties as specified in the request body. Update - /// fails if the specified encryption scope does not already exist. + /// Returns the properties for the specified encryption scope. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -97,21 +101,19 @@ public static EncryptionScope Put(this IEncryptionScopesOperations operations, s /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static EncryptionScope Patch(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope) + public static EncryptionScope Get(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName) { - return ((IEncryptionScopesOperations)operations).PatchAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope).GetAwaiter().GetResult(); + return ((IEncryptionScopesOperations)operations).GetAsync(resourceGroupName, accountName, encryptionScopeName).GetAwaiter().GetResult(); } /// - /// Update encryption scope properties as specified in the request body. Update - /// fails if the specified encryption scope does not already exist. + /// Returns the properties for the specified encryption scope. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -127,22 +129,24 @@ public static EncryptionScope Patch(this IEncryptionScopesOperations operations, /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task PatchAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.PatchWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Returns the properties for the specified encryption scope. + /// Synchronously creates or updates an encryption scope under the specified + /// storage account. If an encryption scope is already created and a subsequent + /// request is issued with different properties, the encryption scope + /// properties will be updated per the specified request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -155,20 +159,22 @@ public static EncryptionScope Patch(this IEncryptionScopesOperations operations, /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - public static EncryptionScope Get(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName) + public static EncryptionScope Put(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope) { - return ((IEncryptionScopesOperations)operations).GetAsync(resourceGroupName, accountName, encryptionScopeName).GetAwaiter().GetResult(); + return ((IEncryptionScopesOperations)operations).PutAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope).GetAwaiter().GetResult(); } /// - /// Returns the properties for the specified encryption scope. + /// Synchronously creates or updates an encryption scope under the specified + /// storage account. If an encryption scope is already created and a subsequent + /// request is issued with different properties, the encryption scope + /// properties will be updated per the specified request. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -184,80 +190,66 @@ public static EncryptionScope Get(this IEncryptionScopesOperations operations, s /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task PutAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.PutWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Lists all the encryption scopes available under the specified storage - /// account. + /// Update encryption scope properties as specified in the request body. Update + /// fails if the specified encryption scope does not already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Optional, specifies the maximum number of encryption scopes that will be - /// included in the list response. - /// - /// - /// Optional. When specified, only encryption scope names starting with the - /// filter will be listed. - /// - /// - /// Optional, when specified, will list encryption scopes with the specific - /// state. Defaults to All + /// + /// The name of the encryption scope within the specified storage account. + /// Encryption scope 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. /// - public static Microsoft.Rest.Azure.IPage List(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string)) + public static EncryptionScope Patch(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope) { - return ((IEncryptionScopesOperations)operations).ListAsync(resourceGroupName, accountName, maxpagesize, filter, include).GetAwaiter().GetResult(); + return ((IEncryptionScopesOperations)operations).PatchAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope).GetAwaiter().GetResult(); } /// - /// Lists all the encryption scopes available under the specified storage - /// account. + /// Update encryption scope properties as specified in the request body. Update + /// fails if the specified encryption scope does not already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Optional, specifies the maximum number of encryption scopes that will be - /// included in the list response. - /// - /// - /// Optional. When specified, only encryption scope names starting with the - /// filter will be listed. - /// - /// - /// Optional, when specified, will list encryption scopes with the specific - /// state. Defaults to All + /// + /// The name of the encryption scope within the specified storage account. + /// Encryption scope 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. /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task PatchAsync(this IEncryptionScopesOperations operations, string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, maxpagesize, filter, include, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.PatchWithHttpMessagesAsync(resourceGroupName, accountName, encryptionScopeName, encryptionScope, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperations.cs index 826c5f50d942..848385e01387 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperations.cs @@ -42,8 +42,7 @@ internal FileServicesOperations (StorageManagementClient client) /// List all file services in storage accounts /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -77,6 +76,12 @@ internal FileServicesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -91,10 +96,6 @@ internal FileServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -115,22 +116,6 @@ internal FileServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -149,9 +134,9 @@ internal FileServicesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -289,22 +274,17 @@ internal FileServicesOperations (StorageManagementClient client) } /// - /// Sets the properties of file services in storage accounts, including CORS + /// Gets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The properties of file services in storage accounts, including CORS - /// (Cross-Origin Resource Sharing) rules. - /// /// /// Headers that will be added to request. /// @@ -326,20 +306,18 @@ internal FileServicesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, FileServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string fileServicesName = "default"; + - if (parameters == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); - } - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -354,10 +332,6 @@ internal FileServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -378,23 +352,6 @@ internal FileServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -404,21 +361,18 @@ internal FileServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("fileServicesName", fileServicesName); - tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{FileServicesName}", System.Uri.EscapeDataString(fileServicesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -432,7 +386,7 @@ internal FileServicesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -461,12 +415,6 @@ internal FileServicesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -562,18 +510,21 @@ internal FileServicesOperations (StorageManagementClient client) } /// - /// Gets the properties of file services in storage accounts, including CORS + /// Sets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The properties of file services in storage accounts, including CORS + /// (Cross-Origin Resource Sharing) rules. + /// /// /// Headers that will be added to request. /// @@ -595,12 +546,26 @@ internal FileServicesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, FileServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string fileServicesName = "default"; + + if (parameters == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); + } + if (parameters != null) + { + parameters.Validate(); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -615,10 +580,6 @@ internal FileServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -639,23 +600,6 @@ internal FileServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -665,20 +609,19 @@ internal FileServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("fileServicesName", fileServicesName); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{FileServicesName}", System.Uri.EscapeDataString(fileServicesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -692,7 +635,7 @@ internal FileServicesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -721,6 +664,12 @@ internal FileServicesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -819,8 +768,7 @@ internal FileServicesOperations (StorageManagementClient client) /// Gets the usages of file service in storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -856,8 +804,14 @@ internal FileServicesOperations (StorageManagementClient client) { - string fileServicesName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -872,10 +826,6 @@ internal FileServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -896,23 +846,6 @@ internal FileServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -923,7 +856,6 @@ internal FileServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("fileServicesName", fileServicesName); tracingParameters.Add("maxpagesize", maxpagesize); @@ -933,11 +865,10 @@ internal FileServicesOperations (StorageManagementClient client) // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}/usages").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/usages").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{FileServicesName}", System.Uri.EscapeDataString(fileServicesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1055,7 +986,7 @@ internal FileServicesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -1084,8 +1015,7 @@ internal FileServicesOperations (StorageManagementClient client) /// formula. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1117,9 +1047,14 @@ internal FileServicesOperations (StorageManagementClient client) { - string fileServicesName = "default"; - string fileServiceUsagesName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1134,10 +1069,6 @@ internal FileServicesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1158,24 +1089,6 @@ internal FileServicesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1185,8 +1098,6 @@ internal FileServicesOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("fileServicesName", fileServicesName); - tracingParameters.Add("fileServiceUsagesName", fileServiceUsagesName); tracingParameters.Add("cancellationToken", cancellationToken); @@ -1195,12 +1106,10 @@ internal FileServicesOperations (StorageManagementClient client) // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/{FileServicesName}/usages/{fileServiceUsagesName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/usages/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); - _url = _url.Replace("{FileServicesName}", System.Uri.EscapeDataString(fileServicesName)); - _url = _url.Replace("{fileServiceUsagesName}", System.Uri.EscapeDataString(fileServiceUsagesName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1496,7 +1405,7 @@ internal FileServicesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperationsExtensions.cs index 0fc4fa390386..8c11813b5f0a 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/FileServicesOperationsExtensions.cs @@ -19,8 +19,7 @@ public static partial class FileServicesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -39,8 +38,7 @@ public static FileServiceItems List(this IFileServicesOperations operations, str /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -58,36 +56,34 @@ public static FileServiceItems List(this IFileServicesOperations operations, str } } /// - /// Sets the properties of file services in storage accounts, including CORS + /// Gets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static FileServiceProperties SetServiceProperties(this IFileServicesOperations operations, string resourceGroupName, string accountName, FileServiceProperties parameters) + public static FileServiceProperties GetServiceProperties(this IFileServicesOperations operations, string resourceGroupName, string accountName) { - return ((IFileServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IFileServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } /// - /// Sets the properties of file services in storage accounts, including CORS + /// Gets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -97,44 +93,42 @@ public static FileServiceProperties SetServiceProperties(this IFileServicesOpera /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this IFileServicesOperations operations, string resourceGroupName, string accountName, FileServiceProperties parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this IFileServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Gets the properties of file services in storage accounts, including CORS + /// Sets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static FileServiceProperties GetServiceProperties(this IFileServicesOperations operations, string resourceGroupName, string accountName) + public static FileServiceProperties SetServiceProperties(this IFileServicesOperations operations, string resourceGroupName, string accountName, FileServiceProperties parameters) { - return ((IFileServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IFileServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// Gets the properties of file services in storage accounts, including CORS + /// Sets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -144,9 +138,9 @@ public static FileServiceProperties GetServiceProperties(this IFileServicesOpera /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this IFileServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this IFileServicesOperations operations, string resourceGroupName, string accountName, FileServiceProperties parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -158,8 +152,7 @@ public static FileServiceProperties GetServiceProperties(this IFileServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -182,8 +175,7 @@ public static FileServiceProperties GetServiceProperties(this IFileServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -213,8 +205,7 @@ public static FileServiceProperties GetServiceProperties(this IFileServicesOpera /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -235,8 +226,7 @@ public static FileServiceUsage GetServiceUsage(this IFileServicesOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperations.cs index b3ec86503559..2ba54ec2be8b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperations.cs @@ -42,8 +42,7 @@ internal FileSharesOperations (StorageManagementClient client) /// Lists all shares. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -90,6 +89,12 @@ internal FileSharesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -104,10 +109,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -128,22 +129,6 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } @@ -168,9 +153,9 @@ internal FileSharesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -296,7 +281,7 @@ internal FileSharesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -320,13 +305,10 @@ internal FileSharesOperations (StorageManagementClient client) } /// - /// Creates a new share under the specified account as described by request - /// body. The share resource includes metadata and properties for that share. - /// It does not include a list of the files contained by the share. + /// Gets properties of a specified share. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -341,10 +323,10 @@ internal FileSharesOperations (StorageManagementClient client) /// /// /// Optional, used to expand the properties within share's properties. Valid - /// values are: snapshots. Should be passed as a string with delimiter ',' + /// values are: stats. Should be passed as a string with delimiter ','. /// - /// - /// Properties of the file share to create. + /// + /// Optional, used to retrieve properties of a snapshot. /// /// /// Headers that will be added to request. @@ -367,17 +349,18 @@ internal FileSharesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (fileShare == null) + if (this.Client.ApiVersion == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "fileShare"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -392,10 +375,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -432,22 +411,7 @@ internal FileSharesOperations (StorageManagementClient client) } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -459,30 +423,30 @@ internal FileSharesOperations (StorageManagementClient client) tracingParameters.Add("accountName", accountName); tracingParameters.Add("shareName", shareName); tracingParameters.Add("expand", expand); + tracingParameters.Add("xMsSnapshot", xMsSnapshot); - tracingParameters.Add("fileShare", fileShare); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); - if (expand != null) - { - _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand))); - } if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (expand != null) + { + _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -490,7 +454,7 @@ internal FileSharesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -505,6 +469,14 @@ internal FileSharesOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } + if (xMsSnapshot != null) + { + if (_httpRequest.Headers.Contains("x-ms-snapshot")) + { + _httpRequest.Headers.Remove("x-ms-snapshot"); + } + _httpRequest.Headers.TryAddWithoutValidation("x-ms-snapshot", xMsSnapshot); + } if (customHeaders != null) { @@ -519,12 +491,6 @@ internal FileSharesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(fileShare != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(fileShare, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -547,7 +513,7 @@ internal FileSharesOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200 && (int)_statusCode != 201) + if ((int)_statusCode != 200) { var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try @@ -608,24 +574,6 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } - // Deserialize Response - if ((int)_statusCode == 201) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -638,13 +586,12 @@ internal FileSharesOperations (StorageManagementClient client) } /// - /// Updates share properties as specified in request body. Properties not - /// mentioned in the request will not be changed. Update fails if the specified - /// share does not already exist. + /// Creates a new share under the specified account as described by request + /// body. The share resource includes metadata and properties for that share. + /// It does not include a list of the files contained by the share. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -657,8 +604,12 @@ internal FileSharesOperations (StorageManagementClient client) /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// + /// + /// Optional, used to expand the properties within share's properties. Valid + /// values are: snapshots. Should be passed as a string with delimiter ',' + /// /// - /// Properties to update for the file share. + /// Properties of the file share to create. /// /// /// Headers that will be added to request. @@ -681,7 +632,7 @@ internal FileSharesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -691,6 +642,13 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "fileShare"); } + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -705,10 +663,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -744,22 +698,7 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "shareName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -770,26 +709,31 @@ internal FileSharesOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("shareName", shareName); + tracingParameters.Add("expand", expand); tracingParameters.Add("fileShare", fileShare); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (expand != null) + { + _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -797,7 +741,7 @@ internal FileSharesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -854,7 +798,7 @@ internal FileSharesOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200) + if ((int)_statusCode != 200 && (int)_statusCode != 201) { var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try @@ -915,6 +859,24 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } + // Deserialize Response + if ((int)_statusCode == 201) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -927,11 +889,12 @@ internal FileSharesOperations (StorageManagementClient client) } /// - /// Gets properties of a specified share. + /// Updates share properties as specified in request body. Properties not + /// mentioned in the request will not be changed. Update fails if the specified + /// share does not already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -944,12 +907,8 @@ internal FileSharesOperations (StorageManagementClient client) /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional, used to expand the properties within share's properties. Valid - /// values are: stats. Should be passed as a string with delimiter ','. - /// - /// - /// Optional, used to retrieve properties of a snapshot. + /// + /// Properties to update for the file share. /// /// /// Headers that will be added to request. @@ -972,12 +931,22 @@ internal FileSharesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (fileShare == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "fileShare"); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -992,10 +961,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1031,24 +996,6 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "shareName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1059,31 +1006,26 @@ internal FileSharesOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("shareName", shareName); - tracingParameters.Add("expand", expand); - tracingParameters.Add("xMsSnapshot", xMsSnapshot); + tracingParameters.Add("fileShare", fileShare); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (expand != null) - { - _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(expand))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -1091,7 +1033,7 @@ internal FileSharesOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1106,14 +1048,6 @@ internal FileSharesOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } - if (xMsSnapshot != null) - { - if (_httpRequest.Headers.Contains("x-ms-snapshot")) - { - _httpRequest.Headers.Remove("x-ms-snapshot"); - } - _httpRequest.Headers.TryAddWithoutValidation("x-ms-snapshot", xMsSnapshot); - } if (customHeaders != null) { @@ -1128,6 +1062,12 @@ internal FileSharesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(fileShare != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(fileShare, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -1226,8 +1166,7 @@ internal FileSharesOperations (StorageManagementClient client) /// Deletes specified share under its account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1277,6 +1216,12 @@ internal FileSharesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1291,10 +1236,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1330,22 +1271,6 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "shareName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing @@ -1369,10 +1294,10 @@ internal FileSharesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1504,12 +1429,12 @@ internal FileSharesOperations (StorageManagementClient client) } /// - /// Restore a file share within a valid retention days if share soft delete is - /// enabled + /// The Lease Share operation establishes and manages a lock on a share for + /// delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1522,11 +1447,11 @@ internal FileSharesOperations (StorageManagementClient client) /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Required. Identify the name of the deleted share that will be restored. + /// + /// Optional. Specify the snapshot time to lease a snapshot. /// - /// - /// Required. Identify the version of the deleted share that will be restored. + /// + /// The content of the action request /// /// /// Headers that will be added to request. @@ -1537,6 +1462,9 @@ internal FileSharesOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// + /// + /// Thrown when unable to deserialize the response + /// /// /// Thrown when a required parameter is null /// @@ -1546,12 +1474,22 @@ internal FileSharesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task RestoreWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (parameters != null) + { + parameters.Validate(); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1566,10 +1504,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1605,28 +1539,7 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "shareName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - DeletedShare deletedShare = new DeletedShare(); - if(deletedShareName != null||deletedShareVersion != null) - { - deletedShare.DeletedShareName = deletedShareName; - deletedShare.DeletedShareVersion = deletedShareVersion; - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1637,20 +1550,21 @@ internal FileSharesOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("shareName", shareName); + tracingParameters.Add("xMsSnapshot", xMsSnapshot); - tracingParameters.Add("deletedShare", deletedShare); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Restore", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Lease", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/lease").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1679,6 +1593,14 @@ internal FileSharesOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } + if (xMsSnapshot != null) + { + if (_httpRequest.Headers.Contains("x-ms-snapshot")) + { + _httpRequest.Headers.Remove("x-ms-snapshot"); + } + _httpRequest.Headers.TryAddWithoutValidation("x-ms-snapshot", xMsSnapshot); + } if (customHeaders != null) { @@ -1693,9 +1615,9 @@ internal FileSharesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(deletedShare != null) + if(parameters != null) { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(deletedShare, this.Client.SerializationSettings); + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } @@ -1756,7 +1678,7 @@ internal FileSharesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1764,6 +1686,37 @@ internal FileSharesOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -1776,13 +1729,11 @@ internal FileSharesOperations (StorageManagementClient client) } /// - /// The Lease Share operation establishes and manages a lock on a share for - /// delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// Restore a file share within a valid retention days if share soft delete is + /// enabled /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1795,11 +1746,11 @@ internal FileSharesOperations (StorageManagementClient client) /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional. Specify the snapshot time to lease a snapshot. + /// + /// Required. Identify the name of the deleted share that will be restored. /// - /// - /// Lease Share request body. + /// + /// Required. Identify the version of the deleted share that will be restored. /// /// /// Headers that will be added to request. @@ -1810,9 +1761,6 @@ internal FileSharesOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// /// /// Thrown when a required parameter is null /// @@ -1822,16 +1770,18 @@ internal FileSharesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task RestoreWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1846,10 +1796,6 @@ internal FileSharesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1885,23 +1831,12 @@ internal FileSharesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "shareName", 3); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + DeletedShare deletedShare = new DeletedShare(); + if(deletedShareName != null||deletedShareVersion != null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + deletedShare.DeletedShareName = deletedShareName; + deletedShare.DeletedShareVersion = deletedShareVersion; } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1912,21 +1847,20 @@ internal FileSharesOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); tracingParameters.Add("shareName", shareName); - tracingParameters.Add("xMsSnapshot", xMsSnapshot); - tracingParameters.Add("parameters", parameters); + tracingParameters.Add("deletedShare", deletedShare); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Lease", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Restore", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/lease").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/fileServices/default/shares/{shareName}/restore").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); _url = _url.Replace("{shareName}", System.Uri.EscapeDataString(shareName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1955,14 +1889,6 @@ internal FileSharesOperations (StorageManagementClient client) } _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); } - if (xMsSnapshot != null) - { - if (_httpRequest.Headers.Contains("x-ms-snapshot")) - { - _httpRequest.Headers.Remove("x-ms-snapshot"); - } - _httpRequest.Headers.TryAddWithoutValidation("x-ms-snapshot", xMsSnapshot); - } if (customHeaders != null) { @@ -1977,9 +1903,9 @@ internal FileSharesOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) + if(deletedShare != null) { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(deletedShare, this.Client.SerializationSettings); _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } @@ -2040,7 +1966,7 @@ internal FileSharesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2048,37 +1974,6 @@ internal FileSharesOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } - // Deserialize Response - if ((int)_statusCode == 200) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } - try - { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -2249,7 +2144,7 @@ internal FileSharesOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperationsExtensions.cs index 3df7d48720fe..ae7e870c0ae6 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/FileSharesOperationsExtensions.cs @@ -19,8 +19,7 @@ public static partial class FileSharesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -52,8 +51,7 @@ public static partial class FileSharesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -84,16 +82,13 @@ public static partial class FileSharesOperationsExtensions } } /// - /// Creates a new share under the specified account as described by request - /// body. The share resource includes metadata and properties for that share. - /// It does not include a list of the files contained by the share. + /// Gets properties of a specified share. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -108,24 +103,24 @@ public static partial class FileSharesOperationsExtensions /// /// /// Optional, used to expand the properties within share's properties. Valid - /// values are: snapshots. Should be passed as a string with delimiter ',' + /// values are: stats. Should be passed as a string with delimiter ','. /// - public static FileShare Create(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string)) + /// + /// Optional, used to retrieve properties of a snapshot. + /// + public static FileShare Get(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string)) { - return ((IFileSharesOperations)operations).CreateAsync(resourceGroupName, accountName, shareName, fileShare, expand).GetAwaiter().GetResult(); + return ((IFileSharesOperations)operations).GetAsync(resourceGroupName, accountName, shareName, expand, xMsSnapshot).GetAwaiter().GetResult(); } /// - /// Creates a new share under the specified account as described by request - /// body. The share resource includes metadata and properties for that share. - /// It does not include a list of the files contained by the share. + /// Gets properties of a specified share. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -140,29 +135,31 @@ public static partial class FileSharesOperationsExtensions /// /// /// Optional, used to expand the properties within share's properties. Valid - /// values are: snapshots. Should be passed as a string with delimiter ',' + /// values are: stats. Should be passed as a string with delimiter ','. + /// + /// + /// Optional, used to retrieve properties of a snapshot. /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task CreateAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, shareName, fileShare, expand, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, shareName, expand, xMsSnapshot, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Updates share properties as specified in request body. Properties not - /// mentioned in the request will not be changed. Update fails if the specified - /// share does not already exist. + /// Creates a new share under the specified account as described by request + /// body. The share resource includes metadata and properties for that share. + /// It does not include a list of the files contained by the share. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -175,22 +172,25 @@ public static partial class FileSharesOperationsExtensions /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - public static FileShare Update(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare) + /// + /// Optional, used to expand the properties within share's properties. Valid + /// values are: snapshots. Should be passed as a string with delimiter ',' + /// + public static FileShare Create(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string)) { - return ((IFileSharesOperations)operations).UpdateAsync(resourceGroupName, accountName, shareName, fileShare).GetAwaiter().GetResult(); + return ((IFileSharesOperations)operations).CreateAsync(resourceGroupName, accountName, shareName, fileShare, expand).GetAwaiter().GetResult(); } /// - /// Updates share properties as specified in request body. Properties not - /// mentioned in the request will not be changed. Update fails if the specified - /// share does not already exist. + /// Creates a new share under the specified account as described by request + /// body. The share resource includes metadata and properties for that share. + /// It does not include a list of the files contained by the share. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -203,25 +203,30 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// + /// + /// Optional, used to expand the properties within share's properties. Valid + /// values are: snapshots. Should be passed as a string with delimiter ',' + /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task UpdateAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task CreateAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, shareName, fileShare, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, shareName, fileShare, expand, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Gets properties of a specified share. + /// Updates share properties as specified in request body. Properties not + /// mentioned in the request will not be changed. Update fails if the specified + /// share does not already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -234,27 +239,21 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional, used to expand the properties within share's properties. Valid - /// values are: stats. Should be passed as a string with delimiter ','. - /// - /// - /// Optional, used to retrieve properties of a snapshot. - /// - public static FileShare Get(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string)) + public static FileShare Update(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare) { - return ((IFileSharesOperations)operations).GetAsync(resourceGroupName, accountName, shareName, expand, xMsSnapshot).GetAwaiter().GetResult(); + return ((IFileSharesOperations)operations).UpdateAsync(resourceGroupName, accountName, shareName, fileShare).GetAwaiter().GetResult(); } /// - /// Gets properties of a specified share. + /// Updates share properties as specified in request body. Properties not + /// mentioned in the request will not be changed. Update fails if the specified + /// share does not already exist. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -267,19 +266,12 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional, used to expand the properties within share's properties. Valid - /// values are: stats. Should be passed as a string with delimiter ','. - /// - /// - /// Optional, used to retrieve properties of a snapshot. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task UpdateAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, shareName, expand, xMsSnapshot, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, shareName, fileShare, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -291,8 +283,7 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -330,8 +321,7 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -365,15 +355,15 @@ public static FileShare Update(this IFileSharesOperations operations, string res (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, shareName, xMsSnapshot, include, null, cancellationToken).ConfigureAwait(false)).Dispose(); } /// - /// Restore a file share within a valid retention days if share soft delete is - /// enabled + /// The Lease Share operation establishes and manages a lock on a share for + /// delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -386,21 +376,24 @@ public static FileShare Update(this IFileSharesOperations operations, string res /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - public static void Restore(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion) + /// + /// Optional. Specify the snapshot time to lease a snapshot. + /// + public static LeaseShareResponse Lease(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest)) { - ((IFileSharesOperations)operations).RestoreAsync(resourceGroupName, accountName, shareName, deletedShareName, deletedShareVersion).GetAwaiter().GetResult(); + return ((IFileSharesOperations)operations).LeaseAsync(resourceGroupName, accountName, shareName, xMsSnapshot, parameters).GetAwaiter().GetResult(); } /// - /// Restore a file share within a valid retention days if share soft delete is - /// enabled + /// The Lease Share operation establishes and manages a lock on a share for + /// delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -413,24 +406,28 @@ public static void Restore(this IFileSharesOperations operations, string resourc /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// + /// + /// Optional. Specify the snapshot time to lease a snapshot. + /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task RestoreAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task LeaseAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.RestoreWithHttpMessagesAsync(resourceGroupName, accountName, shareName, deletedShareName, deletedShareVersion, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.LeaseWithHttpMessagesAsync(resourceGroupName, accountName, shareName, xMsSnapshot, parameters, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } } /// - /// The Lease Share operation establishes and manages a lock on a share for - /// delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// Restore a file share within a valid retention days if share soft delete is + /// enabled /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -443,25 +440,20 @@ public static void Restore(this IFileSharesOperations operations, string resourc /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional. Specify the snapshot time to lease a snapshot. - /// - public static LeaseShareResponse Lease(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest)) + public static void Restore(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion) { - return ((IFileSharesOperations)operations).LeaseAsync(resourceGroupName, accountName, shareName, xMsSnapshot, parameters).GetAwaiter().GetResult(); + ((IFileSharesOperations)operations).RestoreAsync(resourceGroupName, accountName, shareName, deletedShareName, deletedShareVersion).GetAwaiter().GetResult(); } /// - /// The Lease Share operation establishes and manages a lock on a share for - /// delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// Restore a file share within a valid retention days if share soft delete is + /// enabled /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -474,18 +466,12 @@ public static void Restore(this IFileSharesOperations operations, string resourc /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional. Specify the snapshot time to lease a snapshot. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task LeaseAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task RestoreAsync(this IFileSharesOperations operations, string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.LeaseWithHttpMessagesAsync(resourceGroupName, accountName, shareName, xMsSnapshot, parameters, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } + (await operations.RestoreWithHttpMessagesAsync(resourceGroupName, accountName, shareName, deletedShareName, deletedShareVersion, null, cancellationToken).ConfigureAwait(false)).Dispose(); } /// /// Lists all shares. diff --git a/src/Storage/Storage.Management.Sdk/Generated/IBlobContainersOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IBlobContainersOperations.cs index 14369c7e6a29..f139ba4cb65b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IBlobContainersOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IBlobContainersOperations.cs @@ -22,8 +22,7 @@ public partial interface IBlobContainersOperations /// SRP today does not return continuation token. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -56,20 +55,13 @@ public partial interface IBlobContainersOperations System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Creates a new container under the specified account as described by request - /// body. The container resource includes metadata and properties for that - /// container. It does not include a list of the blobs contained by the - /// container. + /// Gets properties of a specified container. /// /// - /// Creates a new container under the specified account as described by request - /// body. The container resource includes metadata and properties for that - /// container. It does not include a list of the blobs contained by the - /// container. + /// Gets properties of a specified container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -82,9 +74,6 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Properties of the blob container to create. - /// /// /// The headers that will be added to request. /// @@ -97,21 +86,22 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Updates container properties as specified in request body. Properties not - /// mentioned in the request will be unchanged. Update fails if the specified - /// container doesn't already exist. + /// Creates a new container under the specified account as described by request + /// body. The container resource includes metadata and properties for that + /// container. It does not include a list of the blobs contained by the + /// container. /// /// - /// Updates container properties as specified in request body. Properties not - /// mentioned in the request will be unchanged. Update fails if the specified - /// container doesn't already exist. + /// Creates a new container under the specified account as described by request + /// body. The container resource includes metadata and properties for that + /// container. It does not include a list of the blobs contained by the + /// container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -125,7 +115,7 @@ public partial interface IBlobContainersOperations /// must be immediately preceded and followed by a letter or number. /// /// - /// Properties to update for the blob container. + /// Properties of the blob container to create. /// /// /// The headers that will be added to request. @@ -139,17 +129,20 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets properties of a specified container. + /// Updates container properties as specified in request body. Properties not + /// mentioned in the request will be unchanged. Update fails if the specified + /// container doesn't already exist. /// /// - /// Gets properties of a specified container. + /// Updates container properties as specified in request body. Properties not + /// mentioned in the request will be unchanged. Update fails if the specified + /// container doesn't already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -162,6 +155,9 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// Properties to update for the blob container. + /// /// /// The headers that will be added to request. /// @@ -174,7 +170,7 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, BlobContainer blobContainer, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Deletes specified container under its account. @@ -183,8 +179,7 @@ public partial interface IBlobContainersOperations /// Deletes specified container under its account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -209,18 +204,17 @@ public partial interface IBlobContainersOperations System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Sets legal hold tags. Setting the same tag results in an idempotent - /// operation. SetLegalHold follows an append pattern and does not clear out - /// the existing tags that are not specified in the request. + /// Clears legal hold tags. Clearing the same or non-existent tag results in an + /// idempotent operation. ClearLegalHold clears out only the specified tags in + /// the request. /// /// - /// Sets legal hold tags. Setting the same tag results in an idempotent - /// operation. SetLegalHold follows an append pattern and does not clear out - /// the existing tags that are not specified in the request. + /// Clears legal hold tags. Clearing the same or non-existent tag results in an + /// idempotent operation. ClearLegalHold clears out only the specified tags in + /// the request. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -254,21 +248,18 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> SetLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> ClearLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Clears legal hold tags. Clearing the same or non-existent tag results in an - /// idempotent operation. ClearLegalHold clears out only the specified tags in - /// the request. + /// Gets the existing immutability policy along with the corresponding ETag in + /// response headers and body. /// /// - /// Clears legal hold tags. Clearing the same or non-existent tag results in an - /// idempotent operation. ClearLegalHold clears out only the specified tags in - /// the request. + /// Gets the existing immutability policy along with the corresponding ETag in + /// response headers and body. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -281,14 +272,10 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Each tag should be 3 to 23 alphanumeric characters and is normalized to - /// lower case at SRP. - /// - /// - /// When enabled, new blocks can be written to both 'Append and Bock Blobs' - /// while maintaining legal hold protection and compliance. Only new blocks can - /// be added and any existing blocks cannot be modified or deleted. + /// + /// The entity state (ETag) version of the immutability policy to update must + /// be returned to the server for all update operations. The ETag value must + /// include the leading and trailing double quotes as returned by the service. /// /// /// The headers that will be added to request. @@ -302,7 +289,7 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> ClearLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Creates or updates an unlocked immutability policy. ETag in If-Match is @@ -313,8 +300,7 @@ public partial interface IBlobContainersOperations /// honored if given but not required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -351,16 +337,21 @@ public partial interface IBlobContainersOperations System.Threading.Tasks.Task> CreateOrUpdateImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets the existing immutability policy along with the corresponding ETag in - /// response headers and body. + /// Aborts an unlocked immutability policy. The response of delete has + /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + /// required for this operation. Deleting a locked immutability policy is not + /// allowed, the only way is to delete the container after deleting all expired + /// blobs inside the policy locked container. /// /// - /// Gets the existing immutability policy along with the corresponding ETag in - /// response headers and body. + /// Aborts an unlocked immutability policy. The response of delete has + /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is + /// required for this operation. Deleting a locked immutability policy is not + /// allowed, the only way is to delete the container after deleting all expired + /// blobs inside the policy locked container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -390,25 +381,20 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> DeleteImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Aborts an unlocked immutability policy. The response of delete has - /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is - /// required for this operation. Deleting a locked immutability policy is not - /// allowed, the only way is to delete the container after deleting all expired - /// blobs inside the policy locked container. + /// Extends the immutabilityPeriodSinceCreationInDays of a locked + /// immutabilityPolicy. The only action allowed on a Locked policy will be this + /// action. ETag in If-Match is required for this operation. /// /// - /// Aborts an unlocked immutability policy. The response of delete has - /// immutabilityPeriodSinceCreationInDays set to 0. ETag in If-Match is - /// required for this operation. Deleting a locked immutability policy is not - /// allowed, the only way is to delete the container after deleting all expired - /// blobs inside the policy locked container. + /// Extends the immutabilityPeriodSinceCreationInDays of a locked + /// immutabilityPolicy. The only action allowed on a Locked policy will be this + /// action. ETag in If-Match is required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -426,6 +412,9 @@ public partial interface IBlobContainersOperations /// be returned to the server for all update operations. The ETag value must /// include the leading and trailing double quotes as returned by the service. /// + /// + /// The content of the action request + /// /// /// The headers that will be added to request. /// @@ -438,7 +427,7 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> DeleteImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> ExtendImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Sets the ImmutabilityPolicy to Locked state. The only action allowed on a @@ -451,8 +440,7 @@ public partial interface IBlobContainersOperations /// required for this operation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -485,18 +473,17 @@ public partial interface IBlobContainersOperations System.Threading.Tasks.Task> LockImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Extends the immutabilityPeriodSinceCreationInDays of a locked - /// immutabilityPolicy. The only action allowed on a Locked policy will be this - /// action. ETag in If-Match is required for this operation. + /// The Lease Container operation establishes and manages a lock on a container + /// for delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// Extends the immutabilityPeriodSinceCreationInDays of a locked - /// immutabilityPolicy. The only action allowed on a Locked policy will be this - /// action. ETag in If-Match is required for this operation. + /// The Lease Container operation establishes and manages a lock on a container + /// for delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -509,14 +496,8 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// The entity state (ETag) version of the immutability policy to update must - /// be returned to the server for all update operations. The ETag value must - /// include the leading and trailing double quotes as returned by the service. - /// /// - /// The ImmutabilityPolicy Properties that will be extended for a blob - /// container. + /// The content of the action request /// /// /// The headers that will be added to request. @@ -530,21 +511,24 @@ public partial interface IBlobContainersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> ExtendImmutabilityPolicyWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, string ifMatch, ImmutabilityPolicy parameters = default(ImmutabilityPolicy), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// The Lease Container operation establishes and manages a lock on a container - /// for delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// This operation migrates a blob container from container level WORM to + /// object level immutability enabled container. Prerequisites require a + /// container level immutability policy either in locked or unlocked state, + /// Account level versioning must be enabled and there should be no Legal hold + /// on the container. /// /// - /// The Lease Container operation establishes and manages a lock on a container - /// for delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// This operation migrates a blob container from container level WORM to + /// object level immutability enabled container. Prerequisites require a + /// container level immutability policy either in locked or unlocked state, + /// Account level versioning must be enabled and there should be no Legal hold + /// on the container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -557,9 +541,6 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Lease Container request body. - /// /// /// The headers that will be added to request. /// @@ -569,28 +550,20 @@ public partial interface IBlobContainersOperations /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, LeaseContainerRequest parameters = default(LeaseContainerRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> ObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// This operation migrates a blob container from container level WORM to - /// object level immutability enabled container. Prerequisites require a - /// container level immutability policy either in locked or unlocked state, - /// Account level versioning must be enabled and there should be no Legal hold - /// on the container. + /// Sets legal hold tags. Setting the same tag results in an idempotent + /// operation. SetLegalHold follows an append pattern and does not clear out + /// the existing tags that are not specified in the request. /// /// - /// This operation migrates a blob container from container level WORM to - /// object level immutability enabled container. Prerequisites require a - /// container level immutability policy either in locked or unlocked state, - /// Account level versioning must be enabled and there should be no Legal hold - /// on the container. + /// Sets legal hold tags. Setting the same tag results in an idempotent + /// operation. SetLegalHold follows an append pattern and does not clear out + /// the existing tags that are not specified in the request. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -603,6 +576,15 @@ public partial interface IBlobContainersOperations /// numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// Each tag should be 3 to 23 alphanumeric characters and is normalized to + /// lower case at SRP. + /// + /// + /// When enabled, new blocks can be written to both 'Append and Bock Blobs' + /// while maintaining legal hold protection and compliance. Only new blocks can + /// be added and any existing blocks cannot be modified or deleted. + /// /// /// The headers that will be added to request. /// @@ -612,7 +594,10 @@ public partial interface IBlobContainersOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task ObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> SetLegalHoldWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.IList tags, bool? allowProtectedAppendWritesAll = default(bool?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// This operation migrates a blob container from container level WORM to @@ -629,8 +614,7 @@ public partial interface IBlobContainersOperations /// on the container. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -652,7 +636,7 @@ public partial interface IBlobContainersOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task BeginObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> BeginObjectLevelWormWithHttpMessagesAsync(string resourceGroupName, string accountName, string containerName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Lists all containers and does not support a prefix like data plane. Also diff --git a/src/Storage/Storage.Management.Sdk/Generated/IBlobInventoryPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IBlobInventoryPoliciesOperations.cs index c19d6254561c..1224ad0b5bb1 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IBlobInventoryPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IBlobInventoryPoliciesOperations.cs @@ -22,8 +22,37 @@ public partial interface IBlobInventoryPoliciesOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the blob inventory policy associated with the specified storage + /// account. + /// + /// + /// Gets the blob inventory policy associated with the specified storage + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -51,8 +80,7 @@ public partial interface IBlobInventoryPoliciesOperations /// Sets the blob inventory policy to the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -86,8 +114,7 @@ public partial interface IBlobInventoryPoliciesOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -113,14 +140,8 @@ public partial interface IBlobInventoryPoliciesOperations /// Gets the blob inventory policy associated with the specified storage /// account. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. + /// + /// The NextLink from the previous successful call to List operation. /// /// /// The headers that will be added to request. @@ -134,7 +155,7 @@ public partial interface IBlobInventoryPoliciesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IBlobServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IBlobServicesOperations.cs index 4ef6540d4776..cee500bca1d9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IBlobServicesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IBlobServicesOperations.cs @@ -22,8 +22,7 @@ public partial interface IBlobServicesOperations /// object named default. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -42,31 +41,26 @@ public partial interface IBlobServicesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Sets the properties of a storage account’s Blob service, including + /// Gets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// Sets the properties of a storage account’s Blob service, including + /// Gets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The properties of a storage account’s Blob service, including properties - /// for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. - /// /// /// The headers that will be added to request. /// @@ -79,27 +73,30 @@ public partial interface IBlobServicesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets the properties of a storage account’s Blob service, including + /// Sets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// Gets the properties of a storage account’s Blob service, including + /// Sets the properties of a storage account’s Blob service, including /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) /// rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The properties of a storage account’s Blob service, including properties + /// for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules. + /// /// /// The headers that will be added to request. /// @@ -112,7 +109,32 @@ public partial interface IBlobServicesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, BlobServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// List blob services of storage account. It returns a collection of one + /// object named default. + /// + /// + /// List blob services of storage account. It returns a collection of one + /// object named default. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IDeletedAccountsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IDeletedAccountsOperations.cs index 6e2aca79243b..b79722475094 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IDeletedAccountsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IDeletedAccountsOperations.cs @@ -39,12 +39,12 @@ public partial interface IDeletedAccountsOperations /// /// Get properties of specified deleted account resource. /// + /// + /// The name of the Azure region. + /// /// /// Name of the deleted storage account. /// - /// - /// The location of the deleted storage account. - /// /// /// The headers that will be added to request. /// @@ -57,7 +57,7 @@ public partial interface IDeletedAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string deletedAccountName, string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string location, string deletedAccountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Lists deleted accounts under the subscription. diff --git a/src/Storage/Storage.Management.Sdk/Generated/IEncryptionScopesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IEncryptionScopesOperations.cs index 941aed0b2d5a..99a2569a5018 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IEncryptionScopesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IEncryptionScopesOperations.cs @@ -14,34 +14,32 @@ namespace Microsoft.Azure.Management.Storage public partial interface IEncryptionScopesOperations { /// - /// Synchronously creates or updates an encryption scope under the specified - /// storage account. If an encryption scope is already created and a subsequent - /// request is issued with different properties, the encryption scope - /// properties will be updated per the specified request. + /// Lists all the encryption scopes available under the specified storage + /// account. /// /// - /// Synchronously creates or updates an encryption scope under the specified - /// storage account. If an encryption scope is already created and a subsequent - /// request is issued with different properties, the encryption scope - /// properties will be updated per the specified request. + /// Lists all the encryption scopes available under the specified storage + /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of the encryption scope within the specified storage account. - /// Encryption scope 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. + /// + /// Optional, specifies the maximum number of encryption scopes that will be + /// included in the list response. /// - /// - /// Encryption scope properties to be used for the create or update. + /// + /// Optional. When specified, only encryption scope names starting with the + /// filter will be listed. + /// + /// + /// Optional, when specified, will list encryption scopes with the specific + /// state. Defaults to All /// /// /// The headers that will be added to request. @@ -55,19 +53,16 @@ public partial interface IEncryptionScopesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> PutWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Update encryption scope properties as specified in the request body. Update - /// fails if the specified encryption scope does not already exist. + /// Returns the properties for the specified encryption scope. /// /// - /// Update encryption scope properties as specified in the request body. Update - /// fails if the specified encryption scope does not already exist. + /// Returns the properties for the specified encryption scope. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -80,9 +75,6 @@ public partial interface IEncryptionScopesOperations /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// - /// - /// Encryption scope properties to be used for the update. - /// /// /// The headers that will be added to request. /// @@ -95,17 +87,22 @@ public partial interface IEncryptionScopesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> PatchWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Returns the properties for the specified encryption scope. + /// Synchronously creates or updates an encryption scope under the specified + /// storage account. If an encryption scope is already created and a subsequent + /// request is issued with different properties, the encryption scope + /// properties will be updated per the specified request. /// /// - /// Returns the properties for the specified encryption scope. + /// Synchronously creates or updates an encryption scope under the specified + /// storage account. If an encryption scope is already created and a subsequent + /// request is issued with different properties, the encryption scope + /// properties will be updated per the specified request. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -118,6 +115,9 @@ public partial interface IEncryptionScopesOperations /// use numbers, lower-case letters and dash (-) only. Every dash (-) character /// must be immediately preceded and followed by a letter or number. /// + /// + /// Encryption scope properties to be used for the create or update. + /// /// /// The headers that will be added to request. /// @@ -130,36 +130,32 @@ public partial interface IEncryptionScopesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> PutWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Lists all the encryption scopes available under the specified storage - /// account. + /// Update encryption scope properties as specified in the request body. Update + /// fails if the specified encryption scope does not already exist. /// /// - /// Lists all the encryption scopes available under the specified storage - /// account. + /// Update encryption scope properties as specified in the request body. Update + /// fails if the specified encryption scope does not already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Optional, specifies the maximum number of encryption scopes that will be - /// included in the list response. - /// - /// - /// Optional. When specified, only encryption scope names starting with the - /// filter will be listed. + /// + /// The name of the encryption scope within the specified storage account. + /// Encryption scope 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. /// - /// - /// Optional, when specified, will list encryption scopes with the specific - /// state. Defaults to All + /// + /// Encryption scope properties to be used for the update. /// /// /// The headers that will be added to request. @@ -173,7 +169,7 @@ public partial interface IEncryptionScopesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> PatchWithHttpMessagesAsync(string resourceGroupName, string accountName, string encryptionScopeName, EncryptionScope encryptionScope, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Lists all the encryption scopes available under the specified storage diff --git a/src/Storage/Storage.Management.Sdk/Generated/IFileServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IFileServicesOperations.cs index 6dfa1c005588..b922c638e479 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IFileServicesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IFileServicesOperations.cs @@ -20,8 +20,7 @@ public partial interface IFileServicesOperations /// List all file services in storage accounts /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -43,26 +42,21 @@ public partial interface IFileServicesOperations System.Threading.Tasks.Task> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Sets the properties of file services in storage accounts, including CORS + /// Gets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// Sets the properties of file services in storage accounts, including CORS + /// Gets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The properties of file services in storage accounts, including CORS - /// (Cross-Origin Resource Sharing) rules. - /// /// /// The headers that will be added to request. /// @@ -75,25 +69,28 @@ public partial interface IFileServicesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, FileServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets the properties of file services in storage accounts, including CORS + /// Sets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// Gets the properties of file services in storage accounts, including CORS + /// Sets the properties of file services in storage accounts, including CORS /// (Cross-Origin Resource Sharing) rules. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The properties of file services in storage accounts, including CORS + /// (Cross-Origin Resource Sharing) rules. + /// /// /// The headers that will be added to request. /// @@ -106,7 +103,7 @@ public partial interface IFileServicesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, FileServiceProperties parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Gets the usages of file service in storage account. @@ -115,8 +112,7 @@ public partial interface IFileServicesOperations /// Gets the usages of file service in storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -152,8 +148,7 @@ public partial interface IFileServicesOperations /// formula. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/IFileSharesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IFileSharesOperations.cs index 228fda4b23b4..bdf3f677133d 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IFileSharesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IFileSharesOperations.cs @@ -20,8 +20,7 @@ public partial interface IFileSharesOperations /// Lists all shares. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -56,18 +55,13 @@ public partial interface IFileSharesOperations System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string), string expand = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Creates a new share under the specified account as described by request - /// body. The share resource includes metadata and properties for that share. - /// It does not include a list of the files contained by the share. + /// Gets properties of a specified share. /// /// - /// Creates a new share under the specified account as described by request - /// body. The share resource includes metadata and properties for that share. - /// It does not include a list of the files contained by the share. + /// Gets properties of a specified share. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -82,10 +76,10 @@ public partial interface IFileSharesOperations /// /// /// Optional, used to expand the properties within share's properties. Valid - /// values are: snapshots. Should be passed as a string with delimiter ',' + /// values are: stats. Should be passed as a string with delimiter ','. /// - /// - /// Properties of the file share to create. + /// + /// Optional, used to retrieve properties of a snapshot. /// /// /// The headers that will be added to request. @@ -99,21 +93,20 @@ public partial interface IFileSharesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Updates share properties as specified in request body. Properties not - /// mentioned in the request will not be changed. Update fails if the specified - /// share does not already exist. + /// Creates a new share under the specified account as described by request + /// body. The share resource includes metadata and properties for that share. + /// It does not include a list of the files contained by the share. /// /// - /// Updates share properties as specified in request body. Properties not - /// mentioned in the request will not be changed. Update fails if the specified - /// share does not already exist. + /// Creates a new share under the specified account as described by request + /// body. The share resource includes metadata and properties for that share. + /// It does not include a list of the files contained by the share. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -126,8 +119,12 @@ public partial interface IFileSharesOperations /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// + /// + /// Optional, used to expand the properties within share's properties. Valid + /// values are: snapshots. Should be passed as a string with delimiter ',' + /// /// - /// Properties to update for the file share. + /// Properties of the file share to create. /// /// /// The headers that will be added to request. @@ -141,17 +138,20 @@ public partial interface IFileSharesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, string expand = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets properties of a specified share. + /// Updates share properties as specified in request body. Properties not + /// mentioned in the request will not be changed. Update fails if the specified + /// share does not already exist. /// /// - /// Gets properties of a specified share. + /// Updates share properties as specified in request body. Properties not + /// mentioned in the request will not be changed. Update fails if the specified + /// share does not already exist. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -164,12 +164,8 @@ public partial interface IFileSharesOperations /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional, used to expand the properties within share's properties. Valid - /// values are: stats. Should be passed as a string with delimiter ','. - /// - /// - /// Optional, used to retrieve properties of a snapshot. + /// + /// Properties to update for the file share. /// /// /// The headers that will be added to request. @@ -183,7 +179,7 @@ public partial interface IFileSharesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string expand = default(string), string xMsSnapshot = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, FileShare fileShare, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Deletes specified share under its account. @@ -192,8 +188,7 @@ public partial interface IFileSharesOperations /// Deletes specified share under its account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -231,16 +226,17 @@ public partial interface IFileSharesOperations System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Restore a file share within a valid retention days if share soft delete is - /// enabled + /// The Lease Share operation establishes and manages a lock on a share for + /// delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// Restore a file share within a valid retention days if share soft delete is - /// enabled + /// The Lease Share operation establishes and manages a lock on a share for + /// delete operations. The lock duration can be 15 to 60 seconds, or can be + /// infinite. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -253,11 +249,11 @@ public partial interface IFileSharesOperations /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Required. Identify the name of the deleted share that will be restored. + /// + /// Optional. Specify the snapshot time to lease a snapshot. /// - /// - /// Required. Identify the version of the deleted share that will be restored. + /// + /// The content of the action request /// /// /// The headers that will be added to request. @@ -268,21 +264,21 @@ public partial interface IFileSharesOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task RestoreWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// The Lease Share operation establishes and manages a lock on a share for - /// delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// Restore a file share within a valid retention days if share soft delete is + /// enabled /// /// - /// The Lease Share operation establishes and manages a lock on a share for - /// delete operations. The lock duration can be 15 to 60 seconds, or can be - /// infinite. + /// Restore a file share within a valid retention days if share soft delete is + /// enabled /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -295,11 +291,11 @@ public partial interface IFileSharesOperations /// lower-case letters and dash (-) only. Every dash (-) character must be /// immediately preceded and followed by a letter or number. /// - /// - /// Optional. Specify the snapshot time to lease a snapshot. + /// + /// Required. Identify the name of the deleted share that will be restored. /// - /// - /// Lease Share request body. + /// + /// Required. Identify the version of the deleted share that will be restored. /// /// /// The headers that will be added to request. @@ -310,10 +306,7 @@ public partial interface IFileSharesOperations /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> LeaseWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string xMsSnapshot = default(string), LeaseShareRequest parameters = default(LeaseShareRequest), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task RestoreWithHttpMessagesAsync(string resourceGroupName, string accountName, string shareName, string deletedShareName, string deletedShareVersion, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Lists all shares. diff --git a/src/Storage/Storage.Management.Sdk/Generated/ILocalUsersOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ILocalUsersOperations.cs index 955afe4c5fb8..0eb29314cac0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ILocalUsersOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ILocalUsersOperations.cs @@ -20,8 +20,7 @@ public partial interface ILocalUsersOperations /// List the local users associated with the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -52,7 +51,7 @@ public partial interface ILocalUsersOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Get the local user of the storage account by username. @@ -61,8 +60,7 @@ public partial interface ILocalUsersOperations /// Get the local user of the storage account by username. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -98,8 +96,7 @@ public partial interface ILocalUsersOperations /// with other properties. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -134,8 +131,7 @@ public partial interface ILocalUsersOperations /// Deletes the local user associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -164,8 +160,7 @@ public partial interface ILocalUsersOperations /// List SSH authorized keys and shared key of the local user. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -197,8 +192,7 @@ public partial interface ILocalUsersOperations /// Regenerate the local user SSH password. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -223,5 +217,28 @@ public partial interface ILocalUsersOperations /// System.Threading.Tasks.Task> RegeneratePasswordWithHttpMessagesAsync(string resourceGroupName, string accountName, string username, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// List the local users associated with the storage account. + /// + /// + /// List the local users associated with the storage account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IManagementPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IManagementPoliciesOperations.cs index 37fde66549d8..a457d524e57d 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IManagementPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IManagementPoliciesOperations.cs @@ -20,8 +20,7 @@ public partial interface IManagementPoliciesOperations /// Gets the managementpolicy associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -49,8 +48,7 @@ public partial interface IManagementPoliciesOperations /// Sets the managementpolicy to the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -82,8 +80,7 @@ public partial interface IManagementPoliciesOperations /// Deletes the managementpolicy associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/INetworkSecurityPerimeterConfigurationsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/INetworkSecurityPerimeterConfigurationsOperations.cs new file mode 100644 index 000000000000..120c045e05e1 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/INetworkSecurityPerimeterConfigurationsOperations.cs @@ -0,0 +1,159 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// NetworkSecurityPerimeterConfigurationsOperations operations. + /// + public partial interface INetworkSecurityPerimeterConfigurationsOperations + { + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets effective NetworkSecurityPerimeterConfiguration for association + /// + /// + /// Gets effective NetworkSecurityPerimeterConfiguration for association + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Refreshes any information about the association. + /// + /// + /// Refreshes any information about the association. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> ReconcileWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Refreshes any information about the association. + /// + /// + /// Refreshes any information about the association. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> BeginReconcileWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IObjectReplicationPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IObjectReplicationPoliciesOperations.cs index 0bf810dc10ac..ea7f1ca739a6 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IObjectReplicationPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IObjectReplicationPoliciesOperations.cs @@ -20,8 +20,7 @@ public partial interface IObjectReplicationPoliciesOperations /// List the object replication policies associated with the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -40,7 +39,7 @@ public partial interface IObjectReplicationPoliciesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Get the object replication policy of the storage account by policy ID. @@ -49,8 +48,7 @@ public partial interface IObjectReplicationPoliciesOperations /// Get the object replication policy of the storage account by policy ID. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -85,8 +83,7 @@ public partial interface IObjectReplicationPoliciesOperations /// Create or update the object replication policy of the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -127,8 +124,7 @@ public partial interface IObjectReplicationPoliciesOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -153,5 +149,28 @@ public partial interface IObjectReplicationPoliciesOperations /// System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string objectReplicationPolicyId, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// List the object replication policies associated with the storage account. + /// + /// + /// List the object replication policies associated with the storage account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IOperations.cs index d09f931dcb48..b0662e7be604 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IOperations.cs @@ -14,10 +14,10 @@ namespace Microsoft.Azure.Management.Storage public partial interface IOperations { /// - /// Lists all of the available Storage Rest API operations. + /// List the operations for the provider /// /// - /// Lists all of the available Storage Rest API operations. + /// List the operations for the provider /// /// /// The headers that will be added to request. @@ -31,7 +31,30 @@ public partial interface IOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// List the operations for the provider + /// + /// + /// List the operations for the provider + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IPrivateEndpointConnectionsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IPrivateEndpointConnectionsOperations.cs index 64a0b07c17ce..36b969e1b3cf 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IPrivateEndpointConnectionsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IPrivateEndpointConnectionsOperations.cs @@ -22,8 +22,7 @@ public partial interface IPrivateEndpointConnectionsOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -42,7 +41,7 @@ public partial interface IPrivateEndpointConnectionsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Gets the specified private endpoint connection associated with the storage @@ -53,8 +52,7 @@ public partial interface IPrivateEndpointConnectionsOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -88,8 +86,7 @@ public partial interface IPrivateEndpointConnectionsOperations /// the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -130,8 +127,7 @@ public partial interface IPrivateEndpointConnectionsOperations /// storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -153,5 +149,30 @@ public partial interface IPrivateEndpointConnectionsOperations /// System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string privateEndpointConnectionName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// List all the private endpoint connections associated with the storage + /// account. + /// + /// + /// List all the private endpoint connections associated with the storage + /// account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IPrivateLinkResourcesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IPrivateLinkResourcesOperations.cs index 00afce317805..d2bdc0b1ad35 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IPrivateLinkResourcesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IPrivateLinkResourcesOperations.cs @@ -22,8 +22,7 @@ public partial interface IPrivateLinkResourcesOperations /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/IQueueOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IQueueOperations.cs new file mode 100644 index 000000000000..31b28dc072d3 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/IQueueOperations.cs @@ -0,0 +1,223 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// QueueOperations operations. + /// + public partial interface IQueueOperations + { + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, a maximum number of queues that should be included in a list + /// queue response + /// + /// + /// Optional, When specified, only the queues with a name starting with the + /// given filter will be listed. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the queue with the specified queue name, under the specified account + /// if it exists. + /// + /// + /// Gets the queue with the specified queue name, under the specified account + /// if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// A name-value pair that represents queue metadata. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// A name-value pair that represents queue metadata. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Deletes the queue with the specified queue name, under the specified + /// account if it exists. + /// + /// + /// Deletes the queue with the specified queue name, under the specified + /// account if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IQueueServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IQueueServicesOperations.cs new file mode 100644 index 000000000000..8c3bc5b2bb70 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/IQueueServicesOperations.cs @@ -0,0 +1,115 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// QueueServicesOperations operations. + /// + public partial interface IQueueServicesOperations + { + /// + /// List all queue services for the storage account + /// + /// + /// List all queue services for the storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// Gets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Sets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// Sets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/ISkusOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ISkusOperations.cs index 09f22c8f932a..f42225c0a913 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ISkusOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ISkusOperations.cs @@ -33,7 +33,32 @@ public partial interface ISkusOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Lists the available SKUs supported by Microsoft.Storage for given + /// subscription. + /// + /// + /// Lists the available SKUs supported by Microsoft.Storage for given + /// subscription. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IStorageAccountsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IStorageAccountsOperations.cs index 128b7097dc64..e26f5e391a02 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IStorageAccountsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IStorageAccountsOperations.cs @@ -37,31 +37,13 @@ public partial interface IStorageAccountsOperations System.Threading.Tasks.Task> CheckNameAvailabilityWithHttpMessagesAsync(string name, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Asynchronously creates a new storage account with the specified parameters. - /// If an account is already created and a subsequent create request is issued - /// with different properties, the account properties will be updated. If an - /// account is already created and a subsequent create or update request is - /// issued with the exact same set of properties, the request will succeed. + /// Lists all the storage accounts available under the subscription. Note that + /// storage keys are not returned; use the ListKeys operation for this. /// /// - /// Asynchronously creates a new storage account with the specified parameters. - /// If an account is already created and a subsequent create request is issued - /// with different properties, the account properties will be updated. If an - /// account is already created and a subsequent create or update request is - /// issued with the exact same set of properties, the request will succeed. + /// Lists all the storage accounts available under the subscription. Note that + /// storage keys are not returned; use the ListKeys operation for this. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The parameters to provide for the created account. - /// /// /// The headers that will be added to request. /// @@ -74,22 +56,20 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Deletes a storage account in Microsoft Azure. + /// Lists all the storage accounts available under the given resource group. + /// Note that storage keys are not returned; use the ListKeys operation for + /// this. /// /// - /// Deletes a storage account in Microsoft Azure. + /// Lists all the storage accounts available under the given resource group. + /// Note that storage keys are not returned; use the ListKeys operation for + /// this. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. + /// The name of the resource group. The name is case insensitive. /// /// /// The headers that will be added to request. @@ -100,7 +80,10 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Returns the properties for the specified storage account including but not @@ -113,8 +96,7 @@ public partial interface IStorageAccountsOperations /// operation should be used to retrieve storage keys. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -141,32 +123,21 @@ public partial interface IStorageAccountsOperations System.Threading.Tasks.Task> GetPropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountExpand? expand = default(StorageAccountExpand?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// The update operation can be used to update the SKU, encryption, access - /// tier, or tags for a storage account. It can also be used to map the account - /// to a custom domain. Only one custom domain is supported per storage - /// account; the replacement/change of custom domain is not supported. In order - /// to replace an old custom domain, the old value must be cleared/unregistered - /// before a new value can be set. The update of multiple properties is - /// supported. This call does not change the storage keys for the account. If - /// you want to change the storage account keys, use the regenerate keys - /// operation. The location and name of the storage account cannot be changed - /// after creation. + /// Asynchronously creates a new storage account with the specified parameters. + /// If an account is already created and a subsequent create request is issued + /// with different properties, the account properties will be updated. If an + /// account is already created and a subsequent create or update request is + /// issued with the exact same set of properties, the request will succeed. /// /// - /// The update operation can be used to update the SKU, encryption, access - /// tier, or tags for a storage account. It can also be used to map the account - /// to a custom domain. Only one custom domain is supported per storage - /// account; the replacement/change of custom domain is not supported. In order - /// to replace an old custom domain, the old value must be cleared/unregistered - /// before a new value can be set. The update of multiple properties is - /// supported. This call does not change the storage keys for the account. If - /// you want to change the storage account keys, use the regenerate keys - /// operation. The location and name of the storage account cannot be changed - /// after creation. + /// Asynchronously creates a new storage account with the specified parameters. + /// If an account is already created and a subsequent create request is issued + /// with different properties, the account properties will be updated. If an + /// account is already created and a subsequent create or update request is + /// issued with the exact same set of properties, the request will succeed. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -174,57 +145,7 @@ public partial interface IStorageAccountsOperations /// numbers and lower-case letters only. /// /// - /// The parameters to provide for the updated account. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); - - /// - /// Lists all the storage accounts available under the subscription. Note that - /// storage keys are not returned; use the ListKeys operation for this. - /// - /// - /// Lists all the storage accounts available under the subscription. Note that - /// storage keys are not returned; use the ListKeys operation for this. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); - - /// - /// Lists all the storage accounts available under the given resource group. - /// Note that storage keys are not returned; use the ListKeys operation for - /// this. - /// - /// - /// Lists all the storage accounts available under the given resource group. - /// Note that storage keys are not returned; use the ListKeys operation for - /// this. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The parameters to provide for the created account. /// /// /// The headers that will be added to request. @@ -238,27 +159,42 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Lists the access keys or Kerberos keys (if active directory enabled) for - /// the specified storage account. + /// The update operation can be used to update the SKU, encryption, access + /// tier, or tags for a storage account. It can also be used to map the account + /// to a custom domain. Only one custom domain is supported per storage + /// account; the replacement/change of custom domain is not supported. In order + /// to replace an old custom domain, the old value must be cleared/unregistered + /// before a new value can be set. The update of multiple properties is + /// supported. This call does not change the storage keys for the account. If + /// you want to change the storage account keys, use the regenerate keys + /// operation. The location and name of the storage account cannot be changed + /// after creation. /// /// - /// Lists the access keys or Kerberos keys (if active directory enabled) for - /// the specified storage account. + /// The update operation can be used to update the SKU, encryption, access + /// tier, or tags for a storage account. It can also be used to map the account + /// to a custom domain. Only one custom domain is supported per storage + /// account; the replacement/change of custom domain is not supported. In order + /// to replace an old custom domain, the old value must be cleared/unregistered + /// before a new value can be set. The update of multiple properties is + /// supported. This call does not change the storage keys for the account. If + /// you want to change the storage account keys, use the regenerate keys + /// operation. The location and name of the storage account cannot be changed + /// after creation. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Specifies type of the key to be listed. Possible value is kerb. + /// + /// The parameters to provide for the updated account. /// /// /// The headers that will be added to request. @@ -272,29 +208,22 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> ListKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, ListKeyExpand? expand = default(ListKeyExpand?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Regenerates one of the access keys or Kerberos keys for the specified - /// storage account. + /// Deletes a storage account in Microsoft Azure. /// /// - /// Regenerates one of the access keys or Kerberos keys for the specified - /// storage account. + /// Deletes a storage account in Microsoft Azure. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of storage keys that want to be regenerated, possible values are - /// key1, key2, kerb1, kerb2. - /// /// /// The headers that will be added to request. /// @@ -304,29 +233,22 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> RegenerateKeyWithHttpMessagesAsync(string resourceGroupName, string accountName, string keyName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// List SAS credentials of a storage account. + /// Abort live Migration of storage account to enable Hns /// /// - /// List SAS credentials of a storage account. + /// Abort live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The parameters to provide to list SAS credentials for the storage account. - /// /// /// The headers that will be added to request. /// @@ -336,29 +258,22 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> ListAccountSASWithHttpMessagesAsync(string resourceGroupName, string accountName, AccountSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// List service SAS credentials of a specific resource. + /// Gets the status of the ongoing migration for the specified storage account. /// /// - /// List service SAS credentials of a specific resource. + /// Gets the status of the ongoing migration for the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The parameters to provide to list service SAS credentials. - /// /// /// The headers that will be added to request. /// @@ -371,7 +286,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> ListServiceSASWithHttpMessagesAsync(string resourceGroupName, string accountName, ServiceSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> GetCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// A failover request can be triggered for a storage account in the event a @@ -404,8 +319,7 @@ public partial interface IStorageAccountsOperations /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -425,7 +339,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task FailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> FailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Live Migration of storage account to enable Hns @@ -434,8 +348,7 @@ public partial interface IStorageAccountsOperations /// Live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -458,23 +371,25 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task HierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> HierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Abort live Migration of storage account to enable Hns + /// List SAS credentials of a storage account. /// /// - /// Abort live Migration of storage account to enable Hns + /// List SAS credentials of a storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The parameters to provide to list SAS credentials for the storage account. + /// /// /// The headers that will be added to request. /// @@ -484,27 +399,52 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ListAccountSASWithHttpMessagesAsync(string resourceGroupName, string accountName, AccountSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. + /// Lists the access keys or Kerberos keys (if active directory enabled) for + /// the specified storage account. /// /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. + /// Lists the access keys or Kerberos keys (if active directory enabled) for + /// the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Specifies type of the key to be listed. Possible value is kerb. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ListKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum70? expand = default(Enum70?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// List service SAS credentials of a specific resource. + /// + /// + /// List service SAS credentials of a specific resource. + /// + /// + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -512,7 +452,7 @@ public partial interface IStorageAccountsOperations /// numbers and lower-case letters only. /// /// - /// The request parameters required to perform storage account migration. + /// The parameters to provide to list service SAS credentials. /// /// /// The headers that will be added to request. @@ -523,23 +463,31 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task> CustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ListServiceSASWithHttpMessagesAsync(string resourceGroupName, string accountName, ServiceSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Gets the status of the ongoing migration for the specified storage account. + /// Regenerates one of the access keys or Kerberos keys for the specified + /// storage account. /// /// - /// Gets the status of the ongoing migration for the specified storage account. + /// Regenerates one of the access keys or Kerberos keys for the specified + /// storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The name of storage keys that want to be regenerated, possible values are + /// key1, key2, kerb1, kerb2. + /// /// /// The headers that will be added to request. /// @@ -552,7 +500,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> GetCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> RegenerateKeyWithHttpMessagesAsync(string resourceGroupName, string accountName, string keyName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Restore blobs in the specified blob ranges @@ -561,8 +509,7 @@ public partial interface IStorageAccountsOperations /// Restore blobs in the specified blob ranges /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -587,7 +534,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> RestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> RestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Revoke user delegation keys. @@ -596,8 +543,7 @@ public partial interface IStorageAccountsOperations /// Revoke user delegation keys. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -615,6 +561,44 @@ public partial interface IStorageAccountsOperations /// System.Threading.Tasks.Task RevokeUserDelegationKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. + /// + /// + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Target sku name for the account + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> CustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string targetSkuName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// /// Asynchronously creates a new storage account with the specified parameters. /// If an account is already created and a subsequent create request is issued @@ -630,8 +614,7 @@ public partial interface IStorageAccountsOperations /// issued with the exact same set of properties, the request will succeed. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -653,7 +636,32 @@ public partial interface IStorageAccountsOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Abort live Migration of storage account to enable Hns + /// + /// + /// Abort live Migration of storage account to enable Hns + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// A failover request can be triggered for a storage account in the event a @@ -686,8 +694,7 @@ public partial interface IStorageAccountsOperations /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -707,7 +714,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task BeginFailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> BeginFailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Live Migration of storage account to enable Hns @@ -716,8 +723,7 @@ public partial interface IStorageAccountsOperations /// Live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -740,23 +746,28 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// - /// Abort live Migration of storage account to enable Hns + /// Restore blobs in the specified blob ranges /// /// - /// Abort live Migration of storage account to enable Hns + /// Restore blobs in the specified blob ranges /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// Restore blob to the specified time. + /// + /// + /// Blob ranges to restore. + /// /// /// The headers that will be added to request. /// @@ -766,7 +777,10 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> BeginRestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Account Migration request can be triggered for a storage account to change @@ -785,16 +799,15 @@ public partial interface IStorageAccountsOperations /// primary region. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The request parameters required to perform storage account migration. + /// + /// Target sku name for the account /// /// /// The headers that will be added to request. @@ -805,42 +818,7 @@ public partial interface IStorageAccountsOperations /// /// Thrown when the operation returned an invalid status code /// - System.Threading.Tasks.Task> BeginCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); - - /// - /// Restore blobs in the specified blob ranges - /// - /// - /// Restore blobs in the specified blob ranges - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// Restore blob to the specified time. - /// - /// - /// Blob ranges to restore. - /// - /// - /// The headers that will be added to request. - /// - /// - /// The cancellation token. - /// - /// - /// Thrown when the operation returned an invalid status code - /// - /// - /// Thrown when unable to deserialize the response - /// - System.Threading.Tasks.Task> BeginRestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task> BeginCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string targetSkuName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); /// /// Lists all the storage accounts available under the subscription. Note that diff --git a/src/Storage/Storage.Management.Sdk/Generated/IStorageManagementClient.cs b/src/Storage/Storage.Management.Sdk/Generated/IStorageManagementClient.cs index 095147def5ac..560e518faa3f 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IStorageManagementClient.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IStorageManagementClient.cs @@ -42,9 +42,9 @@ public partial interface IStorageManagementClient : System.IDisposable /// - /// The ID of the target subscription. + /// The ID of the target subscription. The value must be an UUID. /// - string SubscriptionId { get; set;} + System.Guid SubscriptionId { get; set;} /// @@ -73,11 +73,6 @@ public partial interface IStorageManagementClient : System.IDisposable /// IOperations Operations { get; } - /// - /// Gets the ISkusOperations - /// - ISkusOperations Skus { get; } - /// /// Gets the IStorageAccountsOperations /// @@ -94,15 +89,60 @@ public partial interface IStorageManagementClient : System.IDisposable IUsagesOperations Usages { get; } /// - /// Gets the IManagementPoliciesOperations + /// Gets the ISkusOperations /// - IManagementPoliciesOperations ManagementPolicies { get; } + ISkusOperations Skus { get; } + + /// + /// Gets the IBlobServicesOperations + /// + IBlobServicesOperations BlobServices { get; } + + /// + /// Gets the IBlobContainersOperations + /// + IBlobContainersOperations BlobContainers { get; } + + /// + /// Gets the IEncryptionScopesOperations + /// + IEncryptionScopesOperations EncryptionScopes { get; } + + /// + /// Gets the IFileServicesOperations + /// + IFileServicesOperations FileServices { get; } + + /// + /// Gets the IFileSharesOperations + /// + IFileSharesOperations FileShares { get; } /// /// Gets the IBlobInventoryPoliciesOperations /// IBlobInventoryPoliciesOperations BlobInventoryPolicies { get; } + /// + /// Gets the ILocalUsersOperations + /// + ILocalUsersOperations LocalUsers { get; } + + /// + /// Gets the IManagementPoliciesOperations + /// + IManagementPoliciesOperations ManagementPolicies { get; } + + /// + /// Gets the INetworkSecurityPerimeterConfigurationsOperations + /// + INetworkSecurityPerimeterConfigurationsOperations NetworkSecurityPerimeterConfigurations { get; } + + /// + /// Gets the IObjectReplicationPoliciesOperations + /// + IObjectReplicationPoliciesOperations ObjectReplicationPolicies { get; } + /// /// Gets the IPrivateEndpointConnectionsOperations /// @@ -114,39 +154,39 @@ public partial interface IStorageManagementClient : System.IDisposable IPrivateLinkResourcesOperations PrivateLinkResources { get; } /// - /// Gets the IObjectReplicationPoliciesOperations + /// Gets the IQueueServicesOperations /// - IObjectReplicationPoliciesOperations ObjectReplicationPolicies { get; } + IQueueServicesOperations QueueServices { get; } /// - /// Gets the ILocalUsersOperations + /// Gets the IQueueOperations /// - ILocalUsersOperations LocalUsers { get; } + IQueueOperations Queue { get; } /// - /// Gets the IEncryptionScopesOperations + /// Gets the IStorageTaskAssignmentsInstancesReportOperations /// - IEncryptionScopesOperations EncryptionScopes { get; } + IStorageTaskAssignmentsInstancesReportOperations StorageTaskAssignmentsInstancesReport { get; } /// - /// Gets the IBlobServicesOperations + /// Gets the IStorageTaskAssignmentsOperations /// - IBlobServicesOperations BlobServices { get; } + IStorageTaskAssignmentsOperations StorageTaskAssignments { get; } /// - /// Gets the IBlobContainersOperations + /// Gets the IStorageTaskAssignmentInstancesReportOperations /// - IBlobContainersOperations BlobContainers { get; } + IStorageTaskAssignmentInstancesReportOperations StorageTaskAssignmentInstancesReport { get; } /// - /// Gets the IFileServicesOperations + /// Gets the ITableServicesOperations /// - IFileServicesOperations FileServices { get; } + ITableServicesOperations TableServices { get; } /// - /// Gets the IFileSharesOperations + /// Gets the ITableOperations /// - IFileSharesOperations FileShares { get; } + ITableOperations Table { get; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentInstancesReportOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentInstancesReportOperations.cs new file mode 100644 index 000000000000..9b7549b404f8 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentInstancesReportOperations.cs @@ -0,0 +1,83 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentInstancesReportOperations operations. + /// + public partial interface IStorageTaskAssignmentInstancesReportOperations + { + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, int? maxpagesize = default(int?), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsInstancesReportOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsInstancesReportOperations.cs new file mode 100644 index 000000000000..df8fad7666be --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsInstancesReportOperations.cs @@ -0,0 +1,82 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentsInstancesReportOperations operations. + /// + public partial interface IStorageTaskAssignmentsInstancesReportOperations + { + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsOperations.cs new file mode 100644 index 000000000000..eeea157c3126 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/IStorageTaskAssignmentsOperations.cs @@ -0,0 +1,329 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentsOperations operations. + /// + public partial interface IStorageTaskAssignmentsOperations + { + /// + /// List all the storage task assignments in an account + /// + /// + /// List all the storage task assignments in an account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment Ids to be + /// included in the list response. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? top = default(int?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Get the storage task assignment properties + /// + /// + /// Get the storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Update storage task assignment properties + /// + /// + /// Update storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Update storage task assignment properties + /// + /// + /// Update storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> BeginUpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task> BeginDeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// List all the storage task assignments in an account + /// + /// + /// List all the storage task assignments in an account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/ITableOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ITableOperations.cs new file mode 100644 index 000000000000..2559ef644d97 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/ITableOperations.cs @@ -0,0 +1,211 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// TableOperations operations. + /// + public partial interface ITableOperations + { + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the table with the specified table name, under the specified account + /// if it exists. + /// + /// + /// Gets the table with the specified table name, under the specified account + /// if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// List of stored access policies specified on the table. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// List of stored access policies specified on the table. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Deletes the table with the specified table name, under the specified + /// account if it exists. + /// + /// + /// Deletes the table with the specified table name, under the specified + /// account if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/ITableServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ITableServicesOperations.cs new file mode 100644 index 000000000000..5041377ae2ae --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/ITableServicesOperations.cs @@ -0,0 +1,115 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// TableServicesOperations operations. + /// + public partial interface ITableServicesOperations + { + /// + /// List all table services for the storage account. + /// + /// + /// List all table services for the storage account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// Gets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Sets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// Sets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/IUsagesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/IUsagesOperations.cs index 34611d81eb98..9329c107c2fb 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/IUsagesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/IUsagesOperations.cs @@ -22,7 +22,7 @@ public partial interface IUsagesOperations /// location under the subscription. /// /// - /// The location of the Azure Storage resource. + /// The name of the Azure region. /// /// /// The headers that will be added to request. @@ -36,7 +36,32 @@ public partial interface IUsagesOperations /// /// Thrown when unable to deserialize the response /// - System.Threading.Tasks.Task>> ListByLocationWithHttpMessagesAsync(string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + System.Threading.Tasks.Task>> ListByLocationWithHttpMessagesAsync(string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); + + /// + /// Gets the current usage count and the limit for the resources of the + /// location under the subscription. + /// + /// + /// Gets the current usage count and the limit for the resources of the + /// location under the subscription. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + System.Threading.Tasks.Task>> ListByLocationNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)); } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperations.cs index d5468cc4d343..d1c2c771e2bf 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperations.cs @@ -42,8 +42,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// List the local users associated with the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -83,12 +82,18 @@ internal LocalUsersOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -103,10 +108,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -127,22 +128,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (maxpagesize != null) { if (maxpagesize > 5000) @@ -177,9 +162,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -286,7 +271,7 @@ internal LocalUsersOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -327,8 +312,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// Get the local user of the storage account by username. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -366,6 +350,12 @@ internal LocalUsersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -380,10 +370,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -404,22 +390,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (username == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "username"); @@ -454,9 +424,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers/{username}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{username}", System.Uri.EscapeDataString(username)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -595,8 +565,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// with other properties. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -642,6 +611,12 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "properties"); } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -656,10 +631,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -680,22 +651,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (username == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "username"); @@ -731,9 +686,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers/{username}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{username}", System.Uri.EscapeDataString(username)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -876,8 +831,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// Deletes the local user associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -912,6 +866,12 @@ internal LocalUsersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -926,10 +886,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -950,22 +906,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (username == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "username"); @@ -1000,9 +940,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers/{username}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{username}", System.Uri.EscapeDataString(username)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -1121,8 +1061,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// List SSH authorized keys and shared key of the local user. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1160,6 +1099,12 @@ internal LocalUsersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1174,10 +1119,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1198,22 +1139,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (username == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "username"); @@ -1248,9 +1173,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers/{username}/listKeys").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{username}", System.Uri.EscapeDataString(username)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -1387,8 +1312,7 @@ internal LocalUsersOperations (StorageManagementClient client) /// Regenerate the local user SSH password. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1426,6 +1350,12 @@ internal LocalUsersOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1440,10 +1370,6 @@ internal LocalUsersOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1464,22 +1390,6 @@ internal LocalUsersOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (username == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "username"); @@ -1514,9 +1424,9 @@ internal LocalUsersOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/localUsers/{username}/regeneratePassword").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{username}", System.Uri.EscapeDataString(username)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -1648,6 +1558,183 @@ internal LocalUsersOperations (StorageManagementClient client) + } + /// + /// List the local users associated with the storage account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperationsExtensions.cs index edf344788bb6..4244748a94b3 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/LocalUsersOperationsExtensions.cs @@ -19,8 +19,7 @@ public static partial class LocalUsersOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -39,7 +38,7 @@ public static partial class LocalUsersOperationsExtensions /// Optional, when specified, will list local users enabled for the specific /// protocol. Lists all users by default. /// - public static System.Collections.Generic.IEnumerable List(this ILocalUsersOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string)) + public static Microsoft.Rest.Azure.IPage List(this ILocalUsersOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string)) { return ((ILocalUsersOperations)operations).ListAsync(resourceGroupName, accountName, maxpagesize, filter, include).GetAwaiter().GetResult(); } @@ -51,8 +50,7 @@ public static partial class LocalUsersOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -74,7 +72,7 @@ public static partial class LocalUsersOperationsExtensions /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this ILocalUsersOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this ILocalUsersOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), string include = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, maxpagesize, filter, include, null, cancellationToken).ConfigureAwait(false)) { @@ -88,8 +86,7 @@ public static partial class LocalUsersOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -112,8 +109,7 @@ public static LocalUser Get(this ILocalUsersOperations operations, string resour /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -143,8 +139,7 @@ public static LocalUser Get(this ILocalUsersOperations operations, string resour /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -169,8 +164,7 @@ public static LocalUser CreateOrUpdate(this ILocalUsersOperations operations, st /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -198,8 +192,7 @@ public static LocalUser CreateOrUpdate(this ILocalUsersOperations operations, st /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -222,8 +215,7 @@ public static void Delete(this ILocalUsersOperations operations, string resource /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -248,8 +240,7 @@ public static void Delete(this ILocalUsersOperations operations, string resource /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -272,8 +263,7 @@ public static LocalUserKeys ListKeys(this ILocalUsersOperations operations, stri /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -301,8 +291,7 @@ public static LocalUserKeys ListKeys(this ILocalUsersOperations operations, stri /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -325,8 +314,7 @@ public static LocalUserRegeneratePasswordResult RegeneratePassword(this ILocalUs /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -347,5 +335,38 @@ public static LocalUserRegeneratePasswordResult RegeneratePassword(this ILocalUs return _result.Body; } } + /// + /// List the local users associated with the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this ILocalUsersOperations operations, string nextPageLink) + { + return ((ILocalUsersOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List the local users associated with the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this ILocalUsersOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperations.cs index 10813d28da8d..986121beadb9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperations.cs @@ -42,8 +42,7 @@ internal ManagementPoliciesOperations (StorageManagementClient client) /// Gets the managementpolicy associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -77,6 +76,12 @@ internal ManagementPoliciesOperations (StorageManagementClient client) string managementPolicyName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -91,10 +96,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -115,22 +116,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -151,9 +136,9 @@ internal ManagementPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{managementPolicyName}", System.Uri.EscapeDataString(managementPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -221,14 +206,13 @@ internal ManagementPoliciesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -238,10 +222,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -295,8 +275,7 @@ internal ManagementPoliciesOperations (StorageManagementClient client) /// Sets the managementpolicy to the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -334,6 +313,12 @@ internal ManagementPoliciesOperations (StorageManagementClient client) string managementPolicyName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -348,10 +333,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -372,22 +353,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } ManagementPolicy properties = new ManagementPolicy(); if(policy != null) @@ -414,9 +379,9 @@ internal ManagementPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{managementPolicyName}", System.Uri.EscapeDataString(managementPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -490,14 +455,13 @@ internal ManagementPoliciesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -507,10 +471,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -564,8 +524,7 @@ internal ManagementPoliciesOperations (StorageManagementClient client) /// Deletes the managementpolicy associated with the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -596,6 +555,12 @@ internal ManagementPoliciesOperations (StorageManagementClient client) string managementPolicyName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -610,10 +575,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -634,22 +595,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -670,9 +615,9 @@ internal ManagementPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/managementPolicies/{managementPolicyName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{managementPolicyName}", System.Uri.EscapeDataString(managementPolicyName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -740,14 +685,13 @@ internal ManagementPoliciesOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 204) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -757,10 +701,6 @@ internal ManagementPoliciesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); diff --git a/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperationsExtensions.cs index d8c566a77e05..a61d2c24275e 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ManagementPoliciesOperationsExtensions.cs @@ -19,8 +19,7 @@ public static partial class ManagementPoliciesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -39,8 +38,7 @@ public static ManagementPolicy Get(this IManagementPoliciesOperations operations /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -64,8 +62,7 @@ public static ManagementPolicy Get(this IManagementPoliciesOperations operations /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -84,8 +81,7 @@ public static ManagementPolicy Get(this IManagementPoliciesOperations operations /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -109,8 +105,7 @@ public static ManagementPolicy Get(this IManagementPoliciesOperations operations /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -129,8 +124,7 @@ public static void Delete(this IManagementPoliciesOperations operations, string /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/AccountUsage.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/AccountUsage.cs index 4206653e1618..b0d51285c650 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/AccountUsage.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/AccountUsage.cs @@ -47,17 +47,17 @@ public AccountUsage() /// - /// Gets usage of provisioned storage, IOPS, bandwidth and number of file - /// shares across all live shares or soft-deleted shares in the account. + /// Gets or sets usage of provisioned storage, IOPS, bandwidth and number of + /// file shares across all live shares or soft-deleted shares in the account. /// [Newtonsoft.Json.JsonProperty(PropertyName = "liveShares")] - public AccountUsageElements LiveShares {get; private set; } + public AccountUsageElements LiveShares {get; set; } /// - /// Gets usage of provisioned storage, IOPS, bandwidth and number of file - /// shares across all live shares or soft-deleted shares in the account. + /// Gets or sets usage of provisioned storage, IOPS, bandwidth and number of + /// file shares across all live shares or soft-deleted shares in the account. /// [Newtonsoft.Json.JsonProperty(PropertyName = "softDeletedShares")] - public AccountUsageElements SoftDeletedShares {get; private set; } + public AccountUsageElements SoftDeletedShares {get; set; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/AzureEntityResource.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/AzureEntityResource.cs index 0b96c24ec130..2920b9359240 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/AzureEntityResource.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/AzureEntityResource.cs @@ -29,8 +29,8 @@ public AzureEntityResource() /// Initializes a new instance of the AzureEntityResource class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -40,11 +40,15 @@ public AzureEntityResource() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// - public AzureEntityResource(string id = default(string), string name = default(string), string type = default(string), string etag = default(string)) + public AzureEntityResource(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string)) - : base(id, name, type) + : base(id, name, type, systemData) { this.Etag = etag; CustomInit(); diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainer.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainer.cs index 0e67e8873f93..9ce9692cf9d2 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainer.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainer.cs @@ -12,7 +12,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// type, Etag. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class BlobContainer : AzureEntityResource + public partial class BlobContainer : ProxyResource { /// /// Initializes a new instance of the BlobContainer class. @@ -26,8 +26,8 @@ public BlobContainer() /// Initializes a new instance of the BlobContainer class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -37,6 +37,10 @@ public BlobContainer() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// @@ -107,10 +111,11 @@ public BlobContainer() /// Enable NFSv3 all squash on blob container. /// - public BlobContainer(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), string version = default(string), System.DateTime? deletedTime = default(System.DateTime?), PublicAccess? publicAccess = default(PublicAccess?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), bool? deleted = default(bool?), int? remainingRetentionDays = default(int?), string defaultEncryptionScope = default(string), bool? denyEncryptionScopeOverride = default(bool?), System.DateTime? lastModifiedTime = default(System.DateTime?), ImmutabilityPolicyProperties immutabilityPolicy = default(ImmutabilityPolicyProperties), LegalHoldProperties legalHold = default(LegalHoldProperties), bool? hasLegalHold = default(bool?), bool? hasImmutabilityPolicy = default(bool?), ImmutableStorageWithVersioning immutableStorageWithVersioning = default(ImmutableStorageWithVersioning), bool? enableNfsV3RootSquash = default(bool?), bool? enableNfsV3AllSquash = default(bool?)) + public BlobContainer(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string), string version = default(string), System.DateTime? deletedTime = default(System.DateTime?), PublicAccess? publicAccess = default(PublicAccess?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), bool? deleted = default(bool?), int? remainingRetentionDays = default(int?), string defaultEncryptionScope = default(string), bool? denyEncryptionScopeOverride = default(bool?), System.DateTime? lastModifiedTime = default(System.DateTime?), ImmutabilityPolicyProperties immutabilityPolicy = default(ImmutabilityPolicyProperties), LegalHoldProperties legalHold = default(LegalHoldProperties), bool? hasLegalHold = default(bool?), bool? hasImmutabilityPolicy = default(bool?), ImmutableStorageWithVersioning immutableStorageWithVersioning = default(ImmutableStorageWithVersioning), bool? enableNfsV3RootSquash = default(bool?), bool? enableNfsV3AllSquash = default(bool?)) - : base(id, name, type, etag) + : base(id, name, type, systemData) { + this.Etag = etag; this.Version = version; this.DeletedTime = deletedTime; this.PublicAccess = publicAccess; @@ -139,6 +144,12 @@ public BlobContainer() partial void CustomInit(); + /// + /// Gets resource Etag. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "etag")] + public string Etag {get; private set; } + /// /// Gets the version of the deleted blob container. /// diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorAdditionalInfo.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainersObjectLevelWormHeaders.cs similarity index 50% rename from src/Storage/Storage.Management.Sdk/Generated/Models/ErrorAdditionalInfo.cs rename to src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainersObjectLevelWormHeaders.cs index 1f9b86a6f794..21eafd8b7a1b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorAdditionalInfo.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobContainersObjectLevelWormHeaders.cs @@ -7,33 +7,30 @@ namespace Microsoft.Azure.Management.Storage.Models { using System.Linq; - /// - /// The resource management error additional info. - /// - public partial class ErrorAdditionalInfo + public partial class BlobContainersObjectLevelWormHeaders { /// - /// Initializes a new instance of the ErrorAdditionalInfo class. + /// Initializes a new instance of the BlobContainersObjectLevelWormHeaders class. /// - public ErrorAdditionalInfo() + public BlobContainersObjectLevelWormHeaders() { CustomInit(); } /// - /// Initializes a new instance of the ErrorAdditionalInfo class. + /// Initializes a new instance of the BlobContainersObjectLevelWormHeaders class. /// - /// The additional info type. + /// /// - /// The additional info. + /// /// - public ErrorAdditionalInfo(string type = default(string), object info = default(object)) + public BlobContainersObjectLevelWormHeaders(string location = default(string), int? retryAfter = default(int?)) { - this.Type = type; - this.Info = info; + this.Location = location; + this.RetryAfter = retryAfter; CustomInit(); } @@ -44,15 +41,15 @@ public ErrorAdditionalInfo() /// - /// Gets the additional info type. + /// Gets or sets /// - [Newtonsoft.Json.JsonProperty(PropertyName = "type")] - public string Type {get; private set; } + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } /// - /// Gets the additional info. + /// Gets or sets /// - [Newtonsoft.Json.JsonProperty(PropertyName = "info")] - public object Info {get; private set; } + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobInventoryPolicy.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobInventoryPolicy.cs index d328a26dd37c..19170f3a96b0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobInventoryPolicy.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobInventoryPolicy.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The storage account blob inventory policy. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class BlobInventoryPolicy : Resource + public partial class BlobInventoryPolicy : ProxyResource { /// /// Initializes a new instance of the BlobInventoryPolicy class. @@ -25,8 +25,8 @@ public BlobInventoryPolicy() /// Initializes a new instance of the BlobInventoryPolicy class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,7 +36,8 @@ public BlobInventoryPolicy() /// "Microsoft.Storage/storageAccounts" /// - /// Metadata pertaining to creation and last modification of the resource. + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. /// /// Returns the last modified date and time of the blob inventory policy. @@ -47,9 +48,8 @@ public BlobInventoryPolicy() /// public BlobInventoryPolicy(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.DateTime? lastModifiedTime = default(System.DateTime?), BlobInventoryPolicySchema policy = default(BlobInventoryPolicySchema)) - : base(id, name, type) + : base(id, name, type, systemData) { - this.SystemData = systemData; this.LastModifiedTime = lastModifiedTime; this.Policy = policy; CustomInit(); @@ -61,12 +61,6 @@ public BlobInventoryPolicy() partial void CustomInit(); - /// - /// Gets metadata pertaining to creation and last modification of the resource. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "systemData")] - public SystemData SystemData {get; private set; } - /// /// Gets returns the last modified date and time of the blob inventory policy. /// @@ -87,7 +81,6 @@ public BlobInventoryPolicy() /// public virtual void Validate() { - if (this.Policy != null) { this.Policy.Validate(); diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServiceProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServiceProperties.cs index 17e19d314b6f..0fefc1133328 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServiceProperties.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServiceProperties.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The properties of a storage account’s Blob service. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class BlobServiceProperties : Resource + public partial class BlobServiceProperties : ProxyResource { /// /// Initializes a new instance of the BlobServiceProperties class. @@ -25,8 +25,8 @@ public BlobServiceProperties() /// Initializes a new instance of the BlobServiceProperties class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public BlobServiceProperties() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Sku name and tier. /// @@ -71,9 +75,9 @@ public BlobServiceProperties() /// The blob service property to configure last access time based tracking /// policy. /// - public BlobServiceProperties(string id = default(string), string name = default(string), string type = default(string), Sku sku = default(Sku), ChangeFeed changeFeed = default(ChangeFeed), CorsRules cors = default(CorsRules), string defaultServiceVersion = default(string), DeleteRetentionPolicy deleteRetentionPolicy = default(DeleteRetentionPolicy), bool? isVersioningEnabled = default(bool?), bool? automaticSnapshotPolicyEnabled = default(bool?), RestorePolicyProperties restorePolicy = default(RestorePolicyProperties), DeleteRetentionPolicy containerDeleteRetentionPolicy = default(DeleteRetentionPolicy), LastAccessTimeTrackingPolicy lastAccessTimeTrackingPolicy = default(LastAccessTimeTrackingPolicy)) + public BlobServiceProperties(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), Sku sku = default(Sku), ChangeFeed changeFeed = default(ChangeFeed), CorsRules cors = default(CorsRules), string defaultServiceVersion = default(string), DeleteRetentionPolicy deleteRetentionPolicy = default(DeleteRetentionPolicy), bool? isVersioningEnabled = default(bool?), bool? automaticSnapshotPolicyEnabled = default(bool?), RestorePolicyProperties restorePolicy = default(RestorePolicyProperties), DeleteRetentionPolicy containerDeleteRetentionPolicy = default(DeleteRetentionPolicy), LastAccessTimeTrackingPolicy lastAccessTimeTrackingPolicy = default(LastAccessTimeTrackingPolicy)) - : base(id, name, type) + : base(id, name, type, systemData) { this.Sku = sku; this.ChangeFeed = changeFeed; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicePropertiesProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicePropertiesProperties.cs new file mode 100644 index 000000000000..71aba8469886 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicePropertiesProperties.cs @@ -0,0 +1,172 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account’s Blob service. + /// + public partial class BlobServicePropertiesProperties + { + /// + /// Initializes a new instance of the BlobServicePropertiesProperties class. + /// + public BlobServicePropertiesProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the BlobServicePropertiesProperties class. + /// + + /// Specifies CORS rules for the Blob 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 Blob service. + /// + + /// DefaultServiceVersion indicates the default version to use for requests to + /// the Blob service if an incoming request’s version is not specified. + /// Possible values include version 2008-10-27 and all more recent versions. + /// + + /// The blob service properties for blob soft delete. + /// + + /// Versioning is enabled if set to true. + /// + + /// Deprecated in favor of isVersioningEnabled property. + /// + + /// The blob service properties for change feed events. + /// + + /// The blob service properties for blob restore policy. + /// + + /// The blob service properties for container soft delete. + /// + + /// The blob service property to configure last access time based tracking + /// policy. + /// + public BlobServicePropertiesProperties(CorsRules cors = default(CorsRules), string defaultServiceVersion = default(string), DeleteRetentionPolicy deleteRetentionPolicy = default(DeleteRetentionPolicy), bool? isVersioningEnabled = default(bool?), bool? automaticSnapshotPolicyEnabled = default(bool?), ChangeFeed changeFeed = default(ChangeFeed), RestorePolicyProperties restorePolicy = default(RestorePolicyProperties), DeleteRetentionPolicy containerDeleteRetentionPolicy = default(DeleteRetentionPolicy), LastAccessTimeTrackingPolicy lastAccessTimeTrackingPolicy = default(LastAccessTimeTrackingPolicy)) + + { + this.Cors = cors; + this.DefaultServiceVersion = defaultServiceVersion; + this.DeleteRetentionPolicy = deleteRetentionPolicy; + this.IsVersioningEnabled = isVersioningEnabled; + this.AutomaticSnapshotPolicyEnabled = automaticSnapshotPolicyEnabled; + this.ChangeFeed = changeFeed; + this.RestorePolicy = restorePolicy; + this.ContainerDeleteRetentionPolicy = containerDeleteRetentionPolicy; + this.LastAccessTimeTrackingPolicy = lastAccessTimeTrackingPolicy; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets specifies CORS rules for the Blob 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 Blob service. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "cors")] + public CorsRules Cors {get; set; } + + /// + /// Gets or sets defaultServiceVersion indicates the default version to use for + /// requests to the Blob service if an incoming request’s version is not + /// specified. Possible values include version 2008-10-27 and all more recent + /// versions. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "defaultServiceVersion")] + public string DefaultServiceVersion {get; set; } + + /// + /// Gets or sets the blob service properties for blob soft delete. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "deleteRetentionPolicy")] + public DeleteRetentionPolicy DeleteRetentionPolicy {get; set; } + + /// + /// Gets or sets versioning is enabled if set to true. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "isVersioningEnabled")] + public bool? IsVersioningEnabled {get; set; } + + /// + /// Gets or sets deprecated in favor of isVersioningEnabled property. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "automaticSnapshotPolicyEnabled")] + public bool? AutomaticSnapshotPolicyEnabled {get; set; } + + /// + /// Gets or sets the blob service properties for change feed events. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "changeFeed")] + public ChangeFeed ChangeFeed {get; set; } + + /// + /// Gets or sets the blob service properties for blob restore policy. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "restorePolicy")] + public RestorePolicyProperties RestorePolicy {get; set; } + + /// + /// Gets or sets the blob service properties for container soft delete. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "containerDeleteRetentionPolicy")] + public DeleteRetentionPolicy ContainerDeleteRetentionPolicy {get; set; } + + /// + /// Gets or sets the blob service property to configure last access time based + /// tracking policy. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "lastAccessTimeTrackingPolicy")] + public LastAccessTimeTrackingPolicy LastAccessTimeTrackingPolicy {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + + + if (this.DeleteRetentionPolicy != null) + { + this.DeleteRetentionPolicy.Validate(); + } + if (this.ChangeFeed != null) + { + this.ChangeFeed.Validate(); + } + if (this.RestorePolicy != null) + { + this.RestorePolicy.Validate(); + } + if (this.ContainerDeleteRetentionPolicy != null) + { + this.ContainerDeleteRetentionPolicy.Validate(); + } + if (this.LastAccessTimeTrackingPolicy != null) + { + this.LastAccessTimeTrackingPolicy.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicesName.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicesName.cs deleted file mode 100644 index e50f2720a736..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/BlobServicesName.cs +++ /dev/null @@ -1,45 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Defines values for BlobServicesName. - /// - - - [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum BlobServicesName - { - [System.Runtime.Serialization.EnumMember(Value = "default")] - Default - } - internal static class BlobServicesNameEnumExtension - { - internal static string ToSerializedValue(this BlobServicesName? value) - { - return value == null ? null : ((BlobServicesName)value).ToSerializedValue(); - } - internal static string ToSerializedValue(this BlobServicesName value) - { - switch( value ) - { - case BlobServicesName.Default: - return "default"; - } - return null; - } - internal static BlobServicesName? ParseBlobServicesName(this string value) - { - switch( value ) - { - case "default": - return BlobServicesName.Default; - } - return null; - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterCreation.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterCreation.cs index ee25a097fcd0..0da4762df2de 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterCreation.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterCreation.cs @@ -73,20 +73,12 @@ public virtual void Validate() { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterCreationGreaterThan", 0); } - if (this.DaysAfterCreationGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterCreationGreaterThan", 1); - } if (this.DaysAfterLastTierChangeGreaterThan != null) { if (this.DaysAfterLastTierChangeGreaterThan < 0) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterLastTierChangeGreaterThan", 0); } - if (this.DaysAfterLastTierChangeGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterLastTierChangeGreaterThan", 1); - } } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterModification.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterModification.cs index 5959145be7e1..27a44ad35f24 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterModification.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/DateAfterModification.cs @@ -103,10 +103,6 @@ public virtual void Validate() { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterModificationGreaterThan", 0); } - if (this.DaysAfterModificationGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterModificationGreaterThan", 1); - } } if (this.DaysAfterLastAccessTimeGreaterThan != null) { @@ -114,10 +110,6 @@ public virtual void Validate() { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterLastAccessTimeGreaterThan", 0); } - if (this.DaysAfterLastAccessTimeGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterLastAccessTimeGreaterThan", 1); - } } if (this.DaysAfterLastTierChangeGreaterThan != null) { @@ -125,10 +117,6 @@ public virtual void Validate() { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterLastTierChangeGreaterThan", 0); } - if (this.DaysAfterLastTierChangeGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterLastTierChangeGreaterThan", 1); - } } if (this.DaysAfterCreationGreaterThan != null) { @@ -136,10 +124,6 @@ public virtual void Validate() { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "DaysAfterCreationGreaterThan", 0); } - if (this.DaysAfterCreationGreaterThan % 1 != 0) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MultipleOf, "DaysAfterCreationGreaterThan", 1); - } } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/DeletedAccount.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/DeletedAccount.cs index 6e6c2efe090f..d65a059249d3 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/DeletedAccount.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/DeletedAccount.cs @@ -25,8 +25,8 @@ public DeletedAccount() /// Initializes a new instance of the DeletedAccount class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public DeletedAccount() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Full resource id of the original storage account. /// @@ -51,9 +55,9 @@ public DeletedAccount() /// Deletion time of the deleted account. /// - public DeletedAccount(string id = default(string), string name = default(string), string type = default(string), string storageAccountResourceId = default(string), string location = default(string), string restoreReference = default(string), string creationTime = default(string), string deletionTime = default(string)) + public DeletedAccount(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string storageAccountResourceId = default(string), string location = default(string), string restoreReference = default(string), string creationTime = default(string), string deletionTime = default(string)) - : base(id, name, type) + : base(id, name, type, systemData) { this.StorageAccountResourceId = storageAccountResourceId; this.Location = location; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/EncryptionScope.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/EncryptionScope.cs index 7ca14cc5eebf..3be711ede267 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/EncryptionScope.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/EncryptionScope.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The Encryption Scope resource. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class EncryptionScope : Resource + public partial class EncryptionScope : ProxyResource { /// /// Initializes a new instance of the EncryptionScope class. @@ -25,8 +25,8 @@ public EncryptionScope() /// Initializes a new instance of the EncryptionScope class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public EncryptionScope() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Gets the creation date and time of the encryption scope in UTC. /// @@ -57,9 +61,9 @@ public EncryptionScope() /// A boolean indicating whether or not the service applies a secondary layer /// of encryption with platform managed keys for data at rest. /// - public EncryptionScope(string id = default(string), string name = default(string), string type = default(string), System.DateTime? creationTime = default(System.DateTime?), string source = default(string), string state = default(string), System.DateTime? lastModifiedTime = default(System.DateTime?), EncryptionScopeKeyVaultProperties keyVaultProperties = default(EncryptionScopeKeyVaultProperties), bool? requireInfrastructureEncryption = default(bool?)) + public EncryptionScope(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.DateTime? creationTime = default(System.DateTime?), string source = default(string), string state = default(string), System.DateTime? lastModifiedTime = default(System.DateTime?), EncryptionScopeKeyVaultProperties keyVaultProperties = default(EncryptionScopeKeyVaultProperties), bool? requireInfrastructureEncryption = default(bool?)) - : base(id, name, type) + : base(id, name, type, systemData) { this.CreationTime = creationTime; this.Source = source; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FailoverType.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Enum56.cs similarity index 63% rename from src/Storage/Storage.Management.Sdk/Generated/Models/FailoverType.cs rename to src/Storage/Storage.Management.Sdk/Generated/Models/Enum56.cs index 1a7475fae5c7..8c667ca3c8a0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FailoverType.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Enum56.cs @@ -7,37 +7,37 @@ namespace Microsoft.Azure.Management.Storage.Models { /// - /// Defines values for FailoverType. + /// Defines values for Enum56. /// [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum FailoverType + public enum Enum56 { [System.Runtime.Serialization.EnumMember(Value = "Planned")] Planned } - internal static class FailoverTypeEnumExtension + internal static class Enum56EnumExtension { - internal static string ToSerializedValue(this FailoverType? value) + internal static string ToSerializedValue(this Enum56? value) { - return value == null ? null : ((FailoverType)value).ToSerializedValue(); + return value == null ? null : ((Enum56)value).ToSerializedValue(); } - internal static string ToSerializedValue(this FailoverType value) + internal static string ToSerializedValue(this Enum56 value) { switch( value ) { - case FailoverType.Planned: + case Enum56.Planned: return "Planned"; } return null; } - internal static FailoverType? ParseFailoverType(this string value) + internal static Enum56? ParseEnum56(this string value) { switch( value ) { case "Planned": - return FailoverType.Planned; + return Enum56.Planned; } return null; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListKeyExpand.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Enum70.cs similarity index 62% rename from src/Storage/Storage.Management.Sdk/Generated/Models/ListKeyExpand.cs rename to src/Storage/Storage.Management.Sdk/Generated/Models/Enum70.cs index 6e9702727e22..ad6097c5a29c 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ListKeyExpand.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Enum70.cs @@ -7,37 +7,37 @@ namespace Microsoft.Azure.Management.Storage.Models { /// - /// Defines values for ListKeyExpand. + /// Defines values for Enum70. /// [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum ListKeyExpand + public enum Enum70 { [System.Runtime.Serialization.EnumMember(Value = "kerb")] Kerb } - internal static class ListKeyExpandEnumExtension + internal static class Enum70EnumExtension { - internal static string ToSerializedValue(this ListKeyExpand? value) + internal static string ToSerializedValue(this Enum70? value) { - return value == null ? null : ((ListKeyExpand)value).ToSerializedValue(); + return value == null ? null : ((Enum70)value).ToSerializedValue(); } - internal static string ToSerializedValue(this ListKeyExpand value) + internal static string ToSerializedValue(this Enum70 value) { switch( value ) { - case ListKeyExpand.Kerb: + case Enum70.Kerb: return "kerb"; } return null; } - internal static ListKeyExpand? ParseListKeyExpand(this string value) + internal static Enum70? ParseEnum70(this string value) { switch( value ) { case "kerb": - return ListKeyExpand.Kerb; + return Enum70.Kerb; } return null; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorDetail.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorDetail.cs deleted file mode 100644 index ee9e9fccfd14..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorDetail.cs +++ /dev/null @@ -1,88 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - using System.Linq; - - /// - /// The error detail. - /// - public partial class ErrorDetail - { - /// - /// Initializes a new instance of the ErrorDetail class. - /// - public ErrorDetail() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the ErrorDetail class. - /// - - /// The error code. - /// - - /// The error message. - /// - - /// The error target. - /// - - /// The error details. - /// - - /// The error additional info. - /// - public ErrorDetail(string code = default(string), string message = default(string), string target = default(string), System.Collections.Generic.IList details = default(System.Collections.Generic.IList), System.Collections.Generic.IList additionalInfo = default(System.Collections.Generic.IList)) - - { - this.Code = code; - this.Message = message; - this.Target = target; - this.Details = details; - this.AdditionalInfo = additionalInfo; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - - /// - /// Gets the error code. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "code")] - public string Code {get; private set; } - - /// - /// Gets the error message. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "message")] - public string Message {get; private set; } - - /// - /// Gets the error target. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "target")] - public string Target {get; private set; } - - /// - /// Gets the error details. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "details")] - public System.Collections.Generic.IList Details {get; private set; } - - /// - /// Gets the error additional info. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "additionalInfo")] - public System.Collections.Generic.IList AdditionalInfo {get; private set; } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGenerated.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGenerated.cs deleted file mode 100644 index 5bb7639666c3..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGenerated.cs +++ /dev/null @@ -1,55 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - using System.Linq; - - /// - /// Common error response for all Azure Resource Manager APIs to return error - /// details for failed operations. (This also follows the OData error response - /// format.). - /// - /// - /// Common error response for all Azure Resource Manager APIs to return error - /// details for failed operations. (This also follows the OData error response - /// format.). - /// - public partial class ErrorResponseAutoGenerated - { - /// - /// Initializes a new instance of the ErrorResponseAutoGenerated class. - /// - public ErrorResponseAutoGenerated() - { - CustomInit(); - } - - /// - /// Initializes a new instance of the ErrorResponseAutoGenerated class. - /// - - /// The error object. - /// - public ErrorResponseAutoGenerated(ErrorDetail error = default(ErrorDetail)) - - { - this.Error = error; - CustomInit(); - } - - /// - /// An initialization method that performs custom operations like setting defaults - /// - partial void CustomInit(); - - - /// - /// Gets or sets the error object. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "error")] - public ErrorDetail Error {get; set; } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGeneratedException.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGeneratedException.cs deleted file mode 100644 index c40ba15cfd18..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ErrorResponseAutoGeneratedException.cs +++ /dev/null @@ -1,55 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Exception thrown for an invalid response with ErrorResponseAutoGenerated information. - /// - public partial class ErrorResponseAutoGeneratedException : Microsoft.Rest.RestException - { - /// - /// Gets information about the associated HTTP request. - /// - public Microsoft.Rest.HttpRequestMessageWrapper Request { get; set; } - - /// - /// Gets information about the associated HTTP response. - /// - public Microsoft.Rest.HttpResponseMessageWrapper Response { get; set; } - - /// - /// Gets or sets the body object. - /// - public ErrorResponseAutoGenerated Body { get; set; } - - /// - /// Initializes a new instance of the ErrorResponseAutoGeneratedException class. - /// - public ErrorResponseAutoGeneratedException() - { - } - - /// - /// Initializes a new instance of the ErrorResponseAutoGenerated class. - /// - /// The exception message. - public ErrorResponseAutoGeneratedException(string message) - : this(message, null) - { - } - - /// - /// Initializes a new instance of the ErrorResponseAutoGenerated class. - /// - /// The exception message. - /// Inner exception. - public ErrorResponseAutoGeneratedException(string message, System.Exception innerException) - : base(message, innerException) - { - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTarget.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTarget.cs new file mode 100644 index 000000000000..1cab15bc1650 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTarget.cs @@ -0,0 +1,64 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Target helps provide filter parameters for the objects in the storage + /// account and forms the execution context for the storage task + /// + public partial class ExecutionTarget + { + /// + /// Initializes a new instance of the ExecutionTarget class. + /// + public ExecutionTarget() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ExecutionTarget class. + /// + + /// Required list of object prefixes to be included for task execution + /// + + /// List of object prefixes to be excluded from task execution. If there is a + /// conflict between include and exclude prefixes, the exclude prefix will be + /// the determining factor + /// + public ExecutionTarget(System.Collections.Generic.IList prefix = default(System.Collections.Generic.IList), System.Collections.Generic.IList excludePrefix = default(System.Collections.Generic.IList)) + + { + this.Prefix = prefix; + this.ExcludePrefix = excludePrefix; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets required list of object prefixes to be included for task + /// execution + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "prefix")] + public System.Collections.Generic.IList Prefix {get; set; } + + /// + /// Gets or sets list of object prefixes to be excluded from task execution. If + /// there is a conflict between include and exclude prefixes, the exclude + /// prefix will be the determining factor + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "excludePrefix")] + public System.Collections.Generic.IList ExcludePrefix {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTrigger.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTrigger.cs new file mode 100644 index 000000000000..8400ccabcaa6 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTrigger.cs @@ -0,0 +1,81 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Execution trigger for storage task assignment + /// + public partial class ExecutionTrigger + { + /// + /// Initializes a new instance of the ExecutionTrigger class. + /// + public ExecutionTrigger() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ExecutionTrigger class. + /// + + /// The trigger type of the storage task assignment execution + /// Possible values include: 'RunOnce', 'OnSchedule' + + /// The trigger parameters of the storage task assignment execution + /// + public ExecutionTrigger(string type, TriggerParameters parameters) + + { + this.Type = type; + this.Parameters = parameters; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the trigger type of the storage task assignment execution Possible values include: 'RunOnce', 'OnSchedule' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "type")] + public string Type {get; set; } + + /// + /// Gets or sets the trigger parameters of the storage task assignment + /// execution + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "parameters")] + public TriggerParameters Parameters {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Type == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Type"); + } + if (this.Parameters == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Parameters"); + } + + if (this.Parameters != null) + { + this.Parameters.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTriggerUpdate.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTriggerUpdate.cs new file mode 100644 index 000000000000..a914bc40bcfd --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ExecutionTriggerUpdate.cs @@ -0,0 +1,73 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Execution trigger update for storage task assignment + /// + public partial class ExecutionTriggerUpdate + { + /// + /// Initializes a new instance of the ExecutionTriggerUpdate class. + /// + public ExecutionTriggerUpdate() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ExecutionTriggerUpdate class. + /// + + /// The trigger type of the storage task assignment execution + /// Possible values include: 'RunOnce', 'OnSchedule' + + /// The trigger parameters of the storage task assignment execution + /// + public ExecutionTriggerUpdate(string type = default(string), TriggerParametersUpdate parameters = default(TriggerParametersUpdate)) + + { + this.Type = type; + this.Parameters = parameters; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the trigger type of the storage task assignment execution Possible values include: 'RunOnce', 'OnSchedule' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "type")] + public string Type {get; set; } + + /// + /// Gets or sets the trigger parameters of the storage task assignment + /// execution + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "parameters")] + public TriggerParametersUpdate Parameters {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + + if (this.Parameters != null) + { + this.Parameters.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceProperties.cs index 981a4a8ff240..976e85f7dda6 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceProperties.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceProperties.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The properties of File services in storage account. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class FileServiceProperties : Resource + public partial class FileServiceProperties : ProxyResource { /// /// Initializes a new instance of the FileServiceProperties class. @@ -25,8 +25,8 @@ public FileServiceProperties() /// Initializes a new instance of the FileServiceProperties class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public FileServiceProperties() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Sku name and tier. /// @@ -50,9 +54,9 @@ public FileServiceProperties() /// The file service properties for share soft delete. /// - public FileServiceProperties(string id = default(string), string name = default(string), string type = default(string), Sku sku = default(Sku), ProtocolSettings protocolSettings = default(ProtocolSettings), CorsRules cors = default(CorsRules), DeleteRetentionPolicy shareDeleteRetentionPolicy = default(DeleteRetentionPolicy)) + public FileServiceProperties(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), Sku sku = default(Sku), ProtocolSettings protocolSettings = default(ProtocolSettings), CorsRules cors = default(CorsRules), DeleteRetentionPolicy shareDeleteRetentionPolicy = default(DeleteRetentionPolicy)) - : base(id, name, type) + : base(id, name, type, systemData) { this.Sku = sku; this.ProtocolSettings = protocolSettings; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicePropertiesProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicePropertiesProperties.cs new file mode 100644 index 000000000000..88cb89df790b --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicePropertiesProperties.cs @@ -0,0 +1,89 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of File services in storage account. + /// + public partial class FileServicePropertiesProperties + { + /// + /// Initializes a new instance of the FileServicePropertiesProperties class. + /// + public FileServicePropertiesProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the FileServicePropertiesProperties class. + /// + + /// Specifies CORS rules for the File 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 File service. + /// + + /// The file service properties for share soft delete. + /// + + /// Protocol settings for file service + /// + public FileServicePropertiesProperties(CorsRules cors = default(CorsRules), DeleteRetentionPolicy shareDeleteRetentionPolicy = default(DeleteRetentionPolicy), ProtocolSettings protocolSettings = default(ProtocolSettings)) + + { + this.Cors = cors; + this.ShareDeleteRetentionPolicy = shareDeleteRetentionPolicy; + this.ProtocolSettings = protocolSettings; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets specifies CORS rules for the File 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 File service. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "cors")] + public CorsRules Cors {get; set; } + + /// + /// Gets or sets the file service properties for share soft delete. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "shareDeleteRetentionPolicy")] + public DeleteRetentionPolicy ShareDeleteRetentionPolicy {get; set; } + + /// + /// Gets or sets protocol settings for file service + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "protocolSettings")] + public ProtocolSettings ProtocolSettings {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + + if (this.ShareDeleteRetentionPolicy != null) + { + this.ShareDeleteRetentionPolicy.Validate(); + } + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsage.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsage.cs index dac002642838..ec958bc5f9d7 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsage.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsage.cs @@ -10,7 +10,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// /// The usage of file service in storage account. /// - public partial class FileServiceUsage : Resource + public partial class FileServiceUsage : ProxyResource { /// /// Initializes a new instance of the FileServiceUsage class. @@ -24,8 +24,8 @@ public FileServiceUsage() /// Initializes a new instance of the FileServiceUsage class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -35,12 +35,16 @@ public FileServiceUsage() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// File service usage in storage account including account limits, file share /// limits and constants used in recommendations and bursting formula. /// - public FileServiceUsage(string id = default(string), string name = default(string), string type = default(string), FileServiceUsageProperties properties = default(FileServiceUsageProperties)) + public FileServiceUsage(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), FileServiceUsageProperties properties = default(FileServiceUsageProperties)) - : base(id, name, type) + : base(id, name, type, systemData) { this.Properties = properties; CustomInit(); @@ -53,10 +57,11 @@ public FileServiceUsage() /// - /// Gets file service usage in storage account including account limits, file - /// share limits and constants used in recommendations and bursting formula. + /// Gets or sets file service usage in storage account including account + /// limits, file share limits and constants used in recommendations and + /// bursting formula. /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] - public FileServiceUsageProperties Properties {get; private set; } + public FileServiceUsageProperties Properties {get; set; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsagesName.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsagesName.cs deleted file mode 100644 index 069388ea9ab6..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServiceUsagesName.cs +++ /dev/null @@ -1,45 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Defines values for FileServiceUsagesName. - /// - - - [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum FileServiceUsagesName - { - [System.Runtime.Serialization.EnumMember(Value = "default")] - Default - } - internal static class FileServiceUsagesNameEnumExtension - { - internal static string ToSerializedValue(this FileServiceUsagesName? value) - { - return value == null ? null : ((FileServiceUsagesName)value).ToSerializedValue(); - } - internal static string ToSerializedValue(this FileServiceUsagesName value) - { - switch( value ) - { - case FileServiceUsagesName.Default: - return "default"; - } - return null; - } - internal static FileServiceUsagesName? ParseFileServiceUsagesName(this string value) - { - switch( value ) - { - case "default": - return FileServiceUsagesName.Default; - } - return null; - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicesName.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicesName.cs deleted file mode 100644 index 909b188c0b43..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileServicesName.cs +++ /dev/null @@ -1,45 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Defines values for FileServicesName. - /// - - - [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum FileServicesName - { - [System.Runtime.Serialization.EnumMember(Value = "default")] - Default - } - internal static class FileServicesNameEnumExtension - { - internal static string ToSerializedValue(this FileServicesName? value) - { - return value == null ? null : ((FileServicesName)value).ToSerializedValue(); - } - internal static string ToSerializedValue(this FileServicesName value) - { - switch( value ) - { - case FileServicesName.Default: - return "default"; - } - return null; - } - internal static FileServicesName? ParseFileServicesName(this string value) - { - switch( value ) - { - case "default": - return FileServicesName.Default; - } - return null; - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShare.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShare.cs index 9ecbb466db43..8241fce64eb0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShare.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShare.cs @@ -12,7 +12,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// Etag. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class FileShare : AzureEntityResource + public partial class FileShare : ProxyResource { /// /// Initializes a new instance of the FileShare class. @@ -26,8 +26,8 @@ public FileShare() /// Initializes a new instance of the FileShare class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -37,6 +37,10 @@ public FileShare() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// @@ -142,10 +146,11 @@ public FileShare() /// File Share Paid Bursting properties. /// - public FileShare(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), string enabledProtocols = default(string), string version = default(string), System.DateTime? deletedTime = default(System.DateTime?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), System.DateTime? lastModifiedTime = default(System.DateTime?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), System.DateTime? nextAllowedQuotaDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedIopsDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedBandwidthDowngradeTime = default(System.DateTime?), string rootSquash = default(string), bool? deleted = default(bool?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) + public FileShare(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), string enabledProtocols = default(string), string version = default(string), System.DateTime? deletedTime = default(System.DateTime?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), System.DateTime? lastModifiedTime = default(System.DateTime?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), string nextAllowedQuotaDowngradeTime = default(string), string nextAllowedProvisionedIopsDowngradeTime = default(string), string nextAllowedProvisionedBandwidthDowngradeTime = default(string), string rootSquash = default(string), bool? deleted = default(bool?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) - : base(id, name, type, etag) + : base(id, name, type, systemData) { + this.Etag = etag; this.Metadata = metadata; this.ShareQuota = shareQuota; this.ProvisionedIops = provisionedIops; @@ -181,6 +186,12 @@ public FileShare() partial void CustomInit(); + /// + /// Gets resource Etag. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "etag")] + public string Etag {get; private set; } + /// /// Gets or sets a name-value pair to associate with the share as metadata. /// @@ -293,7 +304,7 @@ public FileShare() /// Provisioned v1 SSD and Files Provisioned v2 account type /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedQuotaDowngradeTime")] - public System.DateTime? NextAllowedQuotaDowngradeTime {get; private set; } + public string NextAllowedQuotaDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned IOPS downgrade time for the @@ -301,7 +312,7 @@ public FileShare() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedProvisionedIopsDowngradeTime")] - public System.DateTime? NextAllowedProvisionedIopsDowngradeTime {get; private set; } + public string NextAllowedProvisionedIopsDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned bandwidth downgrade time for the @@ -309,7 +320,7 @@ public FileShare() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedProvisionedBandwidthDowngradeTime")] - public System.DateTime? NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } + public string NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } /// /// Gets or sets the property is for NFS share only. The default is diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareItem.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareItem.cs index b787f6cef55e..955fb5f72411 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareItem.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareItem.cs @@ -25,8 +25,8 @@ public FileShareItem() /// Initializes a new instance of the FileShareItem class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public FileShareItem() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// @@ -141,9 +145,9 @@ public FileShareItem() /// File Share Paid Bursting properties. /// - public FileShareItem(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), string enabledProtocols = default(string), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), System.DateTime? nextAllowedQuotaDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedIopsDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedBandwidthDowngradeTime = default(System.DateTime?), string rootSquash = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) + public FileShareItem(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string), string enabledProtocols = default(string), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), string nextAllowedQuotaDowngradeTime = default(string), string nextAllowedProvisionedIopsDowngradeTime = default(string), string nextAllowedProvisionedBandwidthDowngradeTime = default(string), string rootSquash = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) - : base(id, name, type, etag) + : base(id, name, type, systemData, etag) { this.EnabledProtocols = enabledProtocols; this.LeaseStatus = leaseStatus; @@ -267,7 +271,7 @@ public FileShareItem() /// Provisioned v1 SSD and Files Provisioned v2 account type /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedQuotaDowngradeTime")] - public System.DateTime? NextAllowedQuotaDowngradeTime {get; private set; } + public string NextAllowedQuotaDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned IOPS downgrade time for the @@ -275,7 +279,7 @@ public FileShareItem() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedProvisionedIopsDowngradeTime")] - public System.DateTime? NextAllowedProvisionedIopsDowngradeTime {get; private set; } + public string NextAllowedProvisionedIopsDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned bandwidth downgrade time for the @@ -283,7 +287,7 @@ public FileShareItem() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "properties.nextAllowedProvisionedBandwidthDowngradeTime")] - public System.DateTime? NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } + public string NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } /// /// Gets or sets the property is for NFS share only. The default is diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareProperties.cs index fe723226a025..4268135e5d2b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareProperties.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/FileShareProperties.cs @@ -126,7 +126,7 @@ public FileShareProperties() /// File Share Paid Bursting properties. /// - public FileShareProperties(System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), System.DateTime? nextAllowedQuotaDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedIopsDowngradeTime = default(System.DateTime?), System.DateTime? nextAllowedProvisionedBandwidthDowngradeTime = default(System.DateTime?), string enabledProtocols = default(string), string rootSquash = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) + public FileShareProperties(System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? shareQuota = default(int?), int? provisionedIops = default(int?), int? provisionedBandwidthMibps = default(int?), int? includedBurstIops = default(int?), long? maxBurstCreditsForIops = default(long?), string nextAllowedQuotaDowngradeTime = default(string), string nextAllowedProvisionedIopsDowngradeTime = default(string), string nextAllowedProvisionedBandwidthDowngradeTime = default(string), string enabledProtocols = default(string), string rootSquash = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string accessTier = default(string), System.DateTime? accessTierChangeTime = default(System.DateTime?), string accessTierStatus = default(string), long? shareUsageBytes = default(long?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.DateTime? snapshotTime = default(System.DateTime?), FileSharePropertiesFileSharePaidBursting fileSharePaidBursting = default(FileSharePropertiesFileSharePaidBursting)) { this.LastModifiedTime = lastModifiedTime; @@ -225,7 +225,7 @@ public FileShareProperties() /// Provisioned v1 SSD and Files Provisioned v2 account type /// [Newtonsoft.Json.JsonProperty(PropertyName = "nextAllowedQuotaDowngradeTime")] - public System.DateTime? NextAllowedQuotaDowngradeTime {get; private set; } + public string NextAllowedQuotaDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned IOPS downgrade time for the @@ -233,7 +233,7 @@ public FileShareProperties() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "nextAllowedProvisionedIopsDowngradeTime")] - public System.DateTime? NextAllowedProvisionedIopsDowngradeTime {get; private set; } + public string NextAllowedProvisionedIopsDowngradeTime {get; private set; } /// /// Gets returns the next allowed provisioned bandwidth downgrade time for the @@ -241,7 +241,7 @@ public FileShareProperties() /// Provisioned v2 account type. /// [Newtonsoft.Json.JsonProperty(PropertyName = "nextAllowedProvisionedBandwidthDowngradeTime")] - public System.DateTime? NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } + public string NextAllowedProvisionedBandwidthDowngradeTime {get; private set; } /// /// Gets or sets the authentication protocol that is used for the file share. diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/IPRule.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/IPRule.cs index 6350fdea9372..32d7a93f44bf 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/IPRule.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/IPRule.cs @@ -29,7 +29,7 @@ public IPRule() /// The action of IP ACL rule. /// Possible values include: 'Allow' - public IPRule(string ipAddressOrRange, Action? action = default(Action?)) + public IPRule(string ipAddressOrRange, IPRuleAction? action = default(IPRuleAction?)) { this.IPAddressOrRange = ipAddressOrRange; @@ -53,7 +53,7 @@ public IPRule() /// Gets or sets the action of IP ACL rule. Possible values include: 'Allow' /// [Newtonsoft.Json.JsonProperty(PropertyName = "action")] - public Action? Action {get; set; } + public IPRuleAction? Action {get; set; } /// /// Validate the object. /// diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Action.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/IPRuleAction.cs similarity index 62% rename from src/Storage/Storage.Management.Sdk/Generated/Models/Action.cs rename to src/Storage/Storage.Management.Sdk/Generated/Models/IPRuleAction.cs index a11a98f68845..fc602f52de81 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/Action.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/IPRuleAction.cs @@ -7,37 +7,37 @@ namespace Microsoft.Azure.Management.Storage.Models { /// - /// Defines values for Action. + /// Defines values for IPRuleAction. /// [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum Action + public enum IPRuleAction { [System.Runtime.Serialization.EnumMember(Value = "Allow")] Allow } - internal static class ActionEnumExtension + internal static class IPRuleActionEnumExtension { - internal static string ToSerializedValue(this Action? value) + internal static string ToSerializedValue(this IPRuleAction? value) { - return value == null ? null : ((Action)value).ToSerializedValue(); + return value == null ? null : ((IPRuleAction)value).ToSerializedValue(); } - internal static string ToSerializedValue(this Action value) + internal static string ToSerializedValue(this IPRuleAction value) { switch( value ) { - case Action.Allow: + case IPRuleAction.Allow: return "Allow"; } return null; } - internal static Action? ParseAction(this string value) + internal static IPRuleAction? ParseIPRuleAction(this string value) { switch( value ) { case "Allow": - return Action.Allow; + return IPRuleAction.Allow; } return null; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicy.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicy.cs index 6dc31d490b53..2386fde2ea13 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicy.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicy.cs @@ -12,7 +12,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// name, resource type, Etag. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class ImmutabilityPolicy : AzureEntityResource + public partial class ImmutabilityPolicy : ProxyResource { /// /// Initializes a new instance of the ImmutabilityPolicy class. @@ -26,8 +26,8 @@ public ImmutabilityPolicy() /// Initializes a new instance of the ImmutabilityPolicy class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -37,6 +37,10 @@ public ImmutabilityPolicy() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// @@ -63,10 +67,11 @@ public ImmutabilityPolicy() /// 'allowProtectedAppendWrites' and 'allowProtectedAppendWritesAll' properties /// are mutually exclusive. /// - public ImmutabilityPolicy(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), int? immutabilityPeriodSinceCreationInDays = default(int?), string state = default(string), bool? allowProtectedAppendWrites = default(bool?), bool? allowProtectedAppendWritesAll = default(bool?)) + public ImmutabilityPolicy(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string), int? immutabilityPeriodSinceCreationInDays = default(int?), string state = default(string), bool? allowProtectedAppendWrites = default(bool?), bool? allowProtectedAppendWritesAll = default(bool?)) - : base(id, name, type, etag) + : base(id, name, type, systemData) { + this.Etag = etag; this.ImmutabilityPeriodSinceCreationInDays = immutabilityPeriodSinceCreationInDays; this.State = state; this.AllowProtectedAppendWrites = allowProtectedAppendWrites; @@ -80,6 +85,12 @@ public ImmutabilityPolicy() partial void CustomInit(); + /// + /// Gets resource Etag. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "etag")] + public string Etag {get; private set; } + /// /// Gets or sets the immutability period for the blobs in the container since /// the policy creation, in days. diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicyName.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicyName.cs deleted file mode 100644 index 0dc03c8cc975..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ImmutabilityPolicyName.cs +++ /dev/null @@ -1,45 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Defines values for ImmutabilityPolicyName. - /// - - - [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum ImmutabilityPolicyName - { - [System.Runtime.Serialization.EnumMember(Value = "default")] - Default - } - internal static class ImmutabilityPolicyNameEnumExtension - { - internal static string ToSerializedValue(this ImmutabilityPolicyName? value) - { - return value == null ? null : ((ImmutabilityPolicyName)value).ToSerializedValue(); - } - internal static string ToSerializedValue(this ImmutabilityPolicyName value) - { - switch( value ) - { - case ImmutabilityPolicyName.Default: - return "default"; - } - return null; - } - internal static ImmutabilityPolicyName? ParseImmutabilityPolicyName(this string value) - { - switch( value ) - { - case "default": - return ImmutabilityPolicyName.Default; - } - return null; - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/IssueType.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/IssueType.cs new file mode 100644 index 000000000000..5b3cee06262e --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/IssueType.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for IssueType. + /// + + + public static class IssueType + { + public const string Unknown = "Unknown"; + public const string ConfigurationPropagationFailure = "ConfigurationPropagationFailure"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListContainerItem.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ListContainerItem.cs index afb43f75d9b7..97b5f3ed7c87 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ListContainerItem.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ListContainerItem.cs @@ -25,8 +25,8 @@ public ListContainerItem() /// Initializes a new instance of the ListContainerItem class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public ListContainerItem() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource Etag. /// @@ -106,9 +110,9 @@ public ListContainerItem() /// Enable NFSv3 all squash on blob container. /// - public ListContainerItem(string id = default(string), string name = default(string), string type = default(string), string etag = default(string), PublicAccess? publicAccess = default(PublicAccess?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string defaultEncryptionScope = default(string), bool? denyEncryptionScopeOverride = default(bool?), System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), ImmutabilityPolicyProperties immutabilityPolicy = default(ImmutabilityPolicyProperties), LegalHoldProperties legalHold = default(LegalHoldProperties), bool? hasLegalHold = default(bool?), bool? hasImmutabilityPolicy = default(bool?), ImmutableStorageWithVersioning immutableStorageWithVersioning = default(ImmutableStorageWithVersioning), bool? enableNfsV3RootSquash = default(bool?), bool? enableNfsV3AllSquash = default(bool?)) + public ListContainerItem(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string etag = default(string), PublicAccess? publicAccess = default(PublicAccess?), string leaseStatus = default(string), string leaseState = default(string), string leaseDuration = default(string), string version = default(string), bool? deleted = default(bool?), System.DateTime? deletedTime = default(System.DateTime?), int? remainingRetentionDays = default(int?), string defaultEncryptionScope = default(string), bool? denyEncryptionScopeOverride = default(bool?), System.DateTime? lastModifiedTime = default(System.DateTime?), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), ImmutabilityPolicyProperties immutabilityPolicy = default(ImmutabilityPolicyProperties), LegalHoldProperties legalHold = default(LegalHoldProperties), bool? hasLegalHold = default(bool?), bool? hasImmutabilityPolicy = default(bool?), ImmutableStorageWithVersioning immutableStorageWithVersioning = default(ImmutableStorageWithVersioning), bool? enableNfsV3RootSquash = default(bool?), bool? enableNfsV3AllSquash = default(bool?)) - : base(id, name, type, etag) + : base(id, name, type, systemData, etag) { this.PublicAccess = publicAccess; this.LeaseStatus = leaseStatus; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueue.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueue.cs new file mode 100644 index 000000000000..784f779a3150 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueue.cs @@ -0,0 +1,62 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class ListQueue : Resource + { + /// + /// Initializes a new instance of the ListQueue class. + /// + public ListQueue() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ListQueue class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// A name-value pair that represents queue metadata. + /// + public ListQueue(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary)) + + : base(id, name, type, systemData) + { + this.Metadata = metadata; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets a name-value pair that represents queue metadata. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.metadata")] + public System.Collections.Generic.IDictionary Metadata {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueProperties.cs new file mode 100644 index 000000000000..7ed1c101dbdc --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueProperties.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class ListQueueProperties + { + /// + /// Initializes a new instance of the ListQueueProperties class. + /// + public ListQueueProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ListQueueProperties class. + /// + + /// A name-value pair that represents queue metadata. + /// + public ListQueueProperties(System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary)) + + { + this.Metadata = metadata; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets a name-value pair that represents queue metadata. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "metadata")] + public System.Collections.Generic.IDictionary Metadata {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueServices.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueServices.cs new file mode 100644 index 000000000000..dba0e26ddbc9 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ListQueueServices.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class ListQueueServices + { + /// + /// Initializes a new instance of the ListQueueServices class. + /// + public ListQueueServices() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ListQueueServices class. + /// + + /// List of queue services returned. + /// + public ListQueueServices(System.Collections.Generic.IList value = default(System.Collections.Generic.IList)) + + { + this.Value = value; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets list of queue services returned. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "value")] + public System.Collections.Generic.IList Value {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ListTableServices.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ListTableServices.cs new file mode 100644 index 000000000000..44f682cc99a8 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ListTableServices.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class ListTableServices + { + /// + /// Initializes a new instance of the ListTableServices class. + /// + public ListTableServices() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ListTableServices class. + /// + + /// List of table services returned. + /// + public ListTableServices(System.Collections.Generic.IList value = default(System.Collections.Generic.IList)) + + { + this.Value = value; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets list of table services returned. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "value")] + public System.Collections.Generic.IList Value {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/LocalUser.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/LocalUser.cs index b30f497bab99..fca93495bf0a 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/LocalUser.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/LocalUser.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The local user associated with the storage accounts. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class LocalUser : Resource + public partial class LocalUser : ProxyResource { /// /// Initializes a new instance of the LocalUser class. @@ -25,8 +25,8 @@ public LocalUser() /// Initializes a new instance of the LocalUser class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,7 +36,8 @@ public LocalUser() /// "Microsoft.Storage/storageAccounts" /// - /// Metadata pertaining to creation and last modification of the resource. + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. /// /// The permission scopes of the local user. @@ -81,9 +82,8 @@ public LocalUser() /// public LocalUser(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.Collections.Generic.IList permissionScopes = default(System.Collections.Generic.IList), string homeDirectory = default(string), System.Collections.Generic.IList sshAuthorizedKeys = default(System.Collections.Generic.IList), string sid = default(string), bool? hasSharedKey = default(bool?), bool? hasSshKey = default(bool?), bool? hasSshPassword = default(bool?), int? userId = default(int?), int? groupId = default(int?), bool? allowAclAuthorization = default(bool?), System.Collections.Generic.IList extendedGroups = default(System.Collections.Generic.IList), bool? isNfSv3Enabled = default(bool?)) - : base(id, name, type) + : base(id, name, type, systemData) { - this.SystemData = systemData; this.PermissionScopes = permissionScopes; this.HomeDirectory = homeDirectory; this.SshAuthorizedKeys = sshAuthorizedKeys; @@ -105,12 +105,6 @@ public LocalUser() partial void CustomInit(); - /// - /// Gets metadata pertaining to creation and last modification of the resource. - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "systemData")] - public SystemData SystemData {get; private set; } - /// /// Gets or sets the permission scopes of the local user. /// diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ManagementPolicy.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ManagementPolicy.cs index fe26844d566a..7705f1ff13b6 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ManagementPolicy.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ManagementPolicy.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The Get Storage Account ManagementPolicies operation response. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class ManagementPolicy : Resource + public partial class ManagementPolicy : ProxyResource { /// /// Initializes a new instance of the ManagementPolicy class. @@ -25,8 +25,8 @@ public ManagementPolicy() /// Initializes a new instance of the ManagementPolicy class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,15 +36,19 @@ public ManagementPolicy() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Returns the date and time the ManagementPolicies was last modified. /// /// The Storage Account ManagementPolicy, in JSON format. See more details in: /// https://learn.microsoft.com/azure/storage/blobs/lifecycle-management-overview. /// - public ManagementPolicy(string id = default(string), string name = default(string), string type = default(string), System.DateTime? lastModifiedTime = default(System.DateTime?), ManagementPolicySchema policy = default(ManagementPolicySchema)) + public ManagementPolicy(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.DateTime? lastModifiedTime = default(System.DateTime?), ManagementPolicySchema policy = default(ManagementPolicySchema)) - : base(id, name, type) + : base(id, name, type, systemData) { this.LastModifiedTime = lastModifiedTime; this.Policy = policy; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeter.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeter.cs new file mode 100644 index 000000000000..59b8f4b0f026 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeter.cs @@ -0,0 +1,68 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// NetworkSecurityPerimeter related information + /// + public partial class NetworkSecurityPerimeter + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeter class. + /// + public NetworkSecurityPerimeter() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeter class. + /// + + /// The ARM identifier of the resource + /// + + /// Guid of the resource + /// + + /// Location of the resource + /// + public NetworkSecurityPerimeter(string id = default(string), string perimeterGuid = default(string), string location = default(string)) + + { + this.Id = id; + this.PerimeterGuid = perimeterGuid; + this.Location = location; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the ARM identifier of the resource + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "id")] + public string Id {get; set; } + + /// + /// Gets or sets guid of the resource + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "perimeterGuid")] + public string PerimeterGuid {get; set; } + + /// + /// Gets or sets location of the resource + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "location")] + public string Location {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfiguration.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfiguration.cs new file mode 100644 index 000000000000..98f56e48bf2f --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfiguration.cs @@ -0,0 +1,107 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The Network Security Perimeter configuration resource. + /// + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class NetworkSecurityPerimeterConfiguration : ProxyResource + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfiguration class. + /// + public NetworkSecurityPerimeterConfiguration() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfiguration class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// Provisioning state of Network Security Perimeter configuration propagation + /// Possible values include: 'Accepted', 'Succeeded', 'Failed', 'Deleting', + /// 'Canceled' + + /// List of Provisioning Issues if any + /// + + /// NetworkSecurityPerimeter related information + /// + + /// Information about resource association + /// + + /// Network Security Perimeter profile + /// + public NetworkSecurityPerimeterConfiguration(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string provisioningState = default(string), System.Collections.Generic.IList provisioningIssues = default(System.Collections.Generic.IList), NetworkSecurityPerimeter networkSecurityPerimeter = default(NetworkSecurityPerimeter), NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation resourceAssociation = default(NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation), NetworkSecurityPerimeterConfigurationPropertiesProfile profile = default(NetworkSecurityPerimeterConfigurationPropertiesProfile)) + + : base(id, name, type, systemData) + { + this.ProvisioningState = provisioningState; + this.ProvisioningIssues = provisioningIssues; + this.NetworkSecurityPerimeter = networkSecurityPerimeter; + this.ResourceAssociation = resourceAssociation; + this.Profile = profile; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets provisioning state of Network Security Perimeter configuration + /// propagation Possible values include: 'Accepted', 'Succeeded', 'Failed', 'Deleting', 'Canceled' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.provisioningState")] + public string ProvisioningState {get; private set; } + + /// + /// Gets list of Provisioning Issues if any + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.provisioningIssues")] + public System.Collections.Generic.IList ProvisioningIssues {get; private set; } + + /// + /// Gets networkSecurityPerimeter related information + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.networkSecurityPerimeter")] + public NetworkSecurityPerimeter NetworkSecurityPerimeter {get; private set; } + + /// + /// Gets information about resource association + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.resourceAssociation")] + public NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation ResourceAssociation {get; private set; } + + /// + /// Gets network Security Perimeter profile + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.profile")] + public NetworkSecurityPerimeterConfigurationPropertiesProfile Profile {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProperties.cs new file mode 100644 index 000000000000..47b0c8bfde0e --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProperties.cs @@ -0,0 +1,90 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of the Network Security Perimeter Configuration + /// + public partial class NetworkSecurityPerimeterConfigurationProperties + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationProperties class. + /// + public NetworkSecurityPerimeterConfigurationProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationProperties class. + /// + + /// Provisioning state of Network Security Perimeter configuration propagation + /// Possible values include: 'Accepted', 'Succeeded', 'Failed', 'Deleting', + /// 'Canceled' + + /// List of Provisioning Issues if any + /// + + /// NetworkSecurityPerimeter related information + /// + + /// Information about resource association + /// + + /// Network Security Perimeter profile + /// + public NetworkSecurityPerimeterConfigurationProperties(string provisioningState = default(string), System.Collections.Generic.IList provisioningIssues = default(System.Collections.Generic.IList), NetworkSecurityPerimeter networkSecurityPerimeter = default(NetworkSecurityPerimeter), NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation resourceAssociation = default(NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation), NetworkSecurityPerimeterConfigurationPropertiesProfile profile = default(NetworkSecurityPerimeterConfigurationPropertiesProfile)) + + { + this.ProvisioningState = provisioningState; + this.ProvisioningIssues = provisioningIssues; + this.NetworkSecurityPerimeter = networkSecurityPerimeter; + this.ResourceAssociation = resourceAssociation; + this.Profile = profile; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets provisioning state of Network Security Perimeter configuration + /// propagation Possible values include: 'Accepted', 'Succeeded', 'Failed', 'Deleting', 'Canceled' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "provisioningState")] + public string ProvisioningState {get; private set; } + + /// + /// Gets list of Provisioning Issues if any + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "provisioningIssues")] + public System.Collections.Generic.IList ProvisioningIssues {get; private set; } + + /// + /// Gets networkSecurityPerimeter related information + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "networkSecurityPerimeter")] + public NetworkSecurityPerimeter NetworkSecurityPerimeter {get; private set; } + + /// + /// Gets information about resource association + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "resourceAssociation")] + public NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation ResourceAssociation {get; private set; } + + /// + /// Gets network Security Perimeter profile + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "profile")] + public NetworkSecurityPerimeterConfigurationPropertiesProfile Profile {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesProfile.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesProfile.cs new file mode 100644 index 000000000000..91afb54979e0 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesProfile.cs @@ -0,0 +1,88 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Network Security Perimeter profile + /// + public partial class NetworkSecurityPerimeterConfigurationPropertiesProfile + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationPropertiesProfile class. + /// + public NetworkSecurityPerimeterConfigurationPropertiesProfile() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationPropertiesProfile class. + /// + + /// Name of the resource + /// + + /// Current access rules version + /// + + /// List of Access Rules + /// + + /// Diagnostic settings version + /// + + /// Enabled logging categories + /// + public NetworkSecurityPerimeterConfigurationPropertiesProfile(string name = default(string), double? accessRulesVersion = default(double?), System.Collections.Generic.IList accessRules = default(System.Collections.Generic.IList), double? diagnosticSettingsVersion = default(double?), System.Collections.Generic.IList enabledLogCategories = default(System.Collections.Generic.IList)) + + { + this.Name = name; + this.AccessRulesVersion = accessRulesVersion; + this.AccessRules = accessRules; + this.DiagnosticSettingsVersion = diagnosticSettingsVersion; + this.EnabledLogCategories = enabledLogCategories; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets name of the resource + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "name")] + public string Name {get; set; } + + /// + /// Gets or sets current access rules version + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "accessRulesVersion")] + public double? AccessRulesVersion {get; set; } + + /// + /// Gets or sets list of Access Rules + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "accessRules")] + public System.Collections.Generic.IList AccessRules {get; set; } + + /// + /// Gets or sets diagnostic settings version + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "diagnosticSettingsVersion")] + public double? DiagnosticSettingsVersion {get; set; } + + /// + /// Gets or sets enabled logging categories + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "enabledLogCategories")] + public System.Collections.Generic.IList EnabledLogCategories {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation.cs new file mode 100644 index 000000000000..9df07e106533 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation.cs @@ -0,0 +1,58 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Information about resource association + /// + public partial class NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation class. + /// + public NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation class. + /// + + /// Name of the resource association + /// + + /// Access Mode of the resource association + /// Possible values include: 'Enforced', 'Learning', 'Audit' + public NetworkSecurityPerimeterConfigurationPropertiesResourceAssociation(string name = default(string), string accessMode = default(string)) + + { + this.Name = name; + this.AccessMode = accessMode; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets name of the resource association + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "name")] + public string Name {get; set; } + + /// + /// Gets or sets access Mode of the resource association Possible values include: 'Enforced', 'Learning', 'Audit' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "accessMode")] + public string AccessMode {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProvisioningState.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProvisioningState.cs new file mode 100644 index 000000000000..e45bd3ee9ba7 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationProvisioningState.cs @@ -0,0 +1,22 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for NetworkSecurityPerimeterConfigurationProvisioningState. + /// + + + public static class NetworkSecurityPerimeterConfigurationProvisioningState + { + public const string Accepted = "Accepted"; + public const string Succeeded = "Succeeded"; + public const string Failed = "Failed"; + public const string Deleting = "Deleting"; + public const string Canceled = "Canceled"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationsReconcileHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationsReconcileHeaders.cs new file mode 100644 index 000000000000..69813b8775cc --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NetworkSecurityPerimeterConfigurationsReconcileHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class NetworkSecurityPerimeterConfigurationsReconcileHeaders + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationsReconcileHeaders class. + /// + public NetworkSecurityPerimeterConfigurationsReconcileHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationsReconcileHeaders class. + /// + + /// + /// + + /// + /// + public NetworkSecurityPerimeterConfigurationsReconcileHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRule.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRule.cs new file mode 100644 index 000000000000..23d3a2848590 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRule.cs @@ -0,0 +1,58 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Information of Access Rule in Network Security Perimeter profile + /// + public partial class NspAccessRule + { + /// + /// Initializes a new instance of the NspAccessRule class. + /// + public NspAccessRule() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NspAccessRule class. + /// + + /// Name of the resource + /// + + /// Properties of Access Rule + /// + public NspAccessRule(string name = default(string), NspAccessRuleProperties properties = default(NspAccessRuleProperties)) + + { + this.Name = name; + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets name of the resource + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "name")] + public string Name {get; set; } + + /// + /// Gets properties of Access Rule + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public NspAccessRuleProperties Properties {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleDirection.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleDirection.cs new file mode 100644 index 000000000000..027a95beb7ae --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleDirection.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for NspAccessRuleDirection. + /// + + + public static class NspAccessRuleDirection + { + public const string Inbound = "Inbound"; + public const string Outbound = "Outbound"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleProperties.cs new file mode 100644 index 000000000000..ebee43d54599 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRuleProperties.cs @@ -0,0 +1,88 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of Access Rule + /// + public partial class NspAccessRuleProperties + { + /// + /// Initializes a new instance of the NspAccessRuleProperties class. + /// + public NspAccessRuleProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NspAccessRuleProperties class. + /// + + /// Direction of Access Rule + /// Possible values include: 'Inbound', 'Outbound' + + /// Address prefixes in the CIDR format for inbound rules + /// + + /// Subscriptions for inbound rules + /// + + /// NetworkSecurityPerimeters for inbound rules + /// + + /// FQDN for outbound rules + /// + public NspAccessRuleProperties(string direction = default(string), System.Collections.Generic.IList addressPrefixes = default(System.Collections.Generic.IList), System.Collections.Generic.IList subscriptions = default(System.Collections.Generic.IList), System.Collections.Generic.IList networkSecurityPerimeters = default(System.Collections.Generic.IList), System.Collections.Generic.IList fullyQualifiedDomainNames = default(System.Collections.Generic.IList)) + + { + this.Direction = direction; + this.AddressPrefixes = addressPrefixes; + this.Subscriptions = subscriptions; + this.NetworkSecurityPerimeters = networkSecurityPerimeters; + this.FullyQualifiedDomainNames = fullyQualifiedDomainNames; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets direction of Access Rule Possible values include: 'Inbound', 'Outbound' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "direction")] + public string Direction {get; set; } + + /// + /// Gets or sets address prefixes in the CIDR format for inbound rules + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "addressPrefixes")] + public System.Collections.Generic.IList AddressPrefixes {get; set; } + + /// + /// Gets or sets subscriptions for inbound rules + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "subscriptions")] + public System.Collections.Generic.IList Subscriptions {get; set; } + + /// + /// Gets networkSecurityPerimeters for inbound rules + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "networkSecurityPerimeters")] + public System.Collections.Generic.IList NetworkSecurityPerimeters {get; private set; } + + /// + /// Gets fQDN for outbound rules + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "fullyQualifiedDomainNames")] + public System.Collections.Generic.IList FullyQualifiedDomainNames {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRulePropertiesSubscriptionsItem.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRulePropertiesSubscriptionsItem.cs new file mode 100644 index 000000000000..e22d9105f369 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/NspAccessRulePropertiesSubscriptionsItem.cs @@ -0,0 +1,48 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Subscription for inbound rule + /// + public partial class NspAccessRulePropertiesSubscriptionsItem + { + /// + /// Initializes a new instance of the NspAccessRulePropertiesSubscriptionsItem class. + /// + public NspAccessRulePropertiesSubscriptionsItem() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the NspAccessRulePropertiesSubscriptionsItem class. + /// + + /// The ARM identifier of subscription + /// + public NspAccessRulePropertiesSubscriptionsItem(string id = default(string)) + + { + this.Id = id; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the ARM identifier of subscription + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "id")] + public string Id {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ObjectReplicationPolicy.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ObjectReplicationPolicy.cs index c3daa4c0b32a..a72e7221fff0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ObjectReplicationPolicy.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ObjectReplicationPolicy.cs @@ -12,7 +12,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// defined in one policy. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class ObjectReplicationPolicy : Resource + public partial class ObjectReplicationPolicy : ProxyResource { /// /// Initializes a new instance of the ObjectReplicationPolicy class. @@ -26,8 +26,8 @@ public ObjectReplicationPolicy() /// Initializes a new instance of the ObjectReplicationPolicy class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -37,6 +37,10 @@ public ObjectReplicationPolicy() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// A unique id for object replication policy. /// @@ -56,9 +60,9 @@ public ObjectReplicationPolicy() /// Optional. The object replication policy metrics feature options. /// - public ObjectReplicationPolicy(string id = default(string), string name = default(string), string type = default(string), string policyId = default(string), System.DateTime? enabledTime = default(System.DateTime?), string sourceAccount = default(string), string destinationAccount = default(string), System.Collections.Generic.IList rules = default(System.Collections.Generic.IList), ObjectReplicationPolicyPropertiesMetrics metrics = default(ObjectReplicationPolicyPropertiesMetrics)) + public ObjectReplicationPolicy(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string policyId = default(string), System.DateTime? enabledTime = default(System.DateTime?), string sourceAccount = default(string), string destinationAccount = default(string), System.Collections.Generic.IList rules = default(System.Collections.Generic.IList), ObjectReplicationPolicyPropertiesMetrics metrics = default(ObjectReplicationPolicyPropertiesMetrics)) - : base(id, name, type) + : base(id, name, type, systemData) { this.PolicyId = policyId; this.EnabledTime = enabledTime; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Page.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Page.cs index 278081c10dff..4768daebcfa5 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/Page.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Page.cs @@ -16,7 +16,7 @@ public class Page : Microsoft.Rest.Azure.IPage /// /// Gets the link to the next page. /// - [Newtonsoft.Json.JsonProperty("")] + [Newtonsoft.Json.JsonProperty("nextLink")] public System.String NextPageLink { get; private set; } [Newtonsoft.Json.JsonProperty("value")] diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Page1.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Page1.cs deleted file mode 100644 index 94e185ac216a..000000000000 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/Page1.cs +++ /dev/null @@ -1,43 +0,0 @@ -// 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. - -namespace Microsoft.Azure.Management.Storage.Models -{ - - /// - /// Defines a page in Azure responses. - /// - /// Type of the page content items - [Newtonsoft.Json.JsonObject] - public class Page1 : Microsoft.Rest.Azure.IPage - { - /// - /// Gets the link to the next page. - /// - [Newtonsoft.Json.JsonProperty("nextLink")] - public System.String NextPageLink { get; private set; } - - [Newtonsoft.Json.JsonProperty("value")] - private System.Collections.Generic.IList Items{ get; set; } - - /// - /// Returns an enumerator that iterates through the collection. - /// - /// A an enumerator that can be used to iterate through the collection. - public System.Collections.Generic.IEnumerator GetEnumerator() - { - return (Items == null) ? System.Linq.Enumerable.Empty().GetEnumerator() : Items.GetEnumerator(); - } - - /// - /// Returns an enumerator that iterates through the collection. - /// - /// A an enumerator that can be used to iterate through the collection. - System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() - { - return GetEnumerator(); - } - } -} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateEndpointConnection.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateEndpointConnection.cs index 962f3a4ee972..bcded951d8e9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateEndpointConnection.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateEndpointConnection.cs @@ -11,7 +11,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// The Private Endpoint Connection resource. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class PrivateEndpointConnection : Resource + public partial class PrivateEndpointConnection : ProxyResource { /// /// Initializes a new instance of the PrivateEndpointConnection class. @@ -25,8 +25,8 @@ public PrivateEndpointConnection() /// Initializes a new instance of the PrivateEndpointConnection class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public PrivateEndpointConnection() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// The resource of private end point. /// @@ -45,9 +49,9 @@ public PrivateEndpointConnection() /// The provisioning state of the private endpoint connection resource. /// Possible values include: 'Succeeded', 'Creating', 'Deleting', 'Failed' - public PrivateEndpointConnection(string id = default(string), string name = default(string), string type = default(string), PrivateEndpoint privateEndpoint = default(PrivateEndpoint), PrivateLinkServiceConnectionState privateLinkServiceConnectionState = default(PrivateLinkServiceConnectionState), string provisioningState = default(string)) + public PrivateEndpointConnection(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), PrivateEndpoint privateEndpoint = default(PrivateEndpoint), PrivateLinkServiceConnectionState privateLinkServiceConnectionState = default(PrivateLinkServiceConnectionState), string provisioningState = default(string)) - : base(id, name, type) + : base(id, name, type, systemData) { this.PrivateEndpoint = privateEndpoint; this.PrivateLinkServiceConnectionState = privateLinkServiceConnectionState; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateLinkResource.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateLinkResource.cs index 9c2ac045ed0f..f4f3298b6a8a 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateLinkResource.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/PrivateLinkResource.cs @@ -25,8 +25,8 @@ public PrivateLinkResource() /// Initializes a new instance of the PrivateLinkResource class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public PrivateLinkResource() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// The private link resource group id. /// @@ -44,9 +48,9 @@ public PrivateLinkResource() /// The private link resource Private link DNS zone name. /// - public PrivateLinkResource(string id = default(string), string name = default(string), string type = default(string), string groupId = default(string), System.Collections.Generic.IList requiredMembers = default(System.Collections.Generic.IList), System.Collections.Generic.IList requiredZoneNames = default(System.Collections.Generic.IList)) + public PrivateLinkResource(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string groupId = default(string), System.Collections.Generic.IList requiredMembers = default(System.Collections.Generic.IList), System.Collections.Generic.IList requiredZoneNames = default(System.Collections.Generic.IList)) - : base(id, name, type) + : base(id, name, type, systemData) { this.GroupId = groupId; this.RequiredMembers = requiredMembers; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssue.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssue.cs new file mode 100644 index 000000000000..9b5bbd9f33ee --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssue.cs @@ -0,0 +1,59 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Describes provisioning issue for given + /// NetworkSecurityPerimeterConfiguration + /// + public partial class ProvisioningIssue + { + /// + /// Initializes a new instance of the ProvisioningIssue class. + /// + public ProvisioningIssue() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ProvisioningIssue class. + /// + + /// Name of the issue + /// + + /// Properties of provisioning issue + /// + public ProvisioningIssue(string name = default(string), ProvisioningIssueProperties properties = default(ProvisioningIssueProperties)) + + { + this.Name = name; + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets name of the issue + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "name")] + public string Name {get; set; } + + /// + /// Gets properties of provisioning issue + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public ProvisioningIssueProperties Properties {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssueProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssueProperties.cs new file mode 100644 index 000000000000..51b788a606c0 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ProvisioningIssueProperties.cs @@ -0,0 +1,68 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of provisioning issue + /// + public partial class ProvisioningIssueProperties + { + /// + /// Initializes a new instance of the ProvisioningIssueProperties class. + /// + public ProvisioningIssueProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the ProvisioningIssueProperties class. + /// + + /// Type of issue + /// Possible values include: 'Unknown', 'ConfigurationPropagationFailure' + + /// Severity of the issue. + /// Possible values include: 'Warning', 'Error' + + /// Description of the issue + /// + public ProvisioningIssueProperties(string issueType = default(string), string severity = default(string), string description = default(string)) + + { + this.IssueType = issueType; + this.Severity = severity; + this.Description = description; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets type of issue Possible values include: 'Unknown', 'ConfigurationPropagationFailure' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "issueType")] + public string IssueType {get; set; } + + /// + /// Gets or sets severity of the issue. Possible values include: 'Warning', 'Error' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "severity")] + public string Severity {get; set; } + + /// + /// Gets or sets description of the issue + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "description")] + public string Description {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ProxyResource.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ProxyResource.cs index 95ee83a7bf6d..ce1d55c789bd 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/ProxyResource.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ProxyResource.cs @@ -29,8 +29,8 @@ public ProxyResource() /// Initializes a new instance of the ProxyResource class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -39,9 +39,13 @@ public ProxyResource() /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or /// "Microsoft.Storage/storageAccounts" /// - public ProxyResource(string id = default(string), string name = default(string), string type = default(string)) - : base(id, name, type) + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + public ProxyResource(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) + + : base(id, name, type, systemData) { CustomInit(); } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/QueueProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueProperties.cs new file mode 100644 index 000000000000..8b6b183d2334 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueProperties.cs @@ -0,0 +1,59 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class QueueProperties + { + /// + /// Initializes a new instance of the QueueProperties class. + /// + public QueueProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the QueueProperties class. + /// + + /// A name-value pair that represents queue metadata. + /// + + /// 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. + /// + public QueueProperties(System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? approximateMessageCount = default(int?)) + + { + this.Metadata = metadata; + this.ApproximateMessageCount = approximateMessageCount; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets a name-value pair that represents queue metadata. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "metadata")] + public System.Collections.Generic.IDictionary Metadata {get; set; } + + /// + /// Gets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "approximateMessageCount")] + public int? ApproximateMessageCount {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServiceProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServiceProperties.cs new file mode 100644 index 000000000000..f570bfd967ce --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServiceProperties.cs @@ -0,0 +1,71 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account’s Queue service. + /// + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class QueueServiceProperties : ProxyResource + { + /// + /// Initializes a new instance of the QueueServiceProperties class. + /// + public QueueServiceProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the QueueServiceProperties class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// 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. + /// + public QueueServiceProperties(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), CorsRules cors = default(CorsRules)) + + : base(id, name, type, systemData) + { + this.Cors = cors; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.cors")] + public CorsRules Cors {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServicePropertiesProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServicePropertiesProperties.cs new file mode 100644 index 000000000000..88f9b7f8c316 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/QueueServicePropertiesProperties.cs @@ -0,0 +1,54 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account’s Queue service. + /// + public partial class QueueServicePropertiesProperties + { + /// + /// Initializes a new instance of the QueueServicePropertiesProperties class. + /// + public QueueServicePropertiesProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the QueueServicePropertiesProperties class. + /// + + /// 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. + /// + public QueueServicePropertiesProperties(CorsRules cors = default(CorsRules)) + + { + this.Cors = cors; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "cors")] + public CorsRules Cors {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Resource.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Resource.cs index 4e5cc5fc47bb..dab4bfacbff1 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/Resource.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Resource.cs @@ -29,8 +29,8 @@ public Resource() /// Initializes a new instance of the Resource class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -39,12 +39,17 @@ public Resource() /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or /// "Microsoft.Storage/storageAccounts" /// - public Resource(string id = default(string), string name = default(string), string type = default(string)) + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + public Resource(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) { this.Id = id; this.Name = name; this.Type = type; + this.SystemData = systemData; CustomInit(); } @@ -55,8 +60,8 @@ public Resource() /// - /// Gets fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Gets fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// [Newtonsoft.Json.JsonProperty(PropertyName = "id")] public string Id {get; private set; } @@ -73,5 +78,12 @@ public Resource() /// [Newtonsoft.Json.JsonProperty(PropertyName = "type")] public string Type {get; private set; } + + /// + /// Gets azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "systemData")] + public SystemData SystemData {get; private set; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/ResourceAssociationAccessMode.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/ResourceAssociationAccessMode.cs new file mode 100644 index 000000000000..584745d35eb6 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/ResourceAssociationAccessMode.cs @@ -0,0 +1,20 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for ResourceAssociationAccessMode. + /// + + + public static class ResourceAssociationAccessMode + { + public const string Enforced = "Enforced"; + public const string Learning = "Learning"; + public const string Audit = "Audit"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/RunResult.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/RunResult.cs new file mode 100644 index 000000000000..c61701d89746 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/RunResult.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for RunResult. + /// + + + public static class RunResult + { + public const string Succeeded = "Succeeded"; + public const string Failed = "Failed"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/RunStatusEnum.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/RunStatusEnum.cs new file mode 100644 index 000000000000..ccb40182165c --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/RunStatusEnum.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for RunStatusEnum. + /// + + + public static class RunStatusEnum + { + public const string InProgress = "InProgress"; + public const string Finished = "Finished"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Severity.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Severity.cs new file mode 100644 index 000000000000..2f64adb00ffa --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Severity.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for Severity. + /// + + + public static class Severity + { + public const string Warning = "Warning"; + public const string Error = "Error"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccount.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccount.cs index 7f92db235915..fa918a7d2e10 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccount.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccount.cs @@ -25,8 +25,8 @@ public StorageAccount() /// Initializes a new instance of the StorageAccount class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -36,6 +36,10 @@ public StorageAccount() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource tags. /// @@ -55,8 +59,7 @@ public StorageAccount() /// The extendedLocation of the resource. /// - /// Optional. Gets or sets the pinned logical availability zone for the storage - /// account. + /// The availability zones. /// /// Optional. Gets or sets the zonal placement details for the storage account. @@ -228,9 +231,9 @@ public StorageAccount() /// If customer initiated account migration is in progress, the value will be /// true else it will be null. /// - public StorageAccount(string location, string id = default(string), string name = default(string), string type = default(string), System.Collections.Generic.IDictionary tags = default(System.Collections.Generic.IDictionary), Sku sku = default(Sku), string kind = default(string), Identity identity = default(Identity), ExtendedLocation extendedLocation = default(ExtendedLocation), System.Collections.Generic.IList zones = default(System.Collections.Generic.IList), Placement placement = default(Placement), ProvisioningState? provisioningState = default(ProvisioningState?), CustomDomain customDomain = default(CustomDomain), SasPolicy sasPolicy = default(SasPolicy), KeyPolicy keyPolicy = default(KeyPolicy), Encryption encryption = default(Encryption), AccessTier? accessTier = default(AccessTier?), RoutingPreference routingPreference = default(RoutingPreference), Endpoints primaryEndpoints = default(Endpoints), string primaryLocation = default(string), AccountStatus? statusOfPrimary = default(AccountStatus?), System.DateTime? lastGeoFailoverTime = default(System.DateTime?), string secondaryLocation = default(string), AccountStatus? statusOfSecondary = default(AccountStatus?), System.DateTime? creationTime = default(System.DateTime?), KeyCreationTime keyCreationTime = default(KeyCreationTime), Endpoints secondaryEndpoints = default(Endpoints), AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication = default(AzureFilesIdentityBasedAuthentication), bool? enableHttpsTrafficOnly = default(bool?), NetworkRuleSet networkRuleSet = default(NetworkRuleSet), bool? isSftpEnabled = default(bool?), bool? isLocalUserEnabled = default(bool?), bool? enableExtendedGroups = default(bool?), bool? isHnsEnabled = default(bool?), GeoReplicationStats geoReplicationStats = default(GeoReplicationStats), bool? failoverInProgress = default(bool?), string largeFileSharesState = default(string), System.Collections.Generic.IList privateEndpointConnections = default(System.Collections.Generic.IList), DualStackEndpointPreference dualStackEndpointPreference = default(DualStackEndpointPreference), BlobRestoreStatus blobRestoreStatus = default(BlobRestoreStatus), bool? allowBlobPublicAccess = default(bool?), string minimumTlsVersion = default(string), bool? allowSharedKeyAccess = default(bool?), bool? enableNfsV3 = default(bool?), bool? allowCrossTenantReplication = default(bool?), bool? defaultToOAuthAuthentication = default(bool?), string publicNetworkAccess = default(string), ImmutableStorageAccount immutableStorageWithVersioning = default(ImmutableStorageAccount), string allowedCopyScope = default(string), StorageAccountSkuConversionStatus storageAccountSkuConversionStatus = default(StorageAccountSkuConversionStatus), string dnsEndpointType = default(string), bool? isSkuConversionBlocked = default(bool?), bool? accountMigrationInProgress = default(bool?)) + public StorageAccount(string location, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.Collections.Generic.IDictionary tags = default(System.Collections.Generic.IDictionary), Sku sku = default(Sku), string kind = default(string), Identity identity = default(Identity), ExtendedLocation extendedLocation = default(ExtendedLocation), System.Collections.Generic.IList zones = default(System.Collections.Generic.IList), Placement placement = default(Placement), ProvisioningState? provisioningState = default(ProvisioningState?), CustomDomain customDomain = default(CustomDomain), SasPolicy sasPolicy = default(SasPolicy), KeyPolicy keyPolicy = default(KeyPolicy), Encryption encryption = default(Encryption), AccessTier? accessTier = default(AccessTier?), RoutingPreference routingPreference = default(RoutingPreference), Endpoints primaryEndpoints = default(Endpoints), string primaryLocation = default(string), AccountStatus? statusOfPrimary = default(AccountStatus?), System.DateTime? lastGeoFailoverTime = default(System.DateTime?), string secondaryLocation = default(string), AccountStatus? statusOfSecondary = default(AccountStatus?), System.DateTime? creationTime = default(System.DateTime?), KeyCreationTime keyCreationTime = default(KeyCreationTime), Endpoints secondaryEndpoints = default(Endpoints), AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication = default(AzureFilesIdentityBasedAuthentication), bool? enableHttpsTrafficOnly = default(bool?), NetworkRuleSet networkRuleSet = default(NetworkRuleSet), bool? isSftpEnabled = default(bool?), bool? isLocalUserEnabled = default(bool?), bool? enableExtendedGroups = default(bool?), bool? isHnsEnabled = default(bool?), GeoReplicationStats geoReplicationStats = default(GeoReplicationStats), bool? failoverInProgress = default(bool?), string largeFileSharesState = default(string), System.Collections.Generic.IList privateEndpointConnections = default(System.Collections.Generic.IList), DualStackEndpointPreference dualStackEndpointPreference = default(DualStackEndpointPreference), BlobRestoreStatus blobRestoreStatus = default(BlobRestoreStatus), bool? allowBlobPublicAccess = default(bool?), string minimumTlsVersion = default(string), bool? allowSharedKeyAccess = default(bool?), bool? enableNfsV3 = default(bool?), bool? allowCrossTenantReplication = default(bool?), bool? defaultToOAuthAuthentication = default(bool?), string publicNetworkAccess = default(string), ImmutableStorageAccount immutableStorageWithVersioning = default(ImmutableStorageAccount), string allowedCopyScope = default(string), StorageAccountSkuConversionStatus storageAccountSkuConversionStatus = default(StorageAccountSkuConversionStatus), string dnsEndpointType = default(string), bool? isSkuConversionBlocked = default(bool?), bool? accountMigrationInProgress = default(bool?)) - : base(location, id, name, type, tags) + : base(location, id, name, type, systemData, tags) { this.Sku = sku; this.Kind = kind; @@ -314,8 +317,7 @@ public StorageAccount() public ExtendedLocation ExtendedLocation {get; set; } /// - /// Gets or sets optional. Gets or sets the pinned logical availability zone - /// for the storage account. + /// Gets or sets the availability zones. /// [Newtonsoft.Json.JsonProperty(PropertyName = "zones")] public System.Collections.Generic.IList Zones {get; set; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Type.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountCheckNameAvailabilityParametersType.cs similarity index 51% rename from src/Storage/Storage.Management.Sdk/Generated/Models/Type.cs rename to src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountCheckNameAvailabilityParametersType.cs index eee4f4cd748d..e0a224c88595 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/Type.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountCheckNameAvailabilityParametersType.cs @@ -7,37 +7,37 @@ namespace Microsoft.Azure.Management.Storage.Models { /// - /// Defines values for Type. + /// Defines values for StorageAccountCheckNameAvailabilityParametersType. /// [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] - public enum Type + public enum StorageAccountCheckNameAvailabilityParametersType { [System.Runtime.Serialization.EnumMember(Value = "Microsoft.Storage/storageAccounts")] MicrosoftStorageStorageAccounts } - internal static class TypeEnumExtension + internal static class StorageAccountCheckNameAvailabilityParametersTypeEnumExtension { - internal static string ToSerializedValue(this Type? value) + internal static string ToSerializedValue(this StorageAccountCheckNameAvailabilityParametersType? value) { - return value == null ? null : ((Type)value).ToSerializedValue(); + return value == null ? null : ((StorageAccountCheckNameAvailabilityParametersType)value).ToSerializedValue(); } - internal static string ToSerializedValue(this Type value) + internal static string ToSerializedValue(this StorageAccountCheckNameAvailabilityParametersType value) { switch( value ) { - case Type.MicrosoftStorageStorageAccounts: + case StorageAccountCheckNameAvailabilityParametersType.MicrosoftStorageStorageAccounts: return "Microsoft.Storage/storageAccounts"; } return null; } - internal static Type? ParseType(this string value) + internal static StorageAccountCheckNameAvailabilityParametersType? ParseStorageAccountCheckNameAvailabilityParametersType(this string value) { switch( value ) { case "Microsoft.Storage/storageAccounts": - return Type.MicrosoftStorageStorageAccounts; + return StorageAccountCheckNameAvailabilityParametersType.MicrosoftStorageStorageAccounts; } return null; } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigration.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigration.cs index b44ba2268c3e..98eb7efdbdb2 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigration.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigration.cs @@ -12,7 +12,7 @@ namespace Microsoft.Azure.Management.Storage.Models /// account migration in order to update its current SKU or region. /// [Microsoft.Rest.Serialization.JsonTransformation] - public partial class StorageAccountMigration + public partial class StorageAccountMigration : ProxyResource { /// /// Initializes a new instance of the StorageAccountMigration class. @@ -26,13 +26,19 @@ public StorageAccountMigration() /// Initializes a new instance of the StorageAccountMigration class. /// - /// Migration Resource Id + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// - /// current value is 'default' for customer initiated migration + /// The name of the resource /// - /// SrpAccountMigrationType in ARM contract which is 'accountMigrations' + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. /// /// Current status of migration @@ -50,12 +56,10 @@ public StorageAccountMigration() /// Reason for migration failure /// - public StorageAccountMigration(string targetSkuName, string id = default(string), string name = default(string), string type = default(string), string migrationStatus = default(string), string migrationFailedReason = default(string), string migrationFailedDetailedReason = default(string)) + public StorageAccountMigration(string targetSkuName, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string migrationStatus = default(string), string migrationFailedReason = default(string), string migrationFailedDetailedReason = default(string)) + : base(id, name, type, systemData) { - this.Id = id; - this.Name = name; - this.Type = type; this.MigrationStatus = migrationStatus; this.TargetSkuName = targetSkuName; this.MigrationFailedReason = migrationFailedReason; @@ -69,25 +73,6 @@ public StorageAccountMigration() partial void CustomInit(); - /// - /// Gets migration Resource Id - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "id")] - public string Id {get; private set; } - - /// - /// Gets or sets current value is 'default' for customer initiated migration - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "name")] - public string Name {get; set; } - - /// - /// Gets or sets srpAccountMigrationType in ARM contract which is - /// 'accountMigrations' - /// - [Newtonsoft.Json.JsonProperty(PropertyName = "type")] - public string Type {get; set; } - /// /// Gets current status of migration Possible values include: 'Invalid', 'SubmittedForConversion', 'InProgress', 'Complete', 'Failed' /// @@ -127,9 +112,6 @@ public virtual void Validate() - - - } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigrationProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigrationProperties.cs new file mode 100644 index 000000000000..ed11465801a4 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountMigrationProperties.cs @@ -0,0 +1,99 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account's ongoing or enqueued migration. + /// + public partial class StorageAccountMigrationProperties + { + /// + /// Initializes a new instance of the StorageAccountMigrationProperties class. + /// + public StorageAccountMigrationProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountMigrationProperties class. + /// + + /// Target sku name for the account + /// Possible values include: 'Standard_LRS', 'Standard_GRS', 'Standard_RAGRS', + /// 'Standard_ZRS', 'Premium_LRS', 'Premium_ZRS', 'Standard_GZRS', + /// 'Standard_RAGZRS', 'StandardV2_LRS', 'StandardV2_GRS', 'StandardV2_ZRS', + /// 'StandardV2_GZRS', 'PremiumV2_LRS', 'PremiumV2_ZRS' + + /// Current status of migration + /// Possible values include: 'Invalid', 'SubmittedForConversion', 'InProgress', + /// 'Complete', 'Failed' + + /// Error code for migration failure + /// + + /// Reason for migration failure + /// + public StorageAccountMigrationProperties(string targetSkuName, string migrationStatus = default(string), string migrationFailedReason = default(string), string migrationFailedDetailedReason = default(string)) + + { + this.TargetSkuName = targetSkuName; + this.MigrationStatus = migrationStatus; + this.MigrationFailedReason = migrationFailedReason; + this.MigrationFailedDetailedReason = migrationFailedDetailedReason; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets target sku name for the account Possible values include: 'Standard_LRS', 'Standard_GRS', 'Standard_RAGRS', 'Standard_ZRS', 'Premium_LRS', 'Premium_ZRS', 'Standard_GZRS', 'Standard_RAGZRS', 'StandardV2_LRS', 'StandardV2_GRS', 'StandardV2_ZRS', 'StandardV2_GZRS', 'PremiumV2_LRS', 'PremiumV2_ZRS' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "targetSkuName")] + public string TargetSkuName {get; set; } + + /// + /// Gets current status of migration Possible values include: 'Invalid', 'SubmittedForConversion', 'InProgress', 'Complete', 'Failed' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "migrationStatus")] + public string MigrationStatus {get; private set; } + + /// + /// Gets error code for migration failure + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "migrationFailedReason")] + public string MigrationFailedReason {get; private set; } + + /// + /// Gets reason for migration failure + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "migrationFailedDetailedReason")] + public string MigrationFailedDetailedReason {get; private set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.TargetSkuName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "TargetSkuName"); + } + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsAbortHierarchicalNamespaceMigrationHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsAbortHierarchicalNamespaceMigrationHeaders.cs new file mode 100644 index 000000000000..d30c9f2daeb2 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsAbortHierarchicalNamespaceMigrationHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageAccountsAbortHierarchicalNamespaceMigrationHeaders + { + /// + /// Initializes a new instance of the StorageAccountsAbortHierarchicalNamespaceMigrationHeaders class. + /// + public StorageAccountsAbortHierarchicalNamespaceMigrationHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountsAbortHierarchicalNamespaceMigrationHeaders class. + /// + + /// + /// + + /// + /// + public StorageAccountsAbortHierarchicalNamespaceMigrationHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCreateHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCreateHeaders.cs new file mode 100644 index 000000000000..86ec10ca51b6 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCreateHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageAccountsCreateHeaders + { + /// + /// Initializes a new instance of the StorageAccountsCreateHeaders class. + /// + public StorageAccountsCreateHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountsCreateHeaders class. + /// + + /// + /// + + /// + /// + public StorageAccountsCreateHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCustomerInitiatedMigrationHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCustomerInitiatedMigrationHeaders.cs index ad64cb5578b5..af3b98119ec6 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCustomerInitiatedMigrationHeaders.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsCustomerInitiatedMigrationHeaders.cs @@ -23,10 +23,14 @@ public StorageAccountsCustomerInitiatedMigrationHeaders() /// /// - public StorageAccountsCustomerInitiatedMigrationHeaders(string location = default(string)) + + /// + /// + public StorageAccountsCustomerInitiatedMigrationHeaders(string location = default(string), int? retryAfter = default(int?)) { this.Location = location; + this.RetryAfter = retryAfter; CustomInit(); } @@ -41,5 +45,11 @@ public StorageAccountsCustomerInitiatedMigrationHeaders() /// [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsFailoverHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsFailoverHeaders.cs new file mode 100644 index 000000000000..da598bf1f798 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsFailoverHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageAccountsFailoverHeaders + { + /// + /// Initializes a new instance of the StorageAccountsFailoverHeaders class. + /// + public StorageAccountsFailoverHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountsFailoverHeaders class. + /// + + /// + /// + + /// + /// + public StorageAccountsFailoverHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsHierarchicalNamespaceMigrationHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsHierarchicalNamespaceMigrationHeaders.cs new file mode 100644 index 000000000000..75ea2625d255 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsHierarchicalNamespaceMigrationHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageAccountsHierarchicalNamespaceMigrationHeaders + { + /// + /// Initializes a new instance of the StorageAccountsHierarchicalNamespaceMigrationHeaders class. + /// + public StorageAccountsHierarchicalNamespaceMigrationHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountsHierarchicalNamespaceMigrationHeaders class. + /// + + /// + /// + + /// + /// + public StorageAccountsHierarchicalNamespaceMigrationHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsRestoreBlobRangesHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsRestoreBlobRangesHeaders.cs new file mode 100644 index 000000000000..49f37f3f9d98 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageAccountsRestoreBlobRangesHeaders.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageAccountsRestoreBlobRangesHeaders + { + /// + /// Initializes a new instance of the StorageAccountsRestoreBlobRangesHeaders class. + /// + public StorageAccountsRestoreBlobRangesHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageAccountsRestoreBlobRangesHeaders class. + /// + + /// + /// + + /// + /// + public StorageAccountsRestoreBlobRangesHeaders(string location = default(string), int? retryAfter = default(int?)) + + { + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageQueue.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageQueue.cs new file mode 100644 index 000000000000..dd7c3a94131a --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageQueue.cs @@ -0,0 +1,80 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Concrete proxy resource types can be created by aliasing this type using a + /// specific property type. + /// + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class StorageQueue : ProxyResource + { + /// + /// Initializes a new instance of the StorageQueue class. + /// + public StorageQueue() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageQueue class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// A name-value pair that represents queue metadata. + /// + + /// 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. + /// + public StorageQueue(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), int? approximateMessageCount = default(int?)) + + : base(id, name, type, systemData) + { + this.Metadata = metadata; + this.ApproximateMessageCount = approximateMessageCount; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets a name-value pair that represents queue metadata. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.metadata")] + public System.Collections.Generic.IDictionary Metadata {get; set; } + + /// + /// Gets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.approximateMessageCount")] + public int? ApproximateMessageCount {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignment.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignment.cs new file mode 100644 index 000000000000..db74a456e61f --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignment.cs @@ -0,0 +1,81 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The storage task assignment. + /// + public partial class StorageTaskAssignment : ProxyResource + { + /// + /// Initializes a new instance of the StorageTaskAssignment class. + /// + public StorageTaskAssignment() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignment class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// Properties of the storage task assignment. + /// + public StorageTaskAssignment(StorageTaskAssignmentProperties properties, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData)) + + : base(id, name, type, systemData) + { + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets properties of the storage task assignment. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public StorageTaskAssignmentProperties Properties {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Properties == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Properties"); + } + if (this.Properties != null) + { + this.Properties.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentExecutionContext.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentExecutionContext.cs new file mode 100644 index 000000000000..769c4d380715 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentExecutionContext.cs @@ -0,0 +1,76 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Execution context of the storage task assignment. + /// + public partial class StorageTaskAssignmentExecutionContext + { + /// + /// Initializes a new instance of the StorageTaskAssignmentExecutionContext class. + /// + public StorageTaskAssignmentExecutionContext() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentExecutionContext class. + /// + + /// Execution target of the storage task assignment + /// + + /// Execution trigger of the storage task assignment + /// + public StorageTaskAssignmentExecutionContext(ExecutionTrigger trigger, ExecutionTarget target = default(ExecutionTarget)) + + { + this.Target = target; + this.Trigger = trigger; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets execution target of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "target")] + public ExecutionTarget Target {get; set; } + + /// + /// Gets or sets execution trigger of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "trigger")] + public ExecutionTrigger Trigger {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Trigger == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Trigger"); + } + + if (this.Trigger != null) + { + this.Trigger.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProperties.cs new file mode 100644 index 000000000000..3a40d378765f --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProperties.cs @@ -0,0 +1,147 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of the storage task assignment. + /// + public partial class StorageTaskAssignmentProperties + { + /// + /// Initializes a new instance of the StorageTaskAssignmentProperties class. + /// + public StorageTaskAssignmentProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentProperties class. + /// + + /// Id of the corresponding storage task + /// + + /// Whether the storage task assignment is enabled or not + /// + + /// Text that describes the purpose of the storage task assignment + /// + + /// The storage task assignment execution context + /// + + /// The storage task assignment report + /// + + /// Represents the provisioning state of the storage task assignment. + /// Possible values include: 'ValidateSubscriptionQuotaBegin', + /// 'ValidateSubscriptionQuotaEnd', 'Accepted', 'Creating', 'Succeeded', + /// 'Deleting', 'Canceled', 'Failed' + + /// Run status of storage task assignment + /// + public StorageTaskAssignmentProperties(string taskId, bool enabled, string description, StorageTaskAssignmentExecutionContext executionContext, StorageTaskAssignmentReport report, string provisioningState = default(string), StorageTaskReportProperties runStatus = default(StorageTaskReportProperties)) + + { + this.TaskId = taskId; + this.Enabled = enabled; + this.Description = description; + this.ExecutionContext = executionContext; + this.Report = report; + this.ProvisioningState = provisioningState; + this.RunStatus = runStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets id of the corresponding storage task + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "taskId")] + public string TaskId {get; set; } + + /// + /// Gets or sets whether the storage task assignment is enabled or not + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "enabled")] + public bool Enabled {get; set; } + + /// + /// Gets or sets text that describes the purpose of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "description")] + public string Description {get; set; } + + /// + /// Gets or sets the storage task assignment execution context + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "executionContext")] + public StorageTaskAssignmentExecutionContext ExecutionContext {get; set; } + + /// + /// Gets or sets the storage task assignment report + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "report")] + public StorageTaskAssignmentReport Report {get; set; } + + /// + /// Gets represents the provisioning state of the storage task assignment. Possible values include: 'ValidateSubscriptionQuotaBegin', 'ValidateSubscriptionQuotaEnd', 'Accepted', 'Creating', 'Succeeded', 'Deleting', 'Canceled', 'Failed' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "provisioningState")] + public string ProvisioningState {get; private set; } + + /// + /// Gets or sets run status of storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runStatus")] + public StorageTaskReportProperties RunStatus {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.TaskId == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "TaskId"); + } + if (this.Description == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Description"); + } + if (this.ExecutionContext == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "ExecutionContext"); + } + if (this.Report == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Report"); + } + + + if (this.ExecutionContext != null) + { + this.ExecutionContext.Validate(); + } + if (this.Report != null) + { + this.Report.Validate(); + } + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProvisioningState.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProvisioningState.cs new file mode 100644 index 000000000000..27fdc04be469 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentProvisioningState.cs @@ -0,0 +1,25 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for StorageTaskAssignmentProvisioningState. + /// + + + public static class StorageTaskAssignmentProvisioningState + { + public const string ValidateSubscriptionQuotaBegin = "ValidateSubscriptionQuotaBegin"; + public const string ValidateSubscriptionQuotaEnd = "ValidateSubscriptionQuotaEnd"; + public const string Accepted = "Accepted"; + public const string Creating = "Creating"; + public const string Succeeded = "Succeeded"; + public const string Deleting = "Deleting"; + public const string Canceled = "Canceled"; + public const string Failed = "Failed"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentReport.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentReport.cs new file mode 100644 index 000000000000..d34c83a8755b --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentReport.cs @@ -0,0 +1,63 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The storage task assignment report + /// + public partial class StorageTaskAssignmentReport + { + /// + /// Initializes a new instance of the StorageTaskAssignmentReport class. + /// + public StorageTaskAssignmentReport() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentReport class. + /// + + /// The container prefix for the location of storage task assignment report + /// + public StorageTaskAssignmentReport(string prefix) + + { + this.Prefix = prefix; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the container prefix for the location of storage task + /// assignment report + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "prefix")] + public string Prefix {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Prefix == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Prefix"); + } + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateExecutionContext.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateExecutionContext.cs new file mode 100644 index 000000000000..edccc7ed0e49 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateExecutionContext.cs @@ -0,0 +1,72 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Execution context of the storage task assignment update. + /// + public partial class StorageTaskAssignmentUpdateExecutionContext + { + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateExecutionContext class. + /// + public StorageTaskAssignmentUpdateExecutionContext() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateExecutionContext class. + /// + + /// Execution target of the storage task assignment + /// + + /// Execution trigger of the storage task assignment + /// + public StorageTaskAssignmentUpdateExecutionContext(ExecutionTarget target = default(ExecutionTarget), ExecutionTriggerUpdate trigger = default(ExecutionTriggerUpdate)) + + { + this.Target = target; + this.Trigger = trigger; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets execution target of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "target")] + public ExecutionTarget Target {get; set; } + + /// + /// Gets or sets execution trigger of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "trigger")] + public ExecutionTriggerUpdate Trigger {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + + if (this.Trigger != null) + { + this.Trigger.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateParameters.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateParameters.cs new file mode 100644 index 000000000000..efd7ae808b0d --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateParameters.cs @@ -0,0 +1,61 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Parameters of the storage task assignment update request + /// + public partial class StorageTaskAssignmentUpdateParameters + { + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateParameters class. + /// + public StorageTaskAssignmentUpdateParameters() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateParameters class. + /// + + /// Properties of the storage task assignment. + /// + public StorageTaskAssignmentUpdateParameters(StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties)) + + { + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets properties of the storage task assignment. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public StorageTaskAssignmentUpdateProperties Properties {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Properties != null) + { + this.Properties.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateProperties.cs new file mode 100644 index 000000000000..3342f41c9290 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateProperties.cs @@ -0,0 +1,128 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of the storage task update assignment. + /// + public partial class StorageTaskAssignmentUpdateProperties + { + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateProperties class. + /// + public StorageTaskAssignmentUpdateProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateProperties class. + /// + + /// Id of the corresponding storage task + /// + + /// Whether the storage task assignment is enabled or not + /// + + /// Text that describes the purpose of the storage task assignment + /// + + /// The storage task assignment execution context + /// + + /// The storage task assignment report + /// + + /// Represents the provisioning state of the storage task assignment. + /// Possible values include: 'ValidateSubscriptionQuotaBegin', + /// 'ValidateSubscriptionQuotaEnd', 'Accepted', 'Creating', 'Succeeded', + /// 'Deleting', 'Canceled', 'Failed' + + /// Run status of storage task assignment + /// + public StorageTaskAssignmentUpdateProperties(string taskId = default(string), bool? enabled = default(bool?), string description = default(string), StorageTaskAssignmentUpdateExecutionContext executionContext = default(StorageTaskAssignmentUpdateExecutionContext), StorageTaskAssignmentUpdateReport report = default(StorageTaskAssignmentUpdateReport), string provisioningState = default(string), StorageTaskReportProperties runStatus = default(StorageTaskReportProperties)) + + { + this.TaskId = taskId; + this.Enabled = enabled; + this.Description = description; + this.ExecutionContext = executionContext; + this.Report = report; + this.ProvisioningState = provisioningState; + this.RunStatus = runStatus; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets id of the corresponding storage task + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "taskId")] + public string TaskId {get; private set; } + + /// + /// Gets or sets whether the storage task assignment is enabled or not + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "enabled")] + public bool? Enabled {get; set; } + + /// + /// Gets or sets text that describes the purpose of the storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "description")] + public string Description {get; set; } + + /// + /// Gets or sets the storage task assignment execution context + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "executionContext")] + public StorageTaskAssignmentUpdateExecutionContext ExecutionContext {get; set; } + + /// + /// Gets or sets the storage task assignment report + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "report")] + public StorageTaskAssignmentUpdateReport Report {get; set; } + + /// + /// Gets represents the provisioning state of the storage task assignment. Possible values include: 'ValidateSubscriptionQuotaBegin', 'ValidateSubscriptionQuotaEnd', 'Accepted', 'Creating', 'Succeeded', 'Deleting', 'Canceled', 'Failed' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "provisioningState")] + public string ProvisioningState {get; private set; } + + /// + /// Gets or sets run status of storage task assignment + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runStatus")] + public StorageTaskReportProperties RunStatus {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + + + if (this.ExecutionContext != null) + { + this.ExecutionContext.Validate(); + } + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateReport.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateReport.cs new file mode 100644 index 000000000000..8b300948e113 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentUpdateReport.cs @@ -0,0 +1,48 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The storage task assignment report + /// + public partial class StorageTaskAssignmentUpdateReport + { + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateReport class. + /// + public StorageTaskAssignmentUpdateReport() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentUpdateReport class. + /// + + /// The prefix of the storage task assignment report + /// + public StorageTaskAssignmentUpdateReport(string prefix = default(string)) + + { + this.Prefix = prefix; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets the prefix of the storage task assignment report + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "prefix")] + public string Prefix {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsCreateHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsCreateHeaders.cs new file mode 100644 index 000000000000..c1f7911b2154 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsCreateHeaders.cs @@ -0,0 +1,65 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageTaskAssignmentsCreateHeaders + { + /// + /// Initializes a new instance of the StorageTaskAssignmentsCreateHeaders class. + /// + public StorageTaskAssignmentsCreateHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentsCreateHeaders class. + /// + + /// + /// + + /// + /// + + /// + /// + public StorageTaskAssignmentsCreateHeaders(int? retryAfter = default(int?), string azureAsyncOperation = default(string), string location = default(string)) + + { + this.RetryAfter = retryAfter; + this.AzureAsyncOperation = azureAsyncOperation; + this.Location = location; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Azure-AsyncOperation")] + public string AzureAsyncOperation {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsDeleteHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsDeleteHeaders.cs new file mode 100644 index 000000000000..5baecb609997 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsDeleteHeaders.cs @@ -0,0 +1,65 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageTaskAssignmentsDeleteHeaders + { + /// + /// Initializes a new instance of the StorageTaskAssignmentsDeleteHeaders class. + /// + public StorageTaskAssignmentsDeleteHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentsDeleteHeaders class. + /// + + /// + /// + + /// + /// + + /// + /// + public StorageTaskAssignmentsDeleteHeaders(string azureAsyncOperation = default(string), string location = default(string), int? retryAfter = default(int?)) + + { + this.AzureAsyncOperation = azureAsyncOperation; + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Azure-AsyncOperation")] + public string AzureAsyncOperation {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsUpdateHeaders.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsUpdateHeaders.cs new file mode 100644 index 000000000000..bfadd39e0bbe --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskAssignmentsUpdateHeaders.cs @@ -0,0 +1,65 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class StorageTaskAssignmentsUpdateHeaders + { + /// + /// Initializes a new instance of the StorageTaskAssignmentsUpdateHeaders class. + /// + public StorageTaskAssignmentsUpdateHeaders() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskAssignmentsUpdateHeaders class. + /// + + /// + /// + + /// + /// + + /// + /// + public StorageTaskAssignmentsUpdateHeaders(string azureAsyncOperation = default(string), string location = default(string), int? retryAfter = default(int?)) + + { + this.AzureAsyncOperation = azureAsyncOperation; + this.Location = location; + this.RetryAfter = retryAfter; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Azure-AsyncOperation")] + public string AzureAsyncOperation {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Location")] + public string Location {get; set; } + + /// + /// Gets or sets + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "Retry-After")] + public int? RetryAfter {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportInstance.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportInstance.cs new file mode 100644 index 000000000000..ac8626a3a873 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportInstance.cs @@ -0,0 +1,64 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Storage Tasks run report instance + /// + public partial class StorageTaskReportInstance : ProxyResource + { + /// + /// Initializes a new instance of the StorageTaskReportInstance class. + /// + public StorageTaskReportInstance() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskReportInstance class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// Storage task execution report for a run instance. + /// + public StorageTaskReportInstance(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), StorageTaskReportProperties properties = default(StorageTaskReportProperties)) + + : base(id, name, type, systemData) + { + this.Properties = properties; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets storage task execution report for a run instance. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties")] + public StorageTaskReportProperties Properties {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportProperties.cs new file mode 100644 index 000000000000..fcd0703f4881 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/StorageTaskReportProperties.cs @@ -0,0 +1,226 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Storage task execution report for a run instance. + /// + public partial class StorageTaskReportProperties + { + /// + /// Initializes a new instance of the StorageTaskReportProperties class. + /// + public StorageTaskReportProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the StorageTaskReportProperties class. + /// + + /// Represents the Storage Task Assignment Id associated with the storage task + /// that provided an execution context. + /// + + /// Represents the Storage Account Id where the storage task definition was + /// applied and executed. + /// + + /// Start time of the run instance. Filter options such as startTime gt + /// '2023-06-26T20:51:24.4494016Z' and other comparison operators can be used + /// as described for DateTime properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// End time of the run instance. Filter options such as startTime gt + /// '2023-06-26T20:51:24.4494016Z' and other comparison operators can be used + /// as described for DateTime properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// Total number of objects that meet the condition as defined in the storage + /// task assignment execution context. Filter options such as + /// objectsTargetedCount gt 50 and other comparison operators can be used as + /// described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// Total number of objects that meet the storage tasks condition and were + /// operated upon. Filter options such as objectsOperatedOnCount ge 100 and + /// other comparison operators can be used as described for Numerical + /// properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// Total number of objects where task operation failed when was attempted. + /// Filter options such as objectFailedCount eq 0 and other comparison + /// operators can be used as described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// Total number of objects where task operation succeeded when was + /// attempted.Filter options such as objectsSucceededCount gt 150 and other + /// comparison operators can be used as described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + + /// Well known Azure Storage error code that represents the error encountered + /// during execution of the run instance. + /// + + /// Represents the status of the execution. + /// Possible values include: 'InProgress', 'Finished' + + /// Full path to the verbose report stored in the reporting container as + /// specified in the assignment execution context for the storage account. + /// + + /// Storage Task Arm Id. + /// + + /// Storage Task Version + /// + + /// Represents the overall result of the execution for the run instance + /// Possible values include: 'Succeeded', 'Failed' + public StorageTaskReportProperties(string taskAssignmentId = default(string), string storageAccountId = default(string), string startTime = default(string), string finishTime = default(string), string objectsTargetedCount = default(string), string objectsOperatedOnCount = default(string), string objectFailedCount = default(string), string objectsSucceededCount = default(string), string runStatusError = default(string), string runStatusEnum = default(string), string summaryReportPath = default(string), string taskId = default(string), string taskVersion = default(string), string runResult = default(string)) + + { + this.TaskAssignmentId = taskAssignmentId; + this.StorageAccountId = storageAccountId; + this.StartTime = startTime; + this.FinishTime = finishTime; + this.ObjectsTargetedCount = objectsTargetedCount; + this.ObjectsOperatedOnCount = objectsOperatedOnCount; + this.ObjectFailedCount = objectFailedCount; + this.ObjectsSucceededCount = objectsSucceededCount; + this.RunStatusError = runStatusError; + this.RunStatusEnum = runStatusEnum; + this.SummaryReportPath = summaryReportPath; + this.TaskId = taskId; + this.TaskVersion = taskVersion; + this.RunResult = runResult; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets represents the Storage Task Assignment Id associated with the storage + /// task that provided an execution context. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "taskAssignmentId")] + public string TaskAssignmentId {get; private set; } + + /// + /// Gets represents the Storage Account Id where the storage task definition + /// was applied and executed. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "storageAccountId")] + public string StorageAccountId {get; private set; } + + /// + /// Gets start time of the run instance. Filter options such as startTime gt + /// '2023-06-26T20:51:24.4494016Z' and other comparison operators can be used + /// as described for DateTime properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startTime")] + public string StartTime {get; private set; } + + /// + /// Gets end time of the run instance. Filter options such as startTime gt + /// '2023-06-26T20:51:24.4494016Z' and other comparison operators can be used + /// as described for DateTime properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "finishTime")] + public string FinishTime {get; private set; } + + /// + /// Gets total number of objects that meet the condition as defined in the + /// storage task assignment execution context. Filter options such as + /// objectsTargetedCount gt 50 and other comparison operators can be used as + /// described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "objectsTargetedCount")] + public string ObjectsTargetedCount {get; private set; } + + /// + /// Gets total number of objects that meet the storage tasks condition and were + /// operated upon. Filter options such as objectsOperatedOnCount ge 100 and + /// other comparison operators can be used as described for Numerical + /// properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "objectsOperatedOnCount")] + public string ObjectsOperatedOnCount {get; private set; } + + /// + /// Gets total number of objects where task operation failed when was + /// attempted. Filter options such as objectFailedCount eq 0 and other + /// comparison operators can be used as described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "objectFailedCount")] + public string ObjectFailedCount {get; private set; } + + /// + /// Gets total number of objects where task operation succeeded when was + /// attempted.Filter options such as objectsSucceededCount gt 150 and other + /// comparison operators can be used as described for Numerical properties in + /// https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#supported-comparison-operators + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "objectsSucceededCount")] + public string ObjectsSucceededCount {get; private set; } + + /// + /// Gets well known Azure Storage error code that represents the error + /// encountered during execution of the run instance. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runStatusError")] + public string RunStatusError {get; private set; } + + /// + /// Gets represents the status of the execution. Possible values include: 'InProgress', 'Finished' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runStatusEnum")] + public string RunStatusEnum {get; private set; } + + /// + /// Gets full path to the verbose report stored in the reporting container as + /// specified in the assignment execution context for the storage account. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "summaryReportPath")] + public string SummaryReportPath {get; private set; } + + /// + /// Gets storage Task Arm Id. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "taskId")] + public string TaskId {get; private set; } + + /// + /// Gets storage Task Version + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "taskVersion")] + public string TaskVersion {get; private set; } + + /// + /// Gets represents the overall result of the execution for the run instance Possible values include: 'Succeeded', 'Failed' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "runResult")] + public string RunResult {get; private set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/Table.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/Table.cs new file mode 100644 index 000000000000..627f4e9b458e --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/Table.cs @@ -0,0 +1,75 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Properties of the table, including Id, resource name, resource type. + /// + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class Table : ProxyResource + { + /// + /// Initializes a new instance of the Table class. + /// + public Table() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the Table class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// Table name under the specified account + /// + + /// List of stored access policies specified on the table. + /// + public Table(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), string tableName = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList)) + + : base(id, name, type, systemData) + { + this.TableName = tableName; + this.SignedIdentifiers = signedIdentifiers; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets table name under the specified account + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.tableName")] + public string TableName {get; private set; } + + /// + /// Gets or sets list of stored access policies specified on the table. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.signedIdentifiers")] + public System.Collections.Generic.IList SignedIdentifiers {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TableAccessPolicy.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TableAccessPolicy.cs new file mode 100644 index 000000000000..755a222cb0c1 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TableAccessPolicy.cs @@ -0,0 +1,84 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Table Access Policy Properties Object. + /// + public partial class TableAccessPolicy + { + /// + /// Initializes a new instance of the TableAccessPolicy class. + /// + public TableAccessPolicy() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TableAccessPolicy class. + /// + + /// Start time of the access policy + /// + + /// Expiry time of the access policy + /// + + /// Required. List of abbreviated permissions. Supported permission values + /// include 'r','a','u','d' + /// + public TableAccessPolicy(string permission, System.DateTime? startTime = default(System.DateTime?), System.DateTime? expiryTime = default(System.DateTime?)) + + { + this.StartTime = startTime; + this.ExpiryTime = expiryTime; + this.Permission = permission; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets start time of the access policy + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startTime")] + public System.DateTime? StartTime {get; set; } + + /// + /// Gets or sets expiry time of the access policy + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "expiryTime")] + public System.DateTime? ExpiryTime {get; set; } + + /// + /// Gets or sets required. List of abbreviated permissions. Supported + /// permission values include 'r','a','u','d' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "permission")] + public string Permission {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Permission == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Permission"); + } + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TableProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TableProperties.cs new file mode 100644 index 000000000000..95e46e188d2b --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TableProperties.cs @@ -0,0 +1,55 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + public partial class TableProperties + { + /// + /// Initializes a new instance of the TableProperties class. + /// + public TableProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TableProperties class. + /// + + /// Table name under the specified account + /// + + /// List of stored access policies specified on the table. + /// + public TableProperties(string tableName = default(string), System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList)) + + { + this.TableName = tableName; + this.SignedIdentifiers = signedIdentifiers; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets table name under the specified account + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "tableName")] + public string TableName {get; private set; } + + /// + /// Gets or sets list of stored access policies specified on the table. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "signedIdentifiers")] + public System.Collections.Generic.IList SignedIdentifiers {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TableServiceProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TableServiceProperties.cs new file mode 100644 index 000000000000..ccfd28484020 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TableServiceProperties.cs @@ -0,0 +1,71 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account’s Table service. + /// + [Microsoft.Rest.Serialization.JsonTransformation] + public partial class TableServiceProperties : ProxyResource + { + /// + /// Initializes a new instance of the TableServiceProperties class. + /// + public TableServiceProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TableServiceProperties class. + /// + + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + /// + + /// The name of the resource + /// + + /// The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or + /// "Microsoft.Storage/storageAccounts" + /// + + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + + /// 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. + /// + public TableServiceProperties(string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), CorsRules cors = default(CorsRules)) + + : base(id, name, type, systemData) + { + this.Cors = cors; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "properties.cors")] + public CorsRules Cors {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TableServicePropertiesProperties.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TableServicePropertiesProperties.cs new file mode 100644 index 000000000000..f5b1ab3d48b7 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TableServicePropertiesProperties.cs @@ -0,0 +1,54 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The properties of a storage account’s Table service. + /// + public partial class TableServicePropertiesProperties + { + /// + /// Initializes a new instance of the TableServicePropertiesProperties class. + /// + public TableServicePropertiesProperties() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TableServicePropertiesProperties class. + /// + + /// 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. + /// + public TableServicePropertiesProperties(CorsRules cors = default(CorsRules)) + + { + this.Cors = cors; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets 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. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "cors")] + public CorsRules Cors {get; set; } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TableSignedIdentifier.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TableSignedIdentifier.cs new file mode 100644 index 000000000000..52985f7775bf --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TableSignedIdentifier.cs @@ -0,0 +1,76 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// Object to set Table Access Policy. + /// + public partial class TableSignedIdentifier + { + /// + /// Initializes a new instance of the TableSignedIdentifier class. + /// + public TableSignedIdentifier() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TableSignedIdentifier class. + /// + + /// unique-64-character-value of the stored access policy. + /// + + /// Access policy + /// + public TableSignedIdentifier(string id, TableAccessPolicy accessPolicy = default(TableAccessPolicy)) + + { + this.Id = id; + this.AccessPolicy = accessPolicy; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets unique-64-character-value of the stored access policy. + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "id")] + public string Id {get; set; } + + /// + /// Gets or sets access policy + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "accessPolicy")] + public TableAccessPolicy AccessPolicy {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Id == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "Id"); + } + + if (this.AccessPolicy != null) + { + this.AccessPolicy.Validate(); + } + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TrackedResource.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TrackedResource.cs index 55098b173de3..eb4f4230787f 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/TrackedResource.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TrackedResource.cs @@ -29,8 +29,8 @@ public TrackedResource() /// Initializes a new instance of the TrackedResource class. /// - /// Fully qualified resource ID for the resource. Ex - - /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + /// Fully qualified resource ID for the resource. E.g. + /// "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" /// /// The name of the resource @@ -40,14 +40,18 @@ public TrackedResource() /// "Microsoft.Storage/storageAccounts" /// + /// Azure Resource Manager metadata containing createdBy and modifiedBy + /// information. + /// + /// Resource tags. /// /// The geo-location where the resource lives /// - public TrackedResource(string location, string id = default(string), string name = default(string), string type = default(string), System.Collections.Generic.IDictionary tags = default(System.Collections.Generic.IDictionary)) + public TrackedResource(string location, string id = default(string), string name = default(string), string type = default(string), SystemData systemData = default(SystemData), System.Collections.Generic.IDictionary tags = default(System.Collections.Generic.IDictionary)) - : base(id, name, type) + : base(id, name, type, systemData) { this.Tags = tags; this.Location = location; diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParameters.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParameters.cs new file mode 100644 index 000000000000..22ce6c4601c6 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParameters.cs @@ -0,0 +1,125 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The trigger parameters update for the storage task assignment execution + /// + public partial class TriggerParameters + { + /// + /// Initializes a new instance of the TriggerParameters class. + /// + public TriggerParameters() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TriggerParameters class. + /// + + /// When to start task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// Run interval of task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// Run interval unit of task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// Possible values include: 'Days' + + /// When to end task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// When to start task execution. This is an optional field when + /// ExecutionTrigger.properties.type is 'RunOnce'; this property should not be + /// present when ExecutionTrigger.properties.type is 'OnSchedule' + /// + public TriggerParameters(System.DateTime? startFrom = default(System.DateTime?), int? interval = default(int?), TriggerParametersIntervalUnit? intervalUnit = default(TriggerParametersIntervalUnit?), System.DateTime? endBy = default(System.DateTime?), System.DateTime? startOn = default(System.DateTime?)) + + { + this.StartFrom = startFrom; + this.Interval = interval; + this.IntervalUnit = intervalUnit; + this.EndBy = endBy; + this.StartOn = startOn; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets when to start task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startFrom")] + public System.DateTime? StartFrom {get; set; } + + /// + /// Gets or sets run interval of task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "interval")] + public int? Interval {get; set; } + + /// + /// Gets or sets run interval unit of task execution. This is a required field + /// when ExecutionTrigger.properties.type is 'OnSchedule'; this property should + /// not be present when ExecutionTrigger.properties.type is 'RunOnce' Possible values include: 'Days' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "intervalUnit")] + public TriggerParametersIntervalUnit? IntervalUnit {get; set; } + + /// + /// Gets or sets when to end task execution. This is a required field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "endBy")] + public System.DateTime? EndBy {get; set; } + + /// + /// Gets or sets when to start task execution. This is an optional field when + /// ExecutionTrigger.properties.type is 'RunOnce'; this property should not be + /// present when ExecutionTrigger.properties.type is 'OnSchedule' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startOn")] + public System.DateTime? StartOn {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Interval != null) + { + if (this.Interval < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "Interval", 1); + } + } + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersIntervalUnit.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersIntervalUnit.cs new file mode 100644 index 000000000000..c7dc6e833dda --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersIntervalUnit.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for TriggerParametersIntervalUnit. + /// + + + [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] + public enum TriggerParametersIntervalUnit + { + [System.Runtime.Serialization.EnumMember(Value = "Days")] + Days + } + internal static class TriggerParametersIntervalUnitEnumExtension + { + internal static string ToSerializedValue(this TriggerParametersIntervalUnit? value) + { + return value == null ? null : ((TriggerParametersIntervalUnit)value).ToSerializedValue(); + } + internal static string ToSerializedValue(this TriggerParametersIntervalUnit value) + { + switch( value ) + { + case TriggerParametersIntervalUnit.Days: + return "Days"; + } + return null; + } + internal static TriggerParametersIntervalUnit? ParseTriggerParametersIntervalUnit(this string value) + { + switch( value ) + { + case "Days": + return TriggerParametersIntervalUnit.Days; + } + return null; + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdate.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdate.cs new file mode 100644 index 000000000000..be544fe1ab05 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdate.cs @@ -0,0 +1,125 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + using System.Linq; + + /// + /// The trigger parameters update for the storage task assignment execution + /// + public partial class TriggerParametersUpdate + { + /// + /// Initializes a new instance of the TriggerParametersUpdate class. + /// + public TriggerParametersUpdate() + { + CustomInit(); + } + + /// + /// Initializes a new instance of the TriggerParametersUpdate class. + /// + + /// When to start task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// Run interval of task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// Run interval unit of task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// Possible values include: 'Days' + + /// When to end task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + + /// When to start task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'RunOnce'; this property should not be + /// present when ExecutionTrigger.properties.type is 'OnSchedule' + /// + public TriggerParametersUpdate(System.DateTime? startFrom = default(System.DateTime?), int? interval = default(int?), TriggerParametersUpdateIntervalUnit? intervalUnit = default(TriggerParametersUpdateIntervalUnit?), System.DateTime? endBy = default(System.DateTime?), System.DateTime? startOn = default(System.DateTime?)) + + { + this.StartFrom = startFrom; + this.Interval = interval; + this.IntervalUnit = intervalUnit; + this.EndBy = endBy; + this.StartOn = startOn; + CustomInit(); + } + + /// + /// An initialization method that performs custom operations like setting defaults + /// + partial void CustomInit(); + + + /// + /// Gets or sets when to start task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startFrom")] + public System.DateTime? StartFrom {get; set; } + + /// + /// Gets or sets run interval of task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "interval")] + public int? Interval {get; set; } + + /// + /// Gets or sets run interval unit of task execution. This is a mutable field + /// when ExecutionTrigger.properties.type is 'OnSchedule'; this property should + /// not be present when ExecutionTrigger.properties.type is 'RunOnce' Possible values include: 'Days' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "intervalUnit")] + public TriggerParametersUpdateIntervalUnit? IntervalUnit {get; set; } + + /// + /// Gets or sets when to end task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'OnSchedule'; this property should not + /// be present when ExecutionTrigger.properties.type is 'RunOnce' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "endBy")] + public System.DateTime? EndBy {get; set; } + + /// + /// Gets or sets when to start task execution. This is a mutable field when + /// ExecutionTrigger.properties.type is 'RunOnce'; this property should not be + /// present when ExecutionTrigger.properties.type is 'OnSchedule' + /// + [Newtonsoft.Json.JsonProperty(PropertyName = "startOn")] + public System.DateTime? StartOn {get; set; } + /// + /// Validate the object. + /// + /// + /// Thrown if validation fails + /// + public virtual void Validate() + { + if (this.Interval != null) + { + if (this.Interval < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.InclusiveMinimum, "Interval", 1); + } + } + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdateIntervalUnit.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdateIntervalUnit.cs new file mode 100644 index 000000000000..f72626d9cea9 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerParametersUpdateIntervalUnit.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for TriggerParametersUpdateIntervalUnit. + /// + + + [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] + public enum TriggerParametersUpdateIntervalUnit + { + [System.Runtime.Serialization.EnumMember(Value = "Days")] + Days + } + internal static class TriggerParametersUpdateIntervalUnitEnumExtension + { + internal static string ToSerializedValue(this TriggerParametersUpdateIntervalUnit? value) + { + return value == null ? null : ((TriggerParametersUpdateIntervalUnit)value).ToSerializedValue(); + } + internal static string ToSerializedValue(this TriggerParametersUpdateIntervalUnit value) + { + switch( value ) + { + case TriggerParametersUpdateIntervalUnit.Days: + return "Days"; + } + return null; + } + internal static TriggerParametersUpdateIntervalUnit? ParseTriggerParametersUpdateIntervalUnit(this string value) + { + switch( value ) + { + case "Days": + return TriggerParametersUpdateIntervalUnit.Days; + } + return null; + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerType.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerType.cs new file mode 100644 index 000000000000..c3ffa59663cf --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/TriggerType.cs @@ -0,0 +1,19 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for TriggerType. + /// + + + public static class TriggerType + { + public const string RunOnce = "RunOnce"; + public const string OnSchedule = "OnSchedule"; + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRule.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRule.cs index 7eab4a5ff3ec..2505df8052f0 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRule.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRule.cs @@ -34,7 +34,7 @@ public VirtualNetworkRule() /// Gets the state of virtual network rule. /// Possible values include: 'Provisioning', 'Deprovisioning', 'Succeeded', /// 'Failed', 'NetworkSourceDeleted' - public VirtualNetworkRule(string virtualNetworkResourceId, Action? action = default(Action?), string state = default(string)) + public VirtualNetworkRule(string virtualNetworkResourceId, VirtualNetworkRuleAction? action = default(VirtualNetworkRuleAction?), string state = default(string)) { this.VirtualNetworkResourceId = virtualNetworkResourceId; @@ -60,7 +60,7 @@ public VirtualNetworkRule() /// Gets or sets the action of virtual network rule. Possible values include: 'Allow' /// [Newtonsoft.Json.JsonProperty(PropertyName = "action")] - public Action? Action {get; set; } + public VirtualNetworkRuleAction? Action {get; set; } /// /// Gets or sets gets the state of virtual network rule. Possible values include: 'Provisioning', 'Deprovisioning', 'Succeeded', 'Failed', 'NetworkSourceDeleted' diff --git a/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRuleAction.cs b/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRuleAction.cs new file mode 100644 index 000000000000..0b69f4bb7638 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/Models/VirtualNetworkRuleAction.cs @@ -0,0 +1,45 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage.Models +{ + + /// + /// Defines values for VirtualNetworkRuleAction. + /// + + + [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.StringEnumConverter))] + public enum VirtualNetworkRuleAction + { + [System.Runtime.Serialization.EnumMember(Value = "Allow")] + Allow + } + internal static class VirtualNetworkRuleActionEnumExtension + { + internal static string ToSerializedValue(this VirtualNetworkRuleAction? value) + { + return value == null ? null : ((VirtualNetworkRuleAction)value).ToSerializedValue(); + } + internal static string ToSerializedValue(this VirtualNetworkRuleAction value) + { + switch( value ) + { + case VirtualNetworkRuleAction.Allow: + return "Allow"; + } + return null; + } + internal static VirtualNetworkRuleAction? ParseVirtualNetworkRuleAction(this string value) + { + switch( value ) + { + case "Allow": + return VirtualNetworkRuleAction.Allow; + } + return null; + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperations.cs new file mode 100644 index 000000000000..1fd44f3f6718 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperations.cs @@ -0,0 +1,962 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// NetworkSecurityPerimeterConfigurationsOperations operations. + /// + internal partial class NetworkSecurityPerimeterConfigurationsOperations : Microsoft.Rest.IServiceOperations, INetworkSecurityPerimeterConfigurationsOperations + { + /// + /// Initializes a new instance of the NetworkSecurityPerimeterConfigurationsOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal NetworkSecurityPerimeterConfigurationsOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/networkSecurityPerimeterConfigurations").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets effective NetworkSecurityPerimeterConfiguration for association + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (networkSecurityPerimeterConfigurationName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "networkSecurityPerimeterConfigurationName"); + } + if (networkSecurityPerimeterConfigurationName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(networkSecurityPerimeterConfigurationName, "^.*$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "networkSecurityPerimeterConfigurationName", "^.*$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("networkSecurityPerimeterConfigurationName", networkSecurityPerimeterConfigurationName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{networkSecurityPerimeterConfigurationName}", System.Uri.EscapeDataString(networkSecurityPerimeterConfigurationName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Refreshes any information about the association. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> ReconcileWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginReconcileWithHttpMessagesAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Refreshes any information about the association. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> BeginReconcileWithHttpMessagesAsync(string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (networkSecurityPerimeterConfigurationName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "networkSecurityPerimeterConfigurationName"); + } + if (networkSecurityPerimeterConfigurationName != null) + { + if (!System.Text.RegularExpressions.Regex.IsMatch(networkSecurityPerimeterConfigurationName, "^.*$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "networkSecurityPerimeterConfigurationName", "^.*$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("networkSecurityPerimeterConfigurationName", networkSecurityPerimeterConfigurationName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginReconcile", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/networkSecurityPerimeterConfigurations/{networkSecurityPerimeterConfigurationName}/reconcile").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{networkSecurityPerimeterConfigurationName}", System.Uri.EscapeDataString(networkSecurityPerimeterConfigurationName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 202) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperationsExtensions.cs new file mode 100644 index 000000000000..50404bf53d06 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/NetworkSecurityPerimeterConfigurationsOperationsExtensions.cs @@ -0,0 +1,243 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for NetworkSecurityPerimeterConfigurationsOperations + /// + public static partial class NetworkSecurityPerimeterConfigurationsOperationsExtensions + { + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static Microsoft.Rest.Azure.IPage List(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName) + { + return ((INetworkSecurityPerimeterConfigurationsOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets effective NetworkSecurityPerimeterConfiguration for association + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + public static NetworkSecurityPerimeterConfiguration Get(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName) + { + return ((INetworkSecurityPerimeterConfigurationsOperations)operations).GetAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName).GetAwaiter().GetResult(); + } + + /// + /// Gets effective NetworkSecurityPerimeterConfiguration for association + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task GetAsync(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Refreshes any information about the association. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + public static NetworkSecurityPerimeterConfigurationsReconcileHeaders Reconcile(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName) + { + return ((INetworkSecurityPerimeterConfigurationsOperations)operations).ReconcileAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName).GetAwaiter().GetResult(); + } + + /// + /// Refreshes any information about the association. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task ReconcileAsync(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ReconcileWithHttpMessagesAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// + /// Refreshes any information about the association. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + public static NetworkSecurityPerimeterConfigurationsReconcileHeaders BeginReconcile(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName) + { + return ((INetworkSecurityPerimeterConfigurationsOperations)operations).BeginReconcileAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName).GetAwaiter().GetResult(); + } + + /// + /// Refreshes any information about the association. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name for Network Security Perimeter configuration + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginReconcileAsync(this INetworkSecurityPerimeterConfigurationsOperations operations, string resourceGroupName, string accountName, string networkSecurityPerimeterConfigurationName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginReconcileWithHttpMessagesAsync(resourceGroupName, accountName, networkSecurityPerimeterConfigurationName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this INetworkSecurityPerimeterConfigurationsOperations operations, string nextPageLink) + { + return ((INetworkSecurityPerimeterConfigurationsOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets list of effective NetworkSecurityPerimeterConfiguration for storage + /// account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this INetworkSecurityPerimeterConfigurationsOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperations.cs index ce516ee5b000..fbf5828502f9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperations.cs @@ -42,8 +42,7 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) /// List the object replication policies associated with the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -71,12 +70,18 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -91,10 +96,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -115,22 +116,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -149,9 +134,9 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -246,7 +231,7 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -287,8 +272,7 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) /// Get the object replication policy of the storage account by policy ID. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -329,6 +313,12 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -343,10 +333,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -367,22 +353,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (objectReplicationPolicyId == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "objectReplicationPolicyId"); @@ -413,9 +383,9 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{objectReplicationPolicyId}", System.Uri.EscapeDataString(objectReplicationPolicyId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -552,8 +522,7 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) /// Create or update the object replication policy of the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -603,6 +572,12 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "properties"); } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -617,10 +592,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -641,22 +612,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (objectReplicationPolicyId == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "objectReplicationPolicyId"); @@ -688,9 +643,9 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{objectReplicationPolicyId}", System.Uri.EscapeDataString(objectReplicationPolicyId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -834,8 +789,7 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -873,6 +827,12 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -887,10 +847,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -911,22 +867,6 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (objectReplicationPolicyId == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "objectReplicationPolicyId"); @@ -957,9 +897,9 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/objectReplicationPolicies/{objectReplicationPolicyId}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{objectReplicationPolicyId}", System.Uri.EscapeDataString(objectReplicationPolicyId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -1073,6 +1013,183 @@ internal ObjectReplicationPoliciesOperations (StorageManagementClient client) + } + /// + /// List the object replication policies associated with the storage account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperationsExtensions.cs index 80c03a32d634..7ed9fb034061 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/ObjectReplicationPoliciesOperationsExtensions.cs @@ -19,15 +19,14 @@ public static partial class ObjectReplicationPoliciesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static System.Collections.Generic.IEnumerable List(this IObjectReplicationPoliciesOperations operations, string resourceGroupName, string accountName) + public static Microsoft.Rest.Azure.IPage List(this IObjectReplicationPoliciesOperations operations, string resourceGroupName, string accountName) { return ((IObjectReplicationPoliciesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } @@ -39,8 +38,7 @@ public static System.Collections.Generic.IEnumerable Li /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -50,7 +48,7 @@ public static System.Collections.Generic.IEnumerable Li /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IObjectReplicationPoliciesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IObjectReplicationPoliciesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { @@ -64,8 +62,7 @@ public static System.Collections.Generic.IEnumerable Li /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -91,8 +88,7 @@ public static ObjectReplicationPolicy Get(this IObjectReplicationPoliciesOperati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -123,8 +119,7 @@ public static ObjectReplicationPolicy Get(this IObjectReplicationPoliciesOperati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -150,8 +145,7 @@ public static ObjectReplicationPolicy CreateOrUpdate(this IObjectReplicationPoli /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -183,8 +177,7 @@ public static ObjectReplicationPolicy CreateOrUpdate(this IObjectReplicationPoli /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -211,8 +204,7 @@ public static void Delete(this IObjectReplicationPoliciesOperations operations, /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -233,5 +225,38 @@ public static void Delete(this IObjectReplicationPoliciesOperations operations, { (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, objectReplicationPolicyId, null, cancellationToken).ConfigureAwait(false)).Dispose(); } + /// + /// List the object replication policies associated with the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IObjectReplicationPoliciesOperations operations, string nextPageLink) + { + return ((IObjectReplicationPoliciesOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List the object replication policies associated with the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IObjectReplicationPoliciesOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/Operations.cs b/src/Storage/Storage.Management.Sdk/Generated/Operations.cs index 63d6422b71ba..9b5304c50a22 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/Operations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/Operations.cs @@ -39,7 +39,7 @@ internal Operations (StorageManagementClient client) public StorageManagementClient Client { get; private set; } /// - /// Lists all of the available Storage Rest API operations. + /// List the operations for the provider /// /// /// Headers that will be added to request. @@ -62,7 +62,7 @@ internal Operations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -155,14 +155,13 @@ internal Operations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -172,10 +171,183 @@ internal Operations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) + if (_shouldTrace) { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// List the operations for the provider + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -188,7 +360,7 @@ internal Operations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; diff --git a/src/Storage/Storage.Management.Sdk/Generated/OperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/OperationsExtensions.cs index 0de87d8392fc..ab03715033a2 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/OperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/OperationsExtensions.cs @@ -13,18 +13,18 @@ namespace Microsoft.Azure.Management.Storage public static partial class OperationsExtensions { /// - /// Lists all of the available Storage Rest API operations. + /// List the operations for the provider /// /// /// The operations group for this extension method. /// - public static System.Collections.Generic.IEnumerable List(this IOperations operations) + public static Microsoft.Rest.Azure.IPage List(this IOperations operations) { return ((IOperations)operations).ListAsync().GetAwaiter().GetResult(); } /// - /// Lists all of the available Storage Rest API operations. + /// List the operations for the provider /// /// /// The operations group for this extension method. @@ -32,12 +32,45 @@ public static System.Collections.Generic.IEnumerable List(this IOpera /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } + /// + /// List the operations for the provider + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IOperations operations, string nextPageLink) + { + return ((IOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List the operations for the provider + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperations.cs index e517244d718b..6b54e7bfd91c 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperations.cs @@ -43,8 +43,7 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -72,12 +71,18 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -92,10 +97,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -116,22 +117,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -150,9 +135,9 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -219,14 +204,13 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -236,10 +220,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -252,7 +232,7 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -294,8 +274,7 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -333,6 +312,12 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -347,10 +332,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -371,22 +352,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (privateEndpointConnectionName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "privateEndpointConnectionName"); @@ -411,9 +376,9 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{privateEndpointConnectionName}", System.Uri.EscapeDataString(privateEndpointConnectionName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -551,8 +516,7 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) /// the storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -597,6 +561,12 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -611,10 +581,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -635,22 +601,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (privateEndpointConnectionName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "privateEndpointConnectionName"); @@ -682,9 +632,9 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{privateEndpointConnectionName}", System.Uri.EscapeDataString(privateEndpointConnectionName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -828,8 +778,7 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) /// storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -864,6 +813,12 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -878,10 +833,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -902,22 +853,6 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } if (privateEndpointConnectionName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "privateEndpointConnectionName"); @@ -942,9 +877,9 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateEndpointConnections/{privateEndpointConnectionName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); _url = _url.Replace("{privateEndpointConnectionName}", System.Uri.EscapeDataString(privateEndpointConnectionName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -1058,6 +993,184 @@ internal PrivateEndpointConnectionsOperations (StorageManagementClient client) + } + /// + /// List all the private endpoint connections associated with the storage + /// account. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + } } } \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperationsExtensions.cs index 5a8988c03082..d38106a4e6e7 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/PrivateEndpointConnectionsOperationsExtensions.cs @@ -20,15 +20,14 @@ public static partial class PrivateEndpointConnectionsOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static System.Collections.Generic.IEnumerable List(this IPrivateEndpointConnectionsOperations operations, string resourceGroupName, string accountName) + public static Microsoft.Rest.Azure.IPage List(this IPrivateEndpointConnectionsOperations operations, string resourceGroupName, string accountName) { return ((IPrivateEndpointConnectionsOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } @@ -41,8 +40,7 @@ public static System.Collections.Generic.IEnumerable /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -52,7 +50,7 @@ public static System.Collections.Generic.IEnumerable /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this IPrivateEndpointConnectionsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IPrivateEndpointConnectionsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { @@ -67,8 +65,7 @@ public static System.Collections.Generic.IEnumerable /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -92,8 +89,7 @@ public static PrivateEndpointConnection Get(this IPrivateEndpointConnectionsOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -122,8 +118,7 @@ public static PrivateEndpointConnection Get(this IPrivateEndpointConnectionsOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -147,8 +142,7 @@ public static PrivateEndpointConnection Get(this IPrivateEndpointConnectionsOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -177,8 +171,7 @@ public static PrivateEndpointConnection Get(this IPrivateEndpointConnectionsOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -202,8 +195,7 @@ public static void Delete(this IPrivateEndpointConnectionsOperations operations, /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -221,5 +213,40 @@ public static void Delete(this IPrivateEndpointConnectionsOperations operations, { (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, privateEndpointConnectionName, null, cancellationToken).ConfigureAwait(false)).Dispose(); } + /// + /// List all the private endpoint connections associated with the storage + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IPrivateEndpointConnectionsOperations operations, string nextPageLink) + { + return ((IPrivateEndpointConnectionsOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List all the private endpoint connections associated with the storage + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IPrivateEndpointConnectionsOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperations.cs index 3108d3d21bb3..905f761ead1b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperations.cs @@ -43,8 +43,7 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) /// account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -78,6 +77,12 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -92,10 +97,6 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -116,22 +117,6 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -150,9 +135,9 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/privateLinkResources").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -219,14 +204,13 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -236,10 +220,6 @@ internal PrivateLinkResourcesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); diff --git a/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperationsExtensions.cs index 75289a3e8763..62794b6ae8a9 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/PrivateLinkResourcesOperationsExtensions.cs @@ -20,8 +20,7 @@ public static partial class PrivateLinkResourcesOperationsExtensions /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -41,8 +40,7 @@ public static PrivateLinkResourceListResult ListByStorageAccount(this IPrivateLi /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. diff --git a/src/Storage/Storage.Management.Sdk/Generated/QueueOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/QueueOperations.cs new file mode 100644 index 000000000000..43ce212af92a --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/QueueOperations.cs @@ -0,0 +1,1540 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// QueueOperations operations. + /// + internal partial class QueueOperations : Microsoft.Rest.IServiceOperations, IQueueOperations + { + /// + /// Initializes a new instance of the QueueOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal QueueOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, a maximum number of queues that should be included in a list + /// queue response + /// + /// + /// Optional, When specified, only the queues with a name starting with the + /// given filter will be listed. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + + + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("maxpagesize", maxpagesize); + tracingParameters.Add("filter", filter); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (maxpagesize != null) + { + _queryParameters.Add(string.Format("$maxpagesize={0}", System.Uri.EscapeDataString(maxpagesize))); + } + if (filter != null) + { + _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the queue with the specified queue name, under the specified account + /// if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (queueName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "queueName"); + } + if (queueName != null) + { + if (queueName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "queueName", 63); + } + if (queueName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "queueName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(queueName, "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "queueName", "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("queueName", queueName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{queueName}", System.Uri.EscapeDataString(queueName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// A name-value pair that represents queue metadata. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (queueName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "queueName"); + } + if (queueName != null) + { + if (queueName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "queueName", 63); + } + if (queueName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "queueName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(queueName, "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "queueName", "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"); + } + } + StorageQueue queue = new StorageQueue(); + if(metadata != null) + { + queue.Metadata = metadata; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("queueName", queueName); + + tracingParameters.Add("queue", queue); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{queueName}", System.Uri.EscapeDataString(queueName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(queue != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(queue, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// A name-value pair that represents queue metadata. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (queueName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "queueName"); + } + if (queueName != null) + { + if (queueName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "queueName", 63); + } + if (queueName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "queueName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(queueName, "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "queueName", "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"); + } + } + StorageQueue queue = new StorageQueue(); + if(metadata != null) + { + queue.Metadata = metadata; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("queueName", queueName); + + tracingParameters.Add("queue", queue); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{queueName}", System.Uri.EscapeDataString(queueName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(queue != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(queue, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Deletes the queue with the specified queue name, under the specified + /// account if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string queueName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (queueName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "queueName"); + } + if (queueName != null) + { + if (queueName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "queueName", 63); + } + if (queueName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "queueName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(queueName, "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "queueName", "^[a-z0-9]([a-z0-9]|(-(?!-))){1,61}[a-z0-9]$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("queueName", queueName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Delete", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default/queues/{queueName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{queueName}", System.Uri.EscapeDataString(queueName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 204) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/QueueOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/QueueOperationsExtensions.cs new file mode 100644 index 000000000000..a3bb4b9b12c0 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/QueueOperationsExtensions.cs @@ -0,0 +1,333 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for QueueOperations + /// + public static partial class QueueOperationsExtensions + { + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, a maximum number of queues that should be included in a list + /// queue response + /// + /// + /// Optional, When specified, only the queues with a name starting with the + /// given filter will be listed. + /// + public static Microsoft.Rest.Azure.IPage List(this IQueueOperations operations, string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string)) + { + return ((IQueueOperations)operations).ListAsync(resourceGroupName, accountName, maxpagesize, filter).GetAwaiter().GetResult(); + } + + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, a maximum number of queues that should be included in a list + /// queue response + /// + /// + /// Optional, When specified, only the queues with a name starting with the + /// given filter will be listed. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this IQueueOperations operations, string resourceGroupName, string accountName, string maxpagesize = default(string), string filter = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, maxpagesize, filter, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets the queue with the specified queue name, under the specified account + /// if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static StorageQueue Get(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName) + { + return ((IQueueOperations)operations).GetAsync(resourceGroupName, accountName, queueName).GetAwaiter().GetResult(); + } + + /// + /// Gets the queue with the specified queue name, under the specified account + /// if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task GetAsync(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, queueName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static StorageQueue Create(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary)) + { + return ((IQueueOperations)operations).CreateAsync(resourceGroupName, accountName, queueName, metadata).GetAwaiter().GetResult(); + } + + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task CreateAsync(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, queueName, metadata, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static StorageQueue Update(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary)) + { + return ((IQueueOperations)operations).UpdateAsync(resourceGroupName, accountName, queueName, metadata).GetAwaiter().GetResult(); + } + + /// + /// Creates a new queue with the specified queue name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task UpdateAsync(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Collections.Generic.IDictionary metadata = default(System.Collections.Generic.IDictionary), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, queueName, metadata, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Deletes the queue with the specified queue name, under the specified + /// account if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static void Delete(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName) + { + ((IQueueOperations)operations).DeleteAsync(resourceGroupName, accountName, queueName).GetAwaiter().GetResult(); + } + + /// + /// Deletes the queue with the specified queue name, under the specified + /// account if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task DeleteAsync(this IQueueOperations operations, string resourceGroupName, string accountName, string queueName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, queueName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IQueueOperations operations, string nextPageLink) + { + return ((IQueueOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets a list of all the queues under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IQueueOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperations.cs new file mode 100644 index 000000000000..f47596f98838 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperations.cs @@ -0,0 +1,769 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// QueueServicesOperations operations. + /// + internal partial class QueueServicesOperations : Microsoft.Rest.IServiceOperations, IQueueServicesOperations + { + /// + /// Initializes a new instance of the QueueServicesOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal QueueServicesOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// List all queue services for the storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Sets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + QueueServiceProperties parameters = new QueueServiceProperties(); + if(cors != null) + { + parameters.Cors = cors; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/queueServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperationsExtensions.cs new file mode 100644 index 000000000000..228d939c78bd --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/QueueServicesOperationsExtensions.cs @@ -0,0 +1,153 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for QueueServicesOperations + /// + public static partial class QueueServicesOperationsExtensions + { + /// + /// List all queue services for the storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static ListQueueServices List(this IQueueServicesOperations operations, string resourceGroupName, string accountName) + { + return ((IQueueServicesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// List all queue services for the storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task ListAsync(this IQueueServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static QueueServiceProperties GetServiceProperties(this IQueueServicesOperations operations, string resourceGroupName, string accountName) + { + return ((IQueueServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this IQueueServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Sets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static QueueServiceProperties SetServiceProperties(this IQueueServicesOperations operations, string resourceGroupName, string accountName, CorsRules cors = default(CorsRules)) + { + return ((IQueueServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, cors).GetAwaiter().GetResult(); + } + + /// + /// Sets the properties of a storage account’s Queue service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this IQueueServicesOperations operations, string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, cors, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/SkusOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/SkusOperations.cs index 3b8b1529f90a..a5940349ed8c 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/SkusOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/SkusOperations.cs @@ -63,7 +63,7 @@ internal SkusOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -74,17 +74,7 @@ internal SkusOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } + // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -101,7 +91,7 @@ internal SkusOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/skus").ToString(); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -168,14 +158,13 @@ internal SkusOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -185,10 +174,184 @@ internal SkusOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Lists the available SKUs supported by Microsoft.Storage for given + /// subscription. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + _httpRequest.Headers.Remove("accept-language"); } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -201,7 +364,7 @@ internal SkusOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; diff --git a/src/Storage/Storage.Management.Sdk/Generated/SkusOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/SkusOperationsExtensions.cs index 0afab167f6f5..692de508130b 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/SkusOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/SkusOperationsExtensions.cs @@ -19,7 +19,7 @@ public static partial class SkusOperationsExtensions /// /// The operations group for this extension method. /// - public static System.Collections.Generic.IEnumerable List(this ISkusOperations operations) + public static Microsoft.Rest.Azure.IPage List(this ISkusOperations operations) { return ((ISkusOperations)operations).ListAsync().GetAwaiter().GetResult(); } @@ -34,12 +34,47 @@ public static System.Collections.Generic.IEnumerable List(this I /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListAsync(this ISkusOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this ISkusOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } + /// + /// Lists the available SKUs supported by Microsoft.Storage for given + /// subscription. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this ISkusOperations operations, string nextPageLink) + { + return ((ISkusOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Lists the available SKUs supported by Microsoft.Storage for given + /// subscription. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this ISkusOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperations.cs index 2d48d14728ee..d4afc59d8a29 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperations.cs @@ -76,17 +76,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } + StorageAccountCheckNameAvailabilityParameters accountName = new StorageAccountCheckNameAvailabilityParameters(); if(name != null) { @@ -109,7 +99,7 @@ internal StorageAccountsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/checkNameAvailability").ToString(); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -182,14 +172,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -199,10 +188,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -253,49 +238,9 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Asynchronously creates a new storage account with the specified parameters. - /// If an account is already created and a subsequent create request is issued - /// with different properties, the account properties will be updated. If an - /// account is already created and a subsequent create or update request is - /// issued with the exact same set of properties, the request will succeed. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The parameters to provide for the created account. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginCreateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } - - /// - /// Deletes a storage account in Microsoft Azure. + /// Lists all the storage accounts available under the subscription. Note that + /// storage keys are not returned; use the ListKeys operation for this. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// /// /// Headers that will be added to request. /// @@ -305,6 +250,9 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// + /// + /// Thrown when unable to deserialize the response + /// /// /// Thrown when a required parameter is null /// @@ -314,66 +262,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (resourceGroupName == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); - } - if (resourceGroupName != null) - { - if (resourceGroupName.Length > 90) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); - } - if (resourceGroupName.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } - } - if (accountName == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); - } - if (accountName != null) - { - if (accountName.Length > 24) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); - } - if (accountName.Length < 3) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); - } - } if (this.Client.ApiVersion == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } + // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -381,20 +281,16 @@ internal StorageAccountsOperations (StorageManagementClient client) { _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); - tracingParameters.Add("resourceGroupName", resourceGroupName); - tracingParameters.Add("accountName", accountName); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Delete", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); - _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); - _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -408,7 +304,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -459,16 +355,15 @@ internal StorageAccountsOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200 && (int)_statusCode != 204) + if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -478,10 +373,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -494,7 +385,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -502,6 +393,24 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -514,23 +423,12 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Returns the properties for the specified storage account including but not - /// limited to name, SKU name, location, and account status. The ListKeys - /// operation should be used to retrieve storage keys. + /// Lists all the storage accounts available under the given resource group. + /// Note that storage keys are not returned; use the ListKeys operation for + /// this. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// May be used to expand the properties within account's properties. By - /// default, data is not included when fetching properties. Currently we only - /// support geoReplicationStats and blobRestoreStatus. + /// The name of the resource group. The name is case insensitive. /// /// /// Headers that will be added to request. @@ -553,12 +451,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetPropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountExpand? expand = default(StorageAccountExpand?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -573,47 +477,7 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } - } - if (accountName == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); - } - if (accountName != null) - { - if (accountName.Length > 24) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); - } - if (accountName.Length < 3) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); - } - } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -622,30 +486,23 @@ internal StorageAccountsOperations (StorageManagementClient client) _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); - tracingParameters.Add("accountName", accountName); - tracingParameters.Add("expand", expand); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetProperties", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListByResourceGroup", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); - _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (expand != null) - { - _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(expand, this.Client.SerializationSettings).Trim('"')))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -706,14 +563,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -723,10 +579,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -739,7 +591,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -753,7 +605,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -777,28 +629,22 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// The update operation can be used to update the SKU, encryption, access - /// tier, or tags for a storage account. It can also be used to map the account - /// to a custom domain. Only one custom domain is supported per storage - /// account; the replacement/change of custom domain is not supported. In order - /// to replace an old custom domain, the old value must be cleared/unregistered - /// before a new value can be set. The update of multiple properties is - /// supported. This call does not change the storage keys for the account. If - /// you want to change the storage account keys, use the regenerate keys - /// operation. The location and name of the storage account cannot be changed - /// after creation. + /// Returns the properties for the specified storage account including but not + /// limited to name, SKU name, location, and account status. The ListKeys + /// operation should be used to retrieve storage keys. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The parameters to provide for the updated account. + /// + /// May be used to expand the properties within account's properties. By + /// default, data is not included when fetching properties. Currently we only + /// support geoReplicationStats and blobRestoreStatus. /// /// /// Headers that will be added to request. @@ -821,16 +667,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetPropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountExpand? expand = default(StorageAccountExpand?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (parameters == null) + if (this.Client.ApiVersion == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -845,10 +693,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -869,22 +713,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -894,25 +723,29 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); + tracingParameters.Add("expand", expand); - tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetProperties", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (expand != null) + { + _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(expand, this.Client.SerializationSettings).Trim('"')))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -920,7 +753,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -949,12 +782,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -979,14 +806,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -996,10 +822,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1050,9 +872,59 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Lists all the storage accounts available under the subscription. Note that - /// storage keys are not returned; use the ListKeys operation for this. + /// Asynchronously creates a new storage account with the specified parameters. + /// If an account is already created and a subsequent create request is issued + /// with different properties, the account properties will be updated. If an + /// account is already created and a subsequent create or update request is + /// issued with the exact same set of properties, the request will succeed. /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The parameters to provide for the created account. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginCreateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// The update operation can be used to update the SKU, encryption, access + /// tier, or tags for a storage account. It can also be used to map the account + /// to a custom domain. Only one custom domain is supported per storage + /// account; the replacement/change of custom domain is not supported. In order + /// to replace an old custom domain, the old value must be cleared/unregistered + /// before a new value can be set. The update of multiple properties is + /// supported. This call does not change the storage keys for the account. If + /// you want to change the storage account keys, use the regenerate keys + /// operation. The location and name of the storage account cannot be changed + /// after creation. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The parameters to provide for the updated account. + /// /// /// Headers that will be added to request. /// @@ -1074,26 +946,54 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (parameters == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); + } if (this.Client.ApiVersion == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); } - if (this.Client.SubscriptionId != null) + if (accountName != null) { - if (this.Client.SubscriptionId.Length < 1) + if (accountName.Length > 24) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } // Tracing @@ -1103,16 +1003,21 @@ internal StorageAccountsOperations (StorageManagementClient client) { _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts").ToString(); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1126,7 +1031,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1155,6 +1060,12 @@ internal StorageAccountsOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -1179,14 +1090,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1196,10 +1106,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1212,7 +1118,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1226,7 +1132,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -1250,13 +1156,15 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Lists all the storage accounts available under the given resource group. - /// Note that storage keys are not returned; use the ListKeys operation for - /// this. + /// Deletes a storage account in Microsoft Azure. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. /// /// /// Headers that will be added to request. @@ -1267,9 +1175,6 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// /// /// Thrown when a required parameter is null /// @@ -1279,12 +1184,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListByResourceGroupWithHttpMessagesAsync(string resourceGroupName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1299,25 +1210,24 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } - } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - - if (this.Client.SubscriptionId == null) + if (accountName == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); } - if (this.Client.SubscriptionId != null) + if (accountName != null) { - if (this.Client.SubscriptionId.Length < 1) + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } // Tracing @@ -1328,17 +1238,19 @@ internal StorageAccountsOperations (StorageManagementClient client) _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListByResourceGroup", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Delete", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1352,7 +1264,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1403,16 +1315,15 @@ internal StorageAccountsOperations (StorageManagementClient client) cancellationToken.ThrowIfCancellationRequested(); string _responseContent = null; - if ((int)_statusCode != 200) + if ((int)_statusCode != 200 && (int)_statusCode != 204) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1422,10 +1333,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1438,7 +1345,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1446,24 +1353,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } - // Deserialize Response - if ((int)_statusCode == 200) - { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -1476,20 +1365,39 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Lists the access keys or Kerberos keys (if active directory enabled) for - /// the specified storage account. + /// Abort live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Specifies type of the key to be listed. Possible value is kerb. + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Gets the status of the ongoing migration for the specified storage account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. /// /// /// Headers that will be added to request. @@ -1512,12 +1420,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> ListKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, ListKeyExpand? expand = default(ListKeyExpand?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> GetCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - + string migrationName = "default"; + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1532,10 +1446,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1556,22 +1466,6 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -1582,29 +1476,26 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("expand", expand); + tracingParameters.Add("migrationName", migrationName); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListKeys", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetCustomerInitiatedMigration", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/accountMigrations/{migrationName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{migrationName}", System.Uri.EscapeDataString(migrationName)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (expand != null) - { - _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(expand, this.Client.SerializationSettings).Trim('"')))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -1612,7 +1503,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -1665,14 +1556,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1682,10 +1572,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1698,7 +1584,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1712,7 +1598,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -1736,21 +1622,89 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Regenerates one of the access keys or Kerberos keys for the specified - /// storage account. + /// A failover request can be triggered for a storage account in the event a + /// primary endpoint becomes unavailable for any reason. The failover occurs + /// from the storage account's primary cluster to the secondary cluster for + /// RA-GRS accounts. The secondary cluster will become primary after failover + /// and the account is converted to LRS. In the case of a Planned Failover, the + /// primary and secondary clusters are swapped after failover and the account + /// remains geo-replicated. Failover should continue to be used in the event of + /// availability issues as Planned failover is only available while the primary + /// and secondary endpoints are available. The primary use case of a Planned + /// Failover is disaster recovery testing drills. This type of failover is + /// invoked by setting FailoverType parameter to 'Planned'. Learn more about + /// the failover options here- + /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The parameter is set to 'Planned' to indicate whether a Planned failover is + /// requested. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> FailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginFailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Live Migration of storage account to enable Hns + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Required. Hierarchical namespace migration type can either be a + /// hierarchical namespace validation request 'HnsOnValidationRequest' or a + /// hydration request 'HnsOnHydrationRequest'. The validation request will + /// validate the migration whereas the hydration request will migrate the + /// account. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> HierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// List SAS credentials of a storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The name of storage keys that want to be regenerated, possible values are - /// key1, key2, kerb1, kerb2. + /// + /// The parameters to provide to list SAS credentials for the storage account. /// /// /// Headers that will be added to request. @@ -1773,12 +1727,26 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> RegenerateKeyWithHttpMessagesAsync(string resourceGroupName, string accountName, string keyName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> ListAccountSASWithHttpMessagesAsync(string resourceGroupName, string accountName, AccountSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (parameters == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); + } + if (parameters != null) + { + parameters.Validate(); + } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -1793,10 +1761,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -1817,27 +1781,6 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - StorageAccountRegenerateKeyParameters regenerateKey = new StorageAccountRegenerateKeyParameters(); - if(keyName != null) - { - regenerateKey.KeyName = keyName; - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -1848,18 +1791,18 @@ internal StorageAccountsOperations (StorageManagementClient client) tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("regenerateKey", regenerateKey); + tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "RegenerateKey", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListAccountSAS", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listAccountSas").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -1902,9 +1845,9 @@ internal StorageAccountsOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(regenerateKey != null) + if(parameters != null) { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(regenerateKey, this.Client.SerializationSettings); + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); } @@ -1932,14 +1875,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -1949,10 +1891,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -1965,7 +1903,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -1979,7 +1917,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -2003,19 +1941,19 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// List SAS credentials of a storage account. + /// Lists the access keys or Kerberos keys (if active directory enabled) for + /// the specified storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The parameters to provide to list SAS credentials for the storage account. + /// + /// Specifies type of the key to be listed. Possible value is kerb. /// /// /// Headers that will be added to request. @@ -2038,20 +1976,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> ListAccountSASWithHttpMessagesAsync(string resourceGroupName, string accountName, AccountSasParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> ListKeysWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum70? expand = default(Enum70?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (parameters == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); - } - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2066,10 +2002,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2090,22 +2022,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -2115,25 +2032,29 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); + tracingParameters.Add("expand", expand); - tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListAccountSAS", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListKeys", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListAccountSas").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listKeys").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (expand != null) + { + _queryParameters.Add(string.Format("$expand={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(expand, this.Client.SerializationSettings).Trim('"')))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -2170,12 +2091,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; - if(parameters != null) - { - _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); - _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); - _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); - } // Set Credentials if (this.Client.Credentials != null) { @@ -2200,14 +2115,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -2217,10 +2131,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -2233,7 +2143,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2247,7 +2157,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -2274,8 +2184,7 @@ internal StorageAccountsOperations (StorageManagementClient client) /// List service SAS credentials of a specific resource. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2320,6 +2229,12 @@ internal StorageAccountsOperations (StorageManagementClient client) { parameters.Validate(); } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2334,10 +2249,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2358,22 +2269,6 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -2392,10 +2287,10 @@ internal StorageAccountsOperations (StorageManagementClient client) // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/ListServiceSas").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/listServiceSas").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -2468,14 +2363,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -2485,10 +2379,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -2531,156 +2421,29 @@ internal StorageAccountsOperations (StorageManagementClient client) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); } - return _result; - - - - - - } - /// - /// A failover request can be triggered for a storage account in the event a - /// primary endpoint becomes unavailable for any reason. The failover occurs - /// from the storage account's primary cluster to the secondary cluster for - /// RA-GRS accounts. The secondary cluster will become primary after failover - /// and the account is converted to LRS. In the case of a Planned Failover, the - /// primary and secondary clusters are swapped after failover and the account - /// remains geo-replicated. Failover should continue to be used in the event of - /// availability issues as Planned failover is only available while the primary - /// and secondary endpoints are available. The primary use case of a Planned - /// Failover is disaster recovery testing drills. This type of failover is - /// invoked by setting FailoverType parameter to 'Planned'. Learn more about - /// the failover options here- - /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The parameter is set to 'Planned' to indicate whether a Planned failover is - /// requested. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task FailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginFailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } - - /// - /// Live Migration of storage account to enable Hns - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// Required. Hierarchical namespace migration type can either be a - /// hierarchical namespace validation request 'HnsOnValidationRequest' or a - /// hydration request 'HnsOnHydrationRequest'. The validation request will - /// validate the migration whereas the hydration request will migrate the - /// account. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task HierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } - - /// - /// Abort live Migration of storage account to enable Hns - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } - - /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The request parameters required to perform storage account migration. - /// - /// - /// Headers that will be added to request. - /// - /// - /// The cancellation token. - /// - public async System.Threading.Tasks.Task> CustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - // Send Request - Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, parameters, customHeaders, cancellationToken).ConfigureAwait(false); - return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); - } + return _result; + + + + + } /// - /// Gets the status of the ongoing migration for the specified storage account. + /// Regenerates one of the access keys or Kerberos keys for the specified + /// storage account. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// The name of storage keys that want to be regenerated, possible values are + /// key1, key2, kerb1, kerb2. + /// /// /// Headers that will be added to request. /// @@ -2702,12 +2465,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> GetCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> RegenerateKeyWithHttpMessagesAsync(string resourceGroupName, string accountName, string keyName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - string migrationName = "default"; + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2722,10 +2491,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -2746,22 +2511,10 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + StorageAccountRegenerateKeyParameters regenerateKey = new StorageAccountRegenerateKeyParameters(); + if(keyName != null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + regenerateKey.KeyName = keyName; } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; @@ -2772,20 +2525,19 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("migrationName", migrationName); + tracingParameters.Add("regenerateKey", regenerateKey); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetCustomerInitiatedMigration", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "RegenerateKey", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/accountMigrations/{migrationName}").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/regenerateKey").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{migrationName}", System.Uri.EscapeDataString(migrationName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -2799,7 +2551,7 @@ internal StorageAccountsOperations (StorageManagementClient client) // Create HTTP transport objects var _httpRequest = new System.Net.Http.HttpRequestMessage(); System.Net.Http.HttpResponseMessage _httpResponse = null; - _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.Method = new System.Net.Http.HttpMethod("POST"); _httpRequest.RequestUri = new System.Uri(_url); // Set Headers if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) @@ -2828,6 +2580,12 @@ internal StorageAccountsOperations (StorageManagementClient client) } // Serialize Request string _requestContent = null; + if(regenerateKey != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(regenerateKey, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } // Set Credentials if (this.Client.Credentials != null) { @@ -2852,11 +2610,11 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new ErrorResponseAutoGeneratedException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - ErrorResponseAutoGenerated _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { ex.Body = _errorBody; @@ -2880,7 +2638,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -2894,7 +2652,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -2921,8 +2679,7 @@ internal StorageAccountsOperations (StorageManagementClient client) /// Restore blobs in the specified blob ranges /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2941,10 +2698,10 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// The cancellation token. /// - public async System.Threading.Tasks.Task> RestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> RestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { // Send Request - Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginRestoreBlobRangesWithHttpMessagesAsync(resourceGroupName, accountName, timeToRestore, blobRanges, customHeaders, cancellationToken).ConfigureAwait(false); + Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginRestoreBlobRangesWithHttpMessagesAsync(resourceGroupName, accountName, timeToRestore, blobRanges, customHeaders, cancellationToken).ConfigureAwait(false); return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); } @@ -2952,8 +2709,7 @@ internal StorageAccountsOperations (StorageManagementClient client) /// Revoke user delegation keys. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -2984,6 +2740,12 @@ internal StorageAccountsOperations (StorageManagementClient client) + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -2998,10 +2760,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3017,21 +2775,9 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); } - } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } // Tracing @@ -3052,9 +2798,9 @@ internal StorageAccountsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/revokeUserDelegationKeys").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -3121,14 +2867,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3138,10 +2883,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3173,6 +2914,38 @@ internal StorageAccountsOperations (StorageManagementClient client) } + /// + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Target sku name for the account + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> CustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string targetSkuName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, targetSkuName, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + /// /// Asynchronously creates a new storage account with the specified parameters. /// If an account is already created and a subsequent create request is issued @@ -3181,8 +2954,7 @@ internal StorageAccountsOperations (StorageManagementClient client) /// issued with the exact same set of properties, the request will succeed. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -3213,7 +2985,7 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -3227,6 +2999,12 @@ internal StorageAccountsOperations (StorageManagementClient client) { parameters.Validate(); } + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3241,10 +3019,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3265,22 +3039,6 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -3300,9 +3058,9 @@ internal StorageAccountsOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -3375,14 +3133,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 202) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3392,10 +3149,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3408,7 +3161,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -3434,6 +3187,19 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); } } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -3446,33 +3212,16 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// A failover request can be triggered for a storage account in the event a - /// primary endpoint becomes unavailable for any reason. The failover occurs - /// from the storage account's primary cluster to the secondary cluster for - /// RA-GRS accounts. The secondary cluster will become primary after failover - /// and the account is converted to LRS. In the case of a Planned Failover, the - /// primary and secondary clusters are swapped after failover and the account - /// remains geo-replicated. Failover should continue to be used in the event of - /// availability issues as Planned failover is only available while the primary - /// and secondary endpoints are available. The primary use case of a Planned - /// Failover is disaster recovery testing drills. This type of failover is - /// invoked by setting FailoverType parameter to 'Planned'. Learn more about - /// the failover options here- - /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance + /// Abort live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The parameter is set to 'Planned' to indicate whether a Planned failover is - /// requested. - /// /// /// Headers that will be added to request. /// @@ -3491,12 +3240,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task BeginFailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3511,10 +3266,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3535,23 +3286,6 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -3561,29 +3295,24 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("failoverType", failoverType); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginFailover", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginAbortHierarchicalNamespaceMigration", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/aborthnsonmigration").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (failoverType != null) - { - _queryParameters.Add(string.Format("failoverType={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(failoverType, this.Client.SerializationSettings).Trim('"')))); - } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -3644,14 +3373,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 202) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -3661,10 +3389,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -3677,7 +3401,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -3685,6 +3409,19 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -3697,23 +3434,31 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Live Migration of storage account to enable Hns + /// A failover request can be triggered for a storage account in the event a + /// primary endpoint becomes unavailable for any reason. The failover occurs + /// from the storage account's primary cluster to the secondary cluster for + /// RA-GRS accounts. The secondary cluster will become primary after failover + /// and the account is converted to LRS. In the case of a Planned Failover, the + /// primary and secondary clusters are swapped after failover and the account + /// remains geo-replicated. Failover should continue to be used in the event of + /// availability issues as Planned failover is only available while the primary + /// and secondary endpoints are available. The primary use case of a Planned + /// Failover is disaster recovery testing drills. This type of failover is + /// invoked by setting FailoverType parameter to 'Planned'. Learn more about + /// the failover options here- + /// https://learn.microsoft.com/azure/storage/common/storage-disaster-recovery-guidance /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Required. Hierarchical namespace migration type can either be a - /// hierarchical namespace validation request 'HnsOnValidationRequest' or a - /// hydration request 'HnsOnHydrationRequest'. The validation request will - /// validate the migration whereas the hydration request will migrate the - /// account. + /// + /// The parameter is set to 'Planned' to indicate whether a Planned failover is + /// requested. /// /// /// Headers that will be added to request. @@ -3733,12 +3478,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginFailoverWithHttpMessagesAsync(string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3753,10 +3504,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -3768,34 +3515,14 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); } - if (accountName.Length < 3) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); - } - if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); - } - } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) + if (accountName.Length < 3) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } - } - if (requestType == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "requestType"); } // Tracing @@ -3807,28 +3534,28 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); - tracingParameters.Add("requestType", requestType); + tracingParameters.Add("failoverType", failoverType); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginHierarchicalNamespaceMigration", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginFailover", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/hnsonmigration").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/failover").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } - if (requestType != null) + if (failoverType != null) { - _queryParameters.Add(string.Format("requestType={0}", System.Uri.EscapeDataString(requestType))); + _queryParameters.Add(string.Format("failoverType={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(failoverType, this.Client.SerializationSettings).Trim('"')))); } if (_queryParameters.Count > 0) { @@ -3918,7 +3645,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -3926,6 +3653,19 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -3938,17 +3678,23 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Abort live Migration of storage account to enable Hns + /// Live Migration of storage account to enable Hns /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// Required. Hierarchical namespace migration type can either be a + /// hierarchical namespace validation request 'HnsOnValidationRequest' or a + /// hydration request 'HnsOnHydrationRequest'. The validation request will + /// validate the migration whereas the hydration request will migrate the + /// account. + /// /// /// Headers that will be added to request. /// @@ -3967,12 +3713,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string requestType, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -3987,10 +3739,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -4011,22 +3759,11 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) + if (requestType == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "requestType"); } - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -4036,24 +3773,29 @@ internal StorageAccountsOperations (StorageManagementClient client) System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); tracingParameters.Add("resourceGroupName", resourceGroupName); tracingParameters.Add("accountName", accountName); + tracingParameters.Add("requestType", requestType); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginAbortHierarchicalNamespaceMigration", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginHierarchicalNamespaceMigration", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/aborthnsonmigration").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/hnsonmigration").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) { _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); } + if (requestType != null) + { + _queryParameters.Add(string.Format("requestType={0}", System.Uri.EscapeDataString(requestType))); + } if (_queryParameters.Count > 0) { _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); @@ -4142,7 +3884,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -4150,6 +3892,19 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); @@ -4162,24 +3917,21 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. + /// Restore blobs in the specified blob ranges /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// The request parameters required to perform storage account migration. + /// + /// Restore blob to the specified time. + /// + /// + /// Blob ranges to restore. /// /// /// Headers that will be added to request. @@ -4190,6 +3942,9 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// + /// + /// Thrown when unable to deserialize the response + /// /// /// Thrown when a required parameter is null /// @@ -4199,20 +3954,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> BeginCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginRestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - if (parameters == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "parameters"); - } - if (parameters != null) + if (this.Client.ApiVersion == null) { - parameters.Validate(); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -4227,10 +3980,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -4251,22 +4000,12 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) + BlobRestoreParameters parameters = new BlobRestoreParameters(); + if(blobRanges != null) { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } + parameters.BlobRanges = blobRanges; } + parameters.TimeToRestore = timeToRestore; // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -4280,15 +4019,15 @@ internal StorageAccountsOperations (StorageManagementClient client) tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginCustomerInitiatedMigration", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginRestoreBlobRanges", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/startAccountMigration").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/restoreBlobRanges").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -4361,11 +4100,11 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 202) { - var ex = new ErrorResponseAutoGeneratedException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - ErrorResponseAutoGenerated _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { ex.Body = _errorBody; @@ -4389,7 +4128,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -4397,9 +4136,45 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + // Deserialize Response + if ((int)_statusCode == 202) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } try { - _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); } catch (Newtonsoft.Json.JsonException ex) { @@ -4422,22 +4197,23 @@ internal StorageAccountsOperations (StorageManagementClient client) } /// - /// Restore blobs in the specified blob ranges + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Restore blob to the specified time. - /// - /// - /// Blob ranges to restore. + /// + /// Target sku name for the account /// /// /// Headers that will be added to request. @@ -4448,9 +4224,6 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// Thrown when the operation returned an invalid status code /// - /// - /// Thrown when unable to deserialize the response - /// /// /// Thrown when a required parameter is null /// @@ -4460,12 +4233,18 @@ internal StorageAccountsOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task> BeginRestoreBlobRangesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task> BeginCustomerInitiatedMigrationWithHttpMessagesAsync(string resourceGroupName, string accountName, string targetSkuName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + if (resourceGroupName == null) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); @@ -4480,10 +4259,6 @@ internal StorageAccountsOperations (StorageManagementClient client) { throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); } - if (!System.Text.RegularExpressions.Regex.IsMatch(resourceGroupName, "^[-\\w\\._\\(\\)]+$")) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "resourceGroupName", "^[-\\w\\._\\(\\)]+$"); - } } if (accountName == null) { @@ -4504,28 +4279,11 @@ internal StorageAccountsOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); } } - if (this.Client.ApiVersion == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); - } - - if (this.Client.SubscriptionId == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); - } - if (this.Client.SubscriptionId != null) - { - if (this.Client.SubscriptionId.Length < 1) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); - } - } - BlobRestoreParameters parameters = new BlobRestoreParameters(); - if(blobRanges != null) + StorageAccountMigration parameters = new StorageAccountMigration(); + if(targetSkuName != null) { - parameters.BlobRanges = blobRanges; + parameters.TargetSkuName = targetSkuName; } - parameters.TimeToRestore = timeToRestore; // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -4539,15 +4297,15 @@ internal StorageAccountsOperations (StorageManagementClient client) tracingParameters.Add("parameters", parameters); tracingParameters.Add("cancellationToken", cancellationToken); - Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginRestoreBlobRanges", tracingParameters); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginCustomerInitiatedMigration", tracingParameters); } // Construct URL var _baseUrl = this.Client.BaseUri.AbsoluteUri; - var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/restoreBlobRanges").ToString(); + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/startAccountMigration").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); if (this.Client.ApiVersion != null) @@ -4620,14 +4378,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200 && (int)_statusCode != 202) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -4637,10 +4394,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -4653,7 +4406,7 @@ internal StorageAccountsOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); _result.Request = _httpRequest; _result.Response = _httpResponse; @@ -4661,41 +4414,18 @@ internal StorageAccountsOperations (StorageManagementClient client) { _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); } - // Deserialize Response - if ((int)_statusCode == 200) + try { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) - { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); - } + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); } - // Deserialize Response - if ((int)_statusCode == 202) + catch (Newtonsoft.Json.JsonException ex) { - _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - try - { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); - } - catch (Newtonsoft.Json.JsonException ex) + _httpRequest.Dispose(); + if (_httpResponse != null) { - _httpRequest.Dispose(); - if (_httpResponse != null) - { - _httpResponse.Dispose(); - } - throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + _httpResponse.Dispose(); } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); } if (_shouldTrace) { @@ -4821,14 +4551,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -4838,10 +4567,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -4868,7 +4593,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { @@ -5005,14 +4730,13 @@ internal StorageAccountsOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -5022,10 +4746,6 @@ internal StorageAccountsOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) - { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); - } if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -5052,7 +4772,7 @@ internal StorageAccountsOperations (StorageManagementClient client) _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); try { - _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); } catch (Newtonsoft.Json.JsonException ex) { diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperationsExtensions.cs index 6a3c5c2873d3..17563735a38e 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageAccountsOperationsExtensions.cs @@ -40,99 +40,70 @@ public static CheckNameAvailabilityResult CheckNameAvailability(this IStorageAcc } } /// - /// Asynchronously creates a new storage account with the specified parameters. - /// If an account is already created and a subsequent create request is issued - /// with different properties, the account properties will be updated. If an - /// account is already created and a subsequent create or update request is - /// issued with the exact same set of properties, the request will succeed. + /// Lists all the storage accounts available under the subscription. Note that + /// storage keys are not returned; use the ListKeys operation for this. /// /// /// The operations group for this extension method. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - public static StorageAccount Create(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountCreateParameters parameters) + public static Microsoft.Rest.Azure.IPage List(this IStorageAccountsOperations operations) { - return ((IStorageAccountsOperations)operations).CreateAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).ListAsync().GetAwaiter().GetResult(); } /// - /// Asynchronously creates a new storage account with the specified parameters. - /// If an account is already created and a subsequent create request is issued - /// with different properties, the account properties will be updated. If an - /// account is already created and a subsequent create or update request is - /// issued with the exact same set of properties, the request will succeed. + /// Lists all the storage accounts available under the subscription. Note that + /// storage keys are not returned; use the ListKeys operation for this. /// /// /// The operations group for this extension method. /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task CreateAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListAsync(this IStorageAccountsOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Deletes a storage account in Microsoft Azure. + /// Lists all the storage accounts available under the given resource group. + /// Note that storage keys are not returned; use the ListKeys operation for + /// this. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// - /// - /// 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. - /// - public static void Delete(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) + public static Microsoft.Rest.Azure.IPage ListByResourceGroup(this IStorageAccountsOperations operations, string resourceGroupName) { - ((IStorageAccountsOperations)operations).DeleteAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).ListByResourceGroupAsync(resourceGroupName).GetAwaiter().GetResult(); } /// - /// Deletes a storage account in Microsoft Azure. + /// Lists all the storage accounts available under the given resource group. + /// Note that storage keys are not returned; use the ListKeys operation for + /// this. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. + /// The name of the resource group. The name is case insensitive. /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task DeleteAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListByResourceGroupAsync(this IStorageAccountsOperations operations, string resourceGroupName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.ListByResourceGroupWithHttpMessagesAsync(resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } } /// /// Returns the properties for the specified storage account including but not @@ -143,8 +114,7 @@ public static void Delete(this IStorageAccountsOperations operations, string res /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -170,8 +140,7 @@ public static void Delete(this IStorageAccountsOperations operations, string res /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -194,52 +163,40 @@ public static void Delete(this IStorageAccountsOperations operations, string res } } /// - /// The update operation can be used to update the SKU, encryption, access - /// tier, or tags for a storage account. It can also be used to map the account - /// to a custom domain. Only one custom domain is supported per storage - /// account; the replacement/change of custom domain is not supported. In order - /// to replace an old custom domain, the old value must be cleared/unregistered - /// before a new value can be set. The update of multiple properties is - /// supported. This call does not change the storage keys for the account. If - /// you want to change the storage account keys, use the regenerate keys - /// operation. The location and name of the storage account cannot be changed - /// after creation. + /// Asynchronously creates a new storage account with the specified parameters. + /// If an account is already created and a subsequent create request is issued + /// with different properties, the account properties will be updated. If an + /// account is already created and a subsequent create or update request is + /// issued with the exact same set of properties, the request will succeed. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static StorageAccount Update(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters) + public static StorageAccount Create(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountCreateParameters parameters) { - return ((IStorageAccountsOperations)operations).UpdateAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).CreateAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// The update operation can be used to update the SKU, encryption, access - /// tier, or tags for a storage account. It can also be used to map the account - /// to a custom domain. Only one custom domain is supported per storage - /// account; the replacement/change of custom domain is not supported. In order - /// to replace an old custom domain, the old value must be cleared/unregistered - /// before a new value can be set. The update of multiple properties is - /// supported. This call does not change the storage keys for the account. If - /// you want to change the storage account keys, use the regenerate keys - /// operation. The location and name of the storage account cannot be changed - /// after creation. + /// Asynchronously creates a new storage account with the specified parameters. + /// If an account is already created and a subsequent create request is issued + /// with different properties, the account properties will be updated. If an + /// account is already created and a subsequent create or update request is + /// issued with the exact same set of properties, the request will succeed. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -249,165 +206,101 @@ public static StorageAccount Update(this IStorageAccountsOperations operations, /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task UpdateAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - /// - /// Lists all the storage accounts available under the subscription. Note that - /// storage keys are not returned; use the ListKeys operation for this. - /// - /// - /// The operations group for this extension method. - /// - public static Microsoft.Rest.Azure.IPage List(this IStorageAccountsOperations operations) - { - return ((IStorageAccountsOperations)operations).ListAsync().GetAwaiter().GetResult(); - } - - /// - /// Lists all the storage accounts available under the subscription. Note that - /// storage keys are not returned; use the ListKeys operation for this. - /// - /// - /// The operations group for this extension method. - /// - /// - /// The cancellation token. - /// - public static async System.Threading.Tasks.Task> ListAsync(this IStorageAccountsOperations operations, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - using (var _result = await operations.ListWithHttpMessagesAsync(null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - /// - /// Lists all the storage accounts available under the given resource group. - /// Note that storage keys are not returned; use the ListKeys operation for - /// this. - /// - /// - /// The operations group for this extension method. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - public static Microsoft.Rest.Azure.IPage ListByResourceGroup(this IStorageAccountsOperations operations, string resourceGroupName) - { - return ((IStorageAccountsOperations)operations).ListByResourceGroupAsync(resourceGroupName).GetAwaiter().GetResult(); - } - - /// - /// Lists all the storage accounts available under the given resource group. - /// Note that storage keys are not returned; use the ListKeys operation for - /// this. - /// - /// - /// The operations group for this extension method. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// The cancellation token. - /// - public static async System.Threading.Tasks.Task> ListByResourceGroupAsync(this IStorageAccountsOperations operations, string resourceGroupName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task CreateAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountCreateParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListByResourceGroupWithHttpMessagesAsync(resourceGroupName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Lists the access keys or Kerberos keys (if active directory enabled) for - /// the specified storage account. + /// The update operation can be used to update the SKU, encryption, access + /// tier, or tags for a storage account. It can also be used to map the account + /// to a custom domain. Only one custom domain is supported per storage + /// account; the replacement/change of custom domain is not supported. In order + /// to replace an old custom domain, the old value must be cleared/unregistered + /// before a new value can be set. The update of multiple properties is + /// supported. This call does not change the storage keys for the account. If + /// you want to change the storage account keys, use the regenerate keys + /// operation. The location and name of the storage account cannot be changed + /// after creation. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Specifies type of the key to be listed. Possible value is kerb. - /// - public static StorageAccountListKeysResult ListKeys(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ListKeyExpand? expand = default(ListKeyExpand?)) + public static StorageAccount Update(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters) { - return ((IStorageAccountsOperations)operations).ListKeysAsync(resourceGroupName, accountName, expand).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).UpdateAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// Lists the access keys or Kerberos keys (if active directory enabled) for - /// the specified storage account. + /// The update operation can be used to update the SKU, encryption, access + /// tier, or tags for a storage account. It can also be used to map the account + /// to a custom domain. Only one custom domain is supported per storage + /// account; the replacement/change of custom domain is not supported. In order + /// to replace an old custom domain, the old value must be cleared/unregistered + /// before a new value can be set. The update of multiple properties is + /// supported. This call does not change the storage keys for the account. If + /// you want to change the storage account keys, use the regenerate keys + /// operation. The location and name of the storage account cannot be changed + /// after creation. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - /// - /// Specifies type of the key to be listed. Possible value is kerb. - /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ListKeysAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ListKeyExpand? expand = default(ListKeyExpand?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task UpdateAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountUpdateParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListKeysWithHttpMessagesAsync(resourceGroupName, accountName, expand, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } /// - /// Regenerates one of the access keys or Kerberos keys for the specified - /// storage account. + /// Deletes a storage account in Microsoft Azure. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static StorageAccountListKeysResult RegenerateKey(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string keyName) + public static void Delete(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) { - return ((IStorageAccountsOperations)operations).RegenerateKeyAsync(resourceGroupName, accountName, keyName).GetAwaiter().GetResult(); + ((IStorageAccountsOperations)operations).DeleteAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } /// - /// Regenerates one of the access keys or Kerberos keys for the specified - /// storage account. + /// Deletes a storage account in Microsoft Azure. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -417,42 +310,37 @@ public static StorageAccountListKeysResult RegenerateKey(this IStorageAccountsOp /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task RegenerateKeyAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string keyName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task DeleteAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.RegenerateKeyWithHttpMessagesAsync(resourceGroupName, accountName, keyName, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } + (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)).Dispose(); } /// - /// List SAS credentials of a storage account. + /// Abort live Migration of storage account to enable Hns /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static ListAccountSasResponse ListAccountSAS(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, AccountSasParameters parameters) + public static StorageAccountsAbortHierarchicalNamespaceMigrationHeaders AbortHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) { - return ((IStorageAccountsOperations)operations).ListAccountSASAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).AbortHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } /// - /// List SAS credentials of a storage account. + /// Abort live Migration of storage account to enable Hns /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -462,42 +350,40 @@ public static ListAccountSasResponse ListAccountSAS(this IStorageAccountsOperati /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ListAccountSASAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, AccountSasParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task AbortHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListAccountSASWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { - return _result.Body; + return _result.Headers; } } /// - /// List service SAS credentials of a specific resource. + /// Gets the status of the ongoing migration for the specified storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ServiceSasParameters parameters) + public static StorageAccountMigration GetCustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) { - return ((IStorageAccountsOperations)operations).ListServiceSASAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).GetCustomerInitiatedMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); } /// - /// List service SAS credentials of a specific resource. + /// Gets the status of the ongoing migration for the specified storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -507,9 +393,9 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task ListServiceSASAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ServiceSasParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task GetCustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.ListServiceSASWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.GetCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -533,8 +419,7 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -545,9 +430,9 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// The parameter is set to 'Planned' to indicate whether a Planned failover is /// requested. /// - public static void Failover(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?)) + public static StorageAccountsFailoverHeaders Failover(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?)) { - ((IStorageAccountsOperations)operations).FailoverAsync(resourceGroupName, accountName, failoverType).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).FailoverAsync(resourceGroupName, accountName, failoverType).GetAwaiter().GetResult(); } /// @@ -569,8 +454,7 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -584,9 +468,12 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task FailoverAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task FailoverAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.FailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.FailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } } /// /// Live Migration of storage account to enable Hns @@ -595,8 +482,7 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -610,9 +496,9 @@ public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperati /// validate the migration whereas the hydration request will migrate the /// account. /// - public static void HierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType) + public static StorageAccountsHierarchicalNamespaceMigrationHeaders HierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType) { - ((IStorageAccountsOperations)operations).HierarchicalNamespaceMigrationAsync(resourceGroupName, accountName, requestType).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).HierarchicalNamespaceMigrationAsync(resourceGroupName, accountName, requestType).GetAwaiter().GetResult(); } /// @@ -622,8 +508,7 @@ public static void HierarchicalNamespaceMigration(this IStorageAccountsOperation /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -640,39 +525,40 @@ public static void HierarchicalNamespaceMigration(this IStorageAccountsOperation /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task HierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task HierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.HierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.HierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } } /// - /// Abort live Migration of storage account to enable Hns + /// List SAS credentials of a storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static void AbortHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) + public static ListAccountSasResponse ListAccountSAS(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, AccountSasParameters parameters) { - ((IStorageAccountsOperations)operations).AbortHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).ListAccountSASAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// Abort live Migration of storage account to enable Hns + /// List SAS credentials of a storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -682,94 +568,91 @@ public static void AbortHierarchicalNamespaceMigration(this IStorageAccountsOper /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task AbortHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ListAccountSASAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, AccountSasParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.AbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.ListAccountSASWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } } /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. + /// Lists the access keys or Kerberos keys (if active directory enabled) for + /// the specified storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static StorageAccountsCustomerInitiatedMigrationHeaders CustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountMigration parameters) + /// + /// Specifies type of the key to be listed. Possible value is kerb. + /// + public static StorageAccountListKeysResult ListKeys(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum70? expand = default(Enum70?)) { - return ((IStorageAccountsOperations)operations).CustomerInitiatedMigrationAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).ListKeysAsync(resourceGroupName, accountName, expand).GetAwaiter().GetResult(); } /// - /// Account Migration request can be triggered for a storage account to change - /// its redundancy level. The migration updates the non-zonal redundant storage - /// account to a zonal redundant account or vice-versa in order to have better - /// reliability and availability. Zone-redundant storage (ZRS) replicates your - /// storage account synchronously across three Azure availability zones in the - /// primary region. + /// Lists the access keys or Kerberos keys (if active directory enabled) for + /// the specified storage account. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// + /// + /// Specifies type of the key to be listed. Possible value is kerb. + /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task CustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ListKeysAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum70? expand = default(Enum70?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.CustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ListKeysWithHttpMessagesAsync(resourceGroupName, accountName, expand, null, cancellationToken).ConfigureAwait(false)) { - return _result.Headers; + return _result.Body; } } /// - /// Gets the status of the ongoing migration for the specified storage account. + /// List service SAS credentials of a specific resource. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static StorageAccountMigration GetCustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) + public static ListServiceSasResponse ListServiceSAS(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ServiceSasParameters parameters) { - return ((IStorageAccountsOperations)operations).GetCustomerInitiatedMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).ListServiceSASAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); } /// - /// Gets the status of the ongoing migration for the specified storage account. + /// List service SAS credentials of a specific resource. /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -779,9 +662,54 @@ public static StorageAccountMigration GetCustomerInitiatedMigration(this IStorag /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task GetCustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task ListServiceSASAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, ServiceSasParameters parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.GetCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.ListServiceSASWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Regenerates one of the access keys or Kerberos keys for the specified + /// storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static StorageAccountListKeysResult RegenerateKey(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string keyName) + { + return ((IStorageAccountsOperations)operations).RegenerateKeyAsync(resourceGroupName, accountName, keyName).GetAwaiter().GetResult(); + } + + /// + /// Regenerates one of the access keys or Kerberos keys for the specified + /// storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task RegenerateKeyAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string keyName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.RegenerateKeyWithHttpMessagesAsync(resourceGroupName, accountName, keyName, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } @@ -793,8 +721,7 @@ public static StorageAccountMigration GetCustomerInitiatedMigration(this IStorag /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -813,8 +740,7 @@ public static BlobRestoreStatus RestoreBlobRanges(this IStorageAccountsOperation /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -838,8 +764,7 @@ public static BlobRestoreStatus RestoreBlobRanges(this IStorageAccountsOperation /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -858,8 +783,7 @@ public static void RevokeUserDelegationKeys(this IStorageAccountsOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -874,6 +798,59 @@ public static void RevokeUserDelegationKeys(this IStorageAccountsOperations oper (await operations.RevokeUserDelegationKeysWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)).Dispose(); } /// + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static StorageAccountsCustomerInitiatedMigrationHeaders CustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string targetSkuName) + { + return ((IStorageAccountsOperations)operations).CustomerInitiatedMigrationAsync(resourceGroupName, accountName, targetSkuName).GetAwaiter().GetResult(); + } + + /// + /// Account Migration request can be triggered for a storage account to change + /// its redundancy level. The migration updates the non-zonal redundant storage + /// account to a zonal redundant account or vice-versa in order to have better + /// reliability and availability. Zone-redundant storage (ZRS) replicates your + /// storage account synchronously across three Azure availability zones in the + /// primary region. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task CustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string targetSkuName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.CustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, targetSkuName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// /// Asynchronously creates a new storage account with the specified parameters. /// If an account is already created and a subsequent create request is issued /// with different properties, the account properties will be updated. If an @@ -884,8 +861,7 @@ public static void RevokeUserDelegationKeys(this IStorageAccountsOperations oper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -908,8 +884,7 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -927,6 +902,49 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati } } /// + /// Abort live Migration of storage account to enable Hns + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static StorageAccountsAbortHierarchicalNamespaceMigrationHeaders BeginAbortHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) + { + return ((IStorageAccountsOperations)operations).BeginAbortHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Abort live Migration of storage account to enable Hns + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginAbortHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// /// A failover request can be triggered for a storage account in the event a /// primary endpoint becomes unavailable for any reason. The failover occurs /// from the storage account's primary cluster to the secondary cluster for @@ -945,8 +963,7 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -957,9 +974,9 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// The parameter is set to 'Planned' to indicate whether a Planned failover is /// requested. /// - public static void BeginFailover(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?)) + public static StorageAccountsFailoverHeaders BeginFailover(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?)) { - ((IStorageAccountsOperations)operations).BeginFailoverAsync(resourceGroupName, accountName, failoverType).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).BeginFailoverAsync(resourceGroupName, accountName, failoverType).GetAwaiter().GetResult(); } /// @@ -981,8 +998,7 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -996,9 +1012,12 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task BeginFailoverAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, FailoverType? failoverType = default(FailoverType?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task BeginFailoverAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, Enum56? failoverType = default(Enum56?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.BeginFailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.BeginFailoverWithHttpMessagesAsync(resourceGroupName, accountName, failoverType, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } } /// /// Live Migration of storage account to enable Hns @@ -1007,8 +1026,7 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1022,9 +1040,9 @@ public static StorageAccount BeginCreate(this IStorageAccountsOperations operati /// validate the migration whereas the hydration request will migrate the /// account. /// - public static void BeginHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType) + public static StorageAccountsHierarchicalNamespaceMigrationHeaders BeginHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType) { - ((IStorageAccountsOperations)operations).BeginHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName, requestType).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).BeginHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName, requestType).GetAwaiter().GetResult(); } /// @@ -1034,8 +1052,7 @@ public static void BeginHierarchicalNamespaceMigration(this IStorageAccountsOper /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1052,39 +1069,40 @@ public static void BeginHierarchicalNamespaceMigration(this IStorageAccountsOper /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task BeginHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task BeginHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string requestType, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.BeginHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, requestType, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } } /// - /// Abort live Migration of storage account to enable Hns + /// Restore blobs in the specified blob ranges /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static void BeginAbortHierarchicalNamespaceMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName) + public static BlobRestoreStatus BeginRestoreBlobRanges(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges) { - ((IStorageAccountsOperations)operations).BeginAbortHierarchicalNamespaceMigrationAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).BeginRestoreBlobRangesAsync(resourceGroupName, accountName, timeToRestore, blobRanges).GetAwaiter().GetResult(); } /// - /// Abort live Migration of storage account to enable Hns + /// Restore blobs in the specified blob ranges /// /// /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1094,9 +1112,12 @@ public static void BeginAbortHierarchicalNamespaceMigration(this IStorageAccount /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task BeginAbortHierarchicalNamespaceMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task BeginRestoreBlobRangesAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - (await operations.BeginAbortHierarchicalNamespaceMigrationWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + using (var _result = await operations.BeginRestoreBlobRangesWithHttpMessagesAsync(resourceGroupName, accountName, timeToRestore, blobRanges, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } } /// /// Account Migration request can be triggered for a storage account to change @@ -1110,17 +1131,16 @@ public static void BeginAbortHierarchicalNamespaceMigration(this IStorageAccount /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// 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. /// - public static StorageAccountsCustomerInitiatedMigrationHeaders BeginCustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountMigration parameters) + public static StorageAccountsCustomerInitiatedMigrationHeaders BeginCustomerInitiatedMigration(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string targetSkuName) { - return ((IStorageAccountsOperations)operations).BeginCustomerInitiatedMigrationAsync(resourceGroupName, accountName, parameters).GetAwaiter().GetResult(); + return ((IStorageAccountsOperations)operations).BeginCustomerInitiatedMigrationAsync(resourceGroupName, accountName, targetSkuName).GetAwaiter().GetResult(); } /// @@ -1135,8 +1155,7 @@ public static StorageAccountsCustomerInitiatedMigrationHeaders BeginCustomerInit /// The operations group for this extension method. /// /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. + /// The name of the resource group. The name is case insensitive. /// /// /// The name of the storage account within the specified resource group. @@ -1146,59 +1165,14 @@ public static StorageAccountsCustomerInitiatedMigrationHeaders BeginCustomerInit /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task BeginCustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, StorageAccountMigration parameters, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task BeginCustomerInitiatedMigrationAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, string targetSkuName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { - using (var _result = await operations.BeginCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, parameters, null, cancellationToken).ConfigureAwait(false)) + using (var _result = await operations.BeginCustomerInitiatedMigrationWithHttpMessagesAsync(resourceGroupName, accountName, targetSkuName, null, cancellationToken).ConfigureAwait(false)) { return _result.Headers; } } /// - /// Restore blobs in the specified blob ranges - /// - /// - /// The operations group for this extension method. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - public static BlobRestoreStatus BeginRestoreBlobRanges(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges) - { - return ((IStorageAccountsOperations)operations).BeginRestoreBlobRangesAsync(resourceGroupName, accountName, timeToRestore, blobRanges).GetAwaiter().GetResult(); - } - - /// - /// Restore blobs in the specified blob ranges - /// - /// - /// The operations group for this extension method. - /// - /// - /// The name of the resource group within the user's subscription. The name is - /// case insensitive. - /// - /// - /// 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. - /// - /// - /// The cancellation token. - /// - public static async System.Threading.Tasks.Task BeginRestoreBlobRangesAsync(this IStorageAccountsOperations operations, string resourceGroupName, string accountName, System.DateTime timeToRestore, System.Collections.Generic.IList blobRanges, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) - { - using (var _result = await operations.BeginRestoreBlobRangesWithHttpMessagesAsync(resourceGroupName, accountName, timeToRestore, blobRanges, null, cancellationToken).ConfigureAwait(false)) - { - return _result.Body; - } - } - /// /// Lists all the storage accounts available under the subscription. Note that /// storage keys are not returned; use the ListKeys operation for this. /// diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageManagementClient.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageManagementClient.cs index c126d15da363..efddff66d200 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/StorageManagementClient.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageManagementClient.cs @@ -38,9 +38,9 @@ public partial class StorageManagementClient : Microsoft.Rest.ServiceClient - /// The ID of the target subscription. + /// The ID of the target subscription. The value must be an UUID. /// - public string SubscriptionId { get; set;} + public System.Guid SubscriptionId { get; set;} /// /// The preferred language for the response. @@ -65,10 +65,6 @@ public partial class StorageManagementClient : Microsoft.Rest.ServiceClient public virtual IOperations Operations { get; private set; } /// - /// Gets the ISkusOperations - /// - public virtual ISkusOperations Skus { get; private set; } - /// /// Gets the IStorageAccountsOperations /// public virtual IStorageAccountsOperations StorageAccounts { get; private set; } @@ -81,14 +77,50 @@ public partial class StorageManagementClient : Microsoft.Rest.ServiceClient public virtual IUsagesOperations Usages { get; private set; } /// - /// Gets the IManagementPoliciesOperations + /// Gets the ISkusOperations /// - public virtual IManagementPoliciesOperations ManagementPolicies { get; private set; } + public virtual ISkusOperations Skus { get; private set; } + /// + /// Gets the IBlobServicesOperations + /// + public virtual IBlobServicesOperations BlobServices { get; private set; } + /// + /// Gets the IBlobContainersOperations + /// + public virtual IBlobContainersOperations BlobContainers { get; private set; } + /// + /// Gets the IEncryptionScopesOperations + /// + public virtual IEncryptionScopesOperations EncryptionScopes { get; private set; } + /// + /// Gets the IFileServicesOperations + /// + public virtual IFileServicesOperations FileServices { get; private set; } + /// + /// Gets the IFileSharesOperations + /// + public virtual IFileSharesOperations FileShares { get; private set; } /// /// Gets the IBlobInventoryPoliciesOperations /// public virtual IBlobInventoryPoliciesOperations BlobInventoryPolicies { get; private set; } /// + /// Gets the ILocalUsersOperations + /// + public virtual ILocalUsersOperations LocalUsers { get; private set; } + /// + /// Gets the IManagementPoliciesOperations + /// + public virtual IManagementPoliciesOperations ManagementPolicies { get; private set; } + /// + /// Gets the INetworkSecurityPerimeterConfigurationsOperations + /// + public virtual INetworkSecurityPerimeterConfigurationsOperations NetworkSecurityPerimeterConfigurations { get; private set; } + /// + /// Gets the IObjectReplicationPoliciesOperations + /// + public virtual IObjectReplicationPoliciesOperations ObjectReplicationPolicies { get; private set; } + /// /// Gets the IPrivateEndpointConnectionsOperations /// public virtual IPrivateEndpointConnectionsOperations PrivateEndpointConnections { get; private set; } @@ -97,33 +129,33 @@ public partial class StorageManagementClient : Microsoft.Rest.ServiceClient public virtual IPrivateLinkResourcesOperations PrivateLinkResources { get; private set; } /// - /// Gets the IObjectReplicationPoliciesOperations + /// Gets the IQueueServicesOperations /// - public virtual IObjectReplicationPoliciesOperations ObjectReplicationPolicies { get; private set; } + public virtual IQueueServicesOperations QueueServices { get; private set; } /// - /// Gets the ILocalUsersOperations + /// Gets the IQueueOperations /// - public virtual ILocalUsersOperations LocalUsers { get; private set; } + public virtual IQueueOperations Queue { get; private set; } /// - /// Gets the IEncryptionScopesOperations + /// Gets the IStorageTaskAssignmentsInstancesReportOperations /// - public virtual IEncryptionScopesOperations EncryptionScopes { get; private set; } + public virtual IStorageTaskAssignmentsInstancesReportOperations StorageTaskAssignmentsInstancesReport { get; private set; } /// - /// Gets the IBlobServicesOperations + /// Gets the IStorageTaskAssignmentsOperations /// - public virtual IBlobServicesOperations BlobServices { get; private set; } + public virtual IStorageTaskAssignmentsOperations StorageTaskAssignments { get; private set; } /// - /// Gets the IBlobContainersOperations + /// Gets the IStorageTaskAssignmentInstancesReportOperations /// - public virtual IBlobContainersOperations BlobContainers { get; private set; } + public virtual IStorageTaskAssignmentInstancesReportOperations StorageTaskAssignmentInstancesReport { get; private set; } /// - /// Gets the IFileServicesOperations + /// Gets the ITableServicesOperations /// - public virtual IFileServicesOperations FileServices { get; private set; } + public virtual ITableServicesOperations TableServices { get; private set; } /// - /// Gets the IFileSharesOperations + /// Gets the ITableOperations /// - public virtual IFileSharesOperations FileShares { get; private set; } + public virtual ITableOperations Table { get; private set; } /// /// Initializes a new instance of the StorageManagementClient class. /// @@ -363,21 +395,29 @@ public StorageManagementClient(System.Uri baseUri, Microsoft.Rest.ServiceClientC private void Initialize() { this.Operations = new Operations(this); - this.Skus = new SkusOperations(this); this.StorageAccounts = new StorageAccountsOperations(this); this.DeletedAccounts = new DeletedAccountsOperations(this); this.Usages = new UsagesOperations(this); - this.ManagementPolicies = new ManagementPoliciesOperations(this); - this.BlobInventoryPolicies = new BlobInventoryPoliciesOperations(this); - this.PrivateEndpointConnections = new PrivateEndpointConnectionsOperations(this); - this.PrivateLinkResources = new PrivateLinkResourcesOperations(this); - this.ObjectReplicationPolicies = new ObjectReplicationPoliciesOperations(this); - this.LocalUsers = new LocalUsersOperations(this); - this.EncryptionScopes = new EncryptionScopesOperations(this); + this.Skus = new SkusOperations(this); this.BlobServices = new BlobServicesOperations(this); this.BlobContainers = new BlobContainersOperations(this); + this.EncryptionScopes = new EncryptionScopesOperations(this); this.FileServices = new FileServicesOperations(this); this.FileShares = new FileSharesOperations(this); + this.BlobInventoryPolicies = new BlobInventoryPoliciesOperations(this); + this.LocalUsers = new LocalUsersOperations(this); + this.ManagementPolicies = new ManagementPoliciesOperations(this); + this.NetworkSecurityPerimeterConfigurations = new NetworkSecurityPerimeterConfigurationsOperations(this); + this.ObjectReplicationPolicies = new ObjectReplicationPoliciesOperations(this); + this.PrivateEndpointConnections = new PrivateEndpointConnectionsOperations(this); + this.PrivateLinkResources = new PrivateLinkResourcesOperations(this); + this.QueueServices = new QueueServicesOperations(this); + this.Queue = new QueueOperations(this); + this.StorageTaskAssignmentsInstancesReport = new StorageTaskAssignmentsInstancesReportOperations(this); + this.StorageTaskAssignments = new StorageTaskAssignmentsOperations(this); + this.StorageTaskAssignmentInstancesReport = new StorageTaskAssignmentInstancesReportOperations(this); + this.TableServices = new TableServicesOperations(this); + this.Table = new TableOperations(this); this.BaseUri = new System.Uri("https://management.azure.com"); this.ApiVersion = "2025-01-01"; this.AcceptLanguage = "en-US"; diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperations.cs new file mode 100644 index 000000000000..b4d40a0adb4c --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperations.cs @@ -0,0 +1,497 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentInstancesReportOperations operations. + /// + internal partial class StorageTaskAssignmentInstancesReportOperations : Microsoft.Rest.IServiceOperations, IStorageTaskAssignmentInstancesReportOperations + { + /// + /// Initializes a new instance of the StorageTaskAssignmentInstancesReportOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal StorageTaskAssignmentInstancesReportOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, int? maxpagesize = default(int?), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (storageTaskAssignmentName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "storageTaskAssignmentName"); + } + if (storageTaskAssignmentName != null) + { + if (storageTaskAssignmentName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "storageTaskAssignmentName", 24); + } + if (storageTaskAssignmentName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "storageTaskAssignmentName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(storageTaskAssignmentName, "^[a-z][a-z0-9]{2,23}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "storageTaskAssignmentName", "^[a-z][a-z0-9]{2,23}$"); + } + } + + + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("storageTaskAssignmentName", storageTaskAssignmentName); + tracingParameters.Add("maxpagesize", maxpagesize); + tracingParameters.Add("filter", filter); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}/reports").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{storageTaskAssignmentName}", System.Uri.EscapeDataString(storageTaskAssignmentName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (maxpagesize != null) + { + _queryParameters.Add(string.Format("$maxpagesize={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(maxpagesize, this.Client.SerializationSettings).Trim('"')))); + } + if (filter != null) + { + _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperationsExtensions.cs new file mode 100644 index 000000000000..3999d3eb1d02 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentInstancesReportOperationsExtensions.cs @@ -0,0 +1,122 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for StorageTaskAssignmentInstancesReportOperations + /// + public static partial class StorageTaskAssignmentInstancesReportOperationsExtensions + { + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + public static Microsoft.Rest.Azure.IPage List(this IStorageTaskAssignmentInstancesReportOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, int? maxpagesize = default(int?), string filter = default(string)) + { + return ((IStorageTaskAssignmentInstancesReportOperations)operations).ListAsync(resourceGroupName, accountName, storageTaskAssignmentName, maxpagesize, filter).GetAwaiter().GetResult(); + } + + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this IStorageTaskAssignmentInstancesReportOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, int? maxpagesize = default(int?), string filter = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, maxpagesize, filter, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IStorageTaskAssignmentInstancesReportOperations operations, string nextPageLink) + { + return ((IStorageTaskAssignmentInstancesReportOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Fetch the report summary of a single storage task assignment's instances + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IStorageTaskAssignmentInstancesReportOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperations.cs new file mode 100644 index 000000000000..0f2c5bdbf3da --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperations.cs @@ -0,0 +1,473 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentsInstancesReportOperations operations. + /// + internal partial class StorageTaskAssignmentsInstancesReportOperations : Microsoft.Rest.IServiceOperations, IStorageTaskAssignmentsInstancesReportOperations + { + /// + /// Initializes a new instance of the StorageTaskAssignmentsInstancesReportOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal StorageTaskAssignmentsInstancesReportOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + + + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("maxpagesize", maxpagesize); + tracingParameters.Add("filter", filter); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/reports").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (maxpagesize != null) + { + _queryParameters.Add(string.Format("$maxpagesize={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(maxpagesize, this.Client.SerializationSettings).Trim('"')))); + } + if (filter != null) + { + _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperationsExtensions.cs new file mode 100644 index 000000000000..f6ee4c00e18b --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsInstancesReportOperationsExtensions.cs @@ -0,0 +1,116 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for StorageTaskAssignmentsInstancesReportOperations + /// + public static partial class StorageTaskAssignmentsInstancesReportOperationsExtensions + { + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + public static Microsoft.Rest.Azure.IPage List(this IStorageTaskAssignmentsInstancesReportOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string)) + { + return ((IStorageTaskAssignmentsInstancesReportOperations)operations).ListAsync(resourceGroupName, accountName, maxpagesize, filter).GetAwaiter().GetResult(); + } + + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment instances + /// to be included in the list response. + /// + /// + /// Optional. When specified, it can be used to query using reporting + /// properties. See [Constructing Filter + /// Strings](https://learn.microsoft.com/rest/api/storageservices/querying-tables-and-entities#constructing-filter-strings) + /// for details. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this IStorageTaskAssignmentsInstancesReportOperations operations, string resourceGroupName, string accountName, int? maxpagesize = default(int?), string filter = default(string), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, maxpagesize, filter, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IStorageTaskAssignmentsInstancesReportOperations operations, string nextPageLink) + { + return ((IStorageTaskAssignmentsInstancesReportOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Fetch the report summary of all the storage task assignments and instances + /// in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IStorageTaskAssignmentsInstancesReportOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperations.cs new file mode 100644 index 000000000000..0344e7bcf366 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperations.cs @@ -0,0 +1,1652 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// StorageTaskAssignmentsOperations operations. + /// + internal partial class StorageTaskAssignmentsOperations : Microsoft.Rest.IServiceOperations, IStorageTaskAssignmentsOperations + { + /// + /// Initializes a new instance of the StorageTaskAssignmentsOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal StorageTaskAssignmentsOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// List all the storage task assignments in an account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment Ids to be + /// included in the list response. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, int? top = default(int?), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("top", top); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (top != null) + { + _queryParameters.Add(string.Format("$top={0}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(top, this.Client.SerializationSettings).Trim('"')))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Get the storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (storageTaskAssignmentName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "storageTaskAssignmentName"); + } + if (storageTaskAssignmentName != null) + { + if (storageTaskAssignmentName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "storageTaskAssignmentName", 24); + } + if (storageTaskAssignmentName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "storageTaskAssignmentName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(storageTaskAssignmentName, "^[a-z][a-z0-9]{2,23}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "storageTaskAssignmentName", "^[a-z][a-z0-9]{2,23}$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("storageTaskAssignmentName", storageTaskAssignmentName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{storageTaskAssignmentName}", System.Uri.EscapeDataString(storageTaskAssignmentName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginCreateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Update storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationResponse _response = await BeginUpdateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPutOrPatchOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + public async System.Threading.Tasks.Task> DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + // Send Request + Microsoft.Rest.Azure.AzureOperationHeaderResponse _response = await BeginDeleteWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, customHeaders, cancellationToken).ConfigureAwait(false); + return await this.Client.GetPostOrDeleteOperationResultAsync(_response, customHeaders, cancellationToken).ConfigureAwait(false); + } + + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> BeginCreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (storageTaskAssignmentName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "storageTaskAssignmentName"); + } + if (storageTaskAssignmentName != null) + { + if (storageTaskAssignmentName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "storageTaskAssignmentName", 24); + } + if (storageTaskAssignmentName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "storageTaskAssignmentName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(storageTaskAssignmentName, "^[a-z][a-z0-9]{2,23}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "storageTaskAssignmentName", "^[a-z][a-z0-9]{2,23}$"); + } + } + StorageTaskAssignment parameters = new StorageTaskAssignment(); + if(properties != null) + { + parameters.Properties = properties; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("storageTaskAssignmentName", storageTaskAssignmentName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginCreate", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{storageTaskAssignmentName}", System.Uri.EscapeDataString(storageTaskAssignmentName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200 && (int)_statusCode != 201 && (int)_statusCode != 202) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + // Deserialize Response + if ((int)_statusCode == 201) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Update storage task assignment properties + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Properties of the storage task assignment. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> BeginUpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (storageTaskAssignmentName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "storageTaskAssignmentName"); + } + if (storageTaskAssignmentName != null) + { + if (storageTaskAssignmentName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "storageTaskAssignmentName", 24); + } + if (storageTaskAssignmentName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "storageTaskAssignmentName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(storageTaskAssignmentName, "^[a-z][a-z0-9]{2,23}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "storageTaskAssignmentName", "^[a-z][a-z0-9]{2,23}$"); + } + } + StorageTaskAssignmentUpdateParameters parameters = new StorageTaskAssignmentUpdateParameters(); + if(properties != null) + { + parameters.Properties = properties; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("storageTaskAssignmentName", storageTaskAssignmentName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginUpdate", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{storageTaskAssignmentName}", System.Uri.EscapeDataString(storageTaskAssignmentName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200 && (int)_statusCode != 202) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> BeginDeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (storageTaskAssignmentName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "storageTaskAssignmentName"); + } + if (storageTaskAssignmentName != null) + { + if (storageTaskAssignmentName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "storageTaskAssignmentName", 24); + } + if (storageTaskAssignmentName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "storageTaskAssignmentName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(storageTaskAssignmentName, "^[a-z][a-z0-9]{2,23}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "storageTaskAssignmentName", "^[a-z][a-z0-9]{2,23}$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("storageTaskAssignmentName", storageTaskAssignmentName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "BeginDelete", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/storageTaskAssignments/{storageTaskAssignmentName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{storageTaskAssignmentName}", System.Uri.EscapeDataString(storageTaskAssignmentName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 202 && (int)_statusCode != 204) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationHeaderResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + try + { + _result.Headers = _httpResponse.GetHeadersAsJson().ToObject(Newtonsoft.Json.JsonSerializer.Create(this.Client.DeserializationSettings)); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the headers.", _httpResponse.GetHeadersAsJson().ToString(), ex); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// List all the storage task assignments in an account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperationsExtensions.cs new file mode 100644 index 000000000000..40496bc0f140 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/StorageTaskAssignmentsOperationsExtensions.cs @@ -0,0 +1,491 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for StorageTaskAssignmentsOperations + /// + public static partial class StorageTaskAssignmentsOperationsExtensions + { + /// + /// List all the storage task assignments in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment Ids to be + /// included in the list response. + /// + public static Microsoft.Rest.Azure.IPage List(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, int? top = default(int?)) + { + return ((IStorageTaskAssignmentsOperations)operations).ListAsync(resourceGroupName, accountName, top).GetAwaiter().GetResult(); + } + + /// + /// List all the storage task assignments in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Optional, specifies the maximum number of storage task assignment Ids to be + /// included in the list response. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, int? top = default(int?), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, top, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Get the storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignment Get(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName) + { + return ((IStorageTaskAssignmentsOperations)operations).GetAsync(resourceGroupName, accountName, storageTaskAssignmentName).GetAwaiter().GetResult(); + } + + /// + /// Get the storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task GetAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignment Create(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties) + { + return ((IStorageTaskAssignmentsOperations)operations).CreateAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties).GetAwaiter().GetResult(); + } + + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task CreateAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Update storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignment Update(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties)) + { + return ((IStorageTaskAssignmentsOperations)operations).UpdateAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties).GetAwaiter().GetResult(); + } + + /// + /// Update storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task UpdateAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignmentsDeleteHeaders Delete(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName) + { + return ((IStorageTaskAssignmentsOperations)operations).DeleteAsync(resourceGroupName, accountName, storageTaskAssignmentName).GetAwaiter().GetResult(); + } + + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task DeleteAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignment BeginCreate(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties) + { + return ((IStorageTaskAssignmentsOperations)operations).BeginCreateAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties).GetAwaiter().GetResult(); + } + + /// + /// Asynchronously creates a new storage task assignment sub-resource with the + /// specified parameters. If a storage task assignment is already created and a + /// subsequent create request is issued with different properties, the storage + /// task assignment properties will be updated. If a storage task assignment is + /// already created and a subsequent create or update request is issued with + /// the exact same set of properties, the request will succeed. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginCreateAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentProperties properties, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginCreateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Update storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignment BeginUpdate(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties)) + { + return ((IStorageTaskAssignmentsOperations)operations).BeginUpdateAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties).GetAwaiter().GetResult(); + } + + /// + /// Update storage task assignment properties + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginUpdateAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, StorageTaskAssignmentUpdateProperties properties = default(StorageTaskAssignmentUpdateProperties), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginUpdateWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, properties, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + public static StorageTaskAssignmentsDeleteHeaders BeginDelete(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName) + { + return ((IStorageTaskAssignmentsOperations)operations).BeginDeleteAsync(resourceGroupName, accountName, storageTaskAssignmentName).GetAwaiter().GetResult(); + } + + /// + /// Delete the storage task assignment sub-resource + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The name of the storage task assignment within the specified resource + /// group. Storage task assignment names must be between 3 and 24 characters in + /// length and use numbers and lower-case letters only. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task BeginDeleteAsync(this IStorageTaskAssignmentsOperations operations, string resourceGroupName, string accountName, string storageTaskAssignmentName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.BeginDeleteWithHttpMessagesAsync(resourceGroupName, accountName, storageTaskAssignmentName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Headers; + } + } + /// + /// List all the storage task assignments in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListNext(this IStorageTaskAssignmentsOperations operations, string nextPageLink) + { + return ((IStorageTaskAssignmentsOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// List all the storage task assignments in an account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this IStorageTaskAssignmentsOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/TableOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/TableOperations.cs new file mode 100644 index 000000000000..39246e7eac9c --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/TableOperations.cs @@ -0,0 +1,1516 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// TableOperations operations. + /// + internal partial class TableOperations : Microsoft.Rest.IServiceOperations, ITableOperations + { + /// + /// Initializes a new instance of the TableOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal TableOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the table with the specified table name, under the specified account + /// if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (tableName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "tableName"); + } + if (tableName != null) + { + if (tableName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "tableName", 63); + } + if (tableName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "tableName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(tableName, "^[A-Za-z][A-Za-z0-9]{2,62}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "tableName", "^[A-Za-z][A-Za-z0-9]{2,62}$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("tableName", tableName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{tableName}", System.Uri.EscapeDataString(tableName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject
(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// List of stored access policies specified on the table. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> CreateWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (tableName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "tableName"); + } + if (tableName != null) + { + if (tableName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "tableName", 63); + } + if (tableName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "tableName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(tableName, "^[A-Za-z][A-Za-z0-9]{2,62}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "tableName", "^[A-Za-z][A-Za-z0-9]{2,62}$"); + } + } + Table parameters = new Table(); + if(signedIdentifiers != null) + { + parameters.SignedIdentifiers = signedIdentifiers; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("tableName", tableName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Create", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{tableName}", System.Uri.EscapeDataString(tableName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse
(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject
(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// List of stored access policies specified on the table. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> UpdateWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (tableName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "tableName"); + } + if (tableName != null) + { + if (tableName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "tableName", 63); + } + if (tableName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "tableName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(tableName, "^[A-Za-z][A-Za-z0-9]{2,62}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "tableName", "^[A-Za-z][A-Za-z0-9]{2,62}$"); + } + } + Table parameters = new Table(); + if(signedIdentifiers != null) + { + parameters.SignedIdentifiers = signedIdentifiers; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("tableName", tableName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Update", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{tableName}", System.Uri.EscapeDataString(tableName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PATCH"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse
(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject
(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Deletes the table with the specified table name, under the specified + /// account if it exists. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task DeleteWithHttpMessagesAsync(string resourceGroupName, string accountName, string tableName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + if (tableName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "tableName"); + } + if (tableName != null) + { + if (tableName.Length > 63) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "tableName", 63); + } + if (tableName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "tableName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(tableName, "^[A-Za-z][A-Za-z0-9]{2,62}$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "tableName", "^[A-Za-z][A-Za-z0-9]{2,62}$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + tracingParameters.Add("tableName", tableName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "Delete", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default/tables/{tableName}").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + _url = _url.Replace("{tableName}", System.Uri.EscapeDataString(tableName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("DELETE"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 204) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/TableOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/TableOperationsExtensions.cs new file mode 100644 index 000000000000..d7e0e8619bb5 --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/TableOperationsExtensions.cs @@ -0,0 +1,309 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for TableOperations + /// + public static partial class TableOperationsExtensions + { + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static Microsoft.Rest.Azure.IPage
List(this ITableOperations operations, string resourceGroupName, string accountName) + { + return ((ITableOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListAsync(this ITableOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets the table with the specified table name, under the specified account + /// if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static Table Get(this ITableOperations operations, string resourceGroupName, string accountName, string tableName) + { + return ((ITableOperations)operations).GetAsync(resourceGroupName, accountName, tableName).GetAwaiter().GetResult(); + } + + /// + /// Gets the table with the specified table name, under the specified account + /// if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task
GetAsync(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetWithHttpMessagesAsync(resourceGroupName, accountName, tableName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static Table Create(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList)) + { + return ((ITableOperations)operations).CreateAsync(resourceGroupName, accountName, tableName, signedIdentifiers).GetAwaiter().GetResult(); + } + + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task
CreateAsync(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.CreateWithHttpMessagesAsync(resourceGroupName, accountName, tableName, signedIdentifiers, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static Table Update(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList)) + { + return ((ITableOperations)operations).UpdateAsync(resourceGroupName, accountName, tableName, signedIdentifiers).GetAwaiter().GetResult(); + } + + /// + /// Creates a new table with the specified table name, under the specified + /// account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task
UpdateAsync(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Collections.Generic.IList signedIdentifiers = default(System.Collections.Generic.IList), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.UpdateWithHttpMessagesAsync(resourceGroupName, accountName, tableName, signedIdentifiers, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Deletes the table with the specified table name, under the specified + /// account if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + public static void Delete(this ITableOperations operations, string resourceGroupName, string accountName, string tableName) + { + ((ITableOperations)operations).DeleteAsync(resourceGroupName, accountName, tableName).GetAwaiter().GetResult(); + } + + /// + /// Deletes the table with the specified table name, under the specified + /// account if it exists. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task DeleteAsync(this ITableOperations operations, string resourceGroupName, string accountName, string tableName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + (await operations.DeleteWithHttpMessagesAsync(resourceGroupName, accountName, tableName, null, cancellationToken).ConfigureAwait(false)).Dispose(); + } + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage
ListNext(this ITableOperations operations, string nextPageLink) + { + return ((ITableOperations)operations).ListNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets a list of all the tables under the specified storage account + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListNextAsync(this ITableOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperations.cs new file mode 100644 index 000000000000..4ae43258b43f --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperations.cs @@ -0,0 +1,769 @@ +// 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. + +namespace Microsoft.Azure.Management.Storage +{ + using System.Linq; + using Microsoft.Rest; + using Microsoft.Rest.Azure; + using Models; + + /// + /// TableServicesOperations operations. + /// + internal partial class TableServicesOperations : Microsoft.Rest.IServiceOperations, ITableServicesOperations + { + /// + /// Initializes a new instance of the TableServicesOperations class. + /// + /// + /// Reference to the service client. + /// + /// + /// Thrown when a required parameter is null + /// + internal TableServicesOperations (StorageManagementClient client) + { + if (client == null) + { + throw new System.ArgumentNullException("client"); + } + this.Client = client; + } + + /// + /// Gets a reference to the StorageManagementClient + /// + public StorageManagementClient Client { get; private set; } + + /// + /// List all table services for the storage account. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> ListWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "List", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> GetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "GetServiceProperties", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Sets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// 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. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task> SetServicePropertiesWithHttpMessagesAsync(string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + + + + if (this.Client.ApiVersion == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); + } + + + if (resourceGroupName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "resourceGroupName"); + } + if (resourceGroupName != null) + { + if (resourceGroupName.Length > 90) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "resourceGroupName", 90); + } + if (resourceGroupName.Length < 1) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "resourceGroupName", 1); + } + } + if (accountName == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "accountName"); + } + if (accountName != null) + { + if (accountName.Length > 24) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MaxLength, "accountName", 24); + } + if (accountName.Length < 3) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "accountName", 3); + } + if (!System.Text.RegularExpressions.Regex.IsMatch(accountName, "^[a-z0-9]+$")) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.Pattern, "accountName", "^[a-z0-9]+$"); + } + } + TableServiceProperties parameters = new TableServiceProperties(); + if(cors != null) + { + parameters.Cors = cors; + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("resourceGroupName", resourceGroupName); + tracingParameters.Add("accountName", accountName); + + tracingParameters.Add("parameters", parameters); + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "SetServiceProperties", tracingParameters); + } + // Construct URL + + var _baseUrl = this.Client.BaseUri.AbsoluteUri; + var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/storageAccounts/{accountName}/tableServices/default").ToString(); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); + _url = _url.Replace("{resourceGroupName}", System.Uri.EscapeDataString(resourceGroupName)); + _url = _url.Replace("{accountName}", System.Uri.EscapeDataString(accountName)); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (this.Client.ApiVersion != null) + { + _queryParameters.Add(string.Format("api-version={0}", System.Uri.EscapeDataString(this.Client.ApiVersion))); + } + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("PUT"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + if(parameters != null) + { + _requestContent = Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(parameters, this.Client.SerializationSettings); + _httpRequest.Content = new System.Net.Http.StringContent(_requestContent, System.Text.Encoding.UTF8); + _httpRequest.Content.Headers.ContentType =System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json; charset=utf-8"); + } + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + } +} \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperationsExtensions.cs new file mode 100644 index 000000000000..f664a78b569b --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/Generated/TableServicesOperationsExtensions.cs @@ -0,0 +1,153 @@ +// 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. +namespace Microsoft.Azure.Management.Storage +{ + using Microsoft.Rest.Azure; + using Models; + + /// + /// Extension methods for TableServicesOperations + /// + public static partial class TableServicesOperationsExtensions + { + /// + /// List all table services for the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static ListTableServices List(this ITableServicesOperations operations, string resourceGroupName, string accountName) + { + return ((ITableServicesOperations)operations).ListAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// List all table services for the storage account. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task ListAsync(this ITableServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Gets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static TableServiceProperties GetServiceProperties(this ITableServicesOperations operations, string resourceGroupName, string accountName) + { + return ((ITableServicesOperations)operations).GetServicePropertiesAsync(resourceGroupName, accountName).GetAwaiter().GetResult(); + } + + /// + /// Gets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task GetServicePropertiesAsync(this ITableServicesOperations operations, string resourceGroupName, string accountName, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.GetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + /// + /// Sets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + public static TableServiceProperties SetServiceProperties(this ITableServicesOperations operations, string resourceGroupName, string accountName, CorsRules cors = default(CorsRules)) + { + return ((ITableServicesOperations)operations).SetServicePropertiesAsync(resourceGroupName, accountName, cors).GetAwaiter().GetResult(); + } + + /// + /// Sets the properties of a storage account’s Table service, including + /// properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) + /// rules. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The name of the resource group. The name is case insensitive. + /// + /// + /// 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. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task SetServicePropertiesAsync(this ITableServicesOperations operations, string resourceGroupName, string accountName, CorsRules cors = default(CorsRules), System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.SetServicePropertiesWithHttpMessagesAsync(resourceGroupName, accountName, cors, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } + } +} diff --git a/src/Storage/Storage.Management.Sdk/Generated/UsagesOperations.cs b/src/Storage/Storage.Management.Sdk/Generated/UsagesOperations.cs index 71541185b5d1..de33d3a2c4a1 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/UsagesOperations.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/UsagesOperations.cs @@ -43,7 +43,7 @@ internal UsagesOperations (StorageManagementClient client) /// location under the subscription. /// /// - /// The location of the Azure Storage resource. + /// The name of the Azure region. /// /// /// Headers that will be added to request. @@ -66,7 +66,7 @@ internal UsagesOperations (StorageManagementClient client) /// /// A response object containing the response body and response headers. /// - public async System.Threading.Tasks.Task>> ListByLocationWithHttpMessagesAsync(string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public async System.Threading.Tasks.Task>> ListByLocationWithHttpMessagesAsync(string location, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { @@ -77,22 +77,18 @@ internal UsagesOperations (StorageManagementClient client) throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.ApiVersion"); } - if (this.Client.SubscriptionId == null) + + if (location == null) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "this.Client.SubscriptionId"); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "location"); } - if (this.Client.SubscriptionId != null) + if (location != null) { - if (this.Client.SubscriptionId.Length < 1) + if (location.Length < 1) { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "Client.SubscriptionId", 1); + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.MinLength, "location", 1); } } - if (location == null) - { - throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "location"); - } - // Tracing bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; string _invocationId = null; @@ -110,7 +106,7 @@ internal UsagesOperations (StorageManagementClient client) var _baseUrl = this.Client.BaseUri.AbsoluteUri; var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "subscriptions/{subscriptionId}/providers/Microsoft.Storage/locations/{location}/usages").ToString(); - _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(this.Client.SubscriptionId)); + _url = _url.Replace("{subscriptionId}", System.Uri.EscapeDataString(Microsoft.Rest.Serialization.SafeJsonConvert.SerializeObject(this.Client.SubscriptionId, this.Client.SerializationSettings).Trim('"'))); _url = _url.Replace("{location}", System.Uri.EscapeDataString(location)); System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); @@ -178,14 +174,13 @@ internal UsagesOperations (StorageManagementClient client) if ((int)_statusCode != 200) { - var ex = new Microsoft.Rest.Azure.CloudException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); try { _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); - CloudError _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); if (_errorBody != null) { - ex = new Microsoft.Rest.Azure.CloudException(_errorBody.Message); ex.Body = _errorBody; } } @@ -195,10 +190,184 @@ internal UsagesOperations (StorageManagementClient client) } ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); - if (_httpResponse.Headers.Contains("x-ms-request-id")) + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); + } + _httpRequest.Dispose(); + if (_httpResponse != null) { - ex.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + _httpResponse.Dispose(); } + throw ex; + } + // Create Result + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + _result.Request = _httpRequest; + _result.Response = _httpResponse; + + if (_httpResponse.Headers.Contains("x-ms-request-id")) + { + _result.RequestId = _httpResponse.Headers.GetValues("x-ms-request-id").FirstOrDefault(); + } + // Deserialize Response + if ((int)_statusCode == 200) + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + try + { + _result.Body = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject>(_responseContent, this.Client.DeserializationSettings); + } + catch (Newtonsoft.Json.JsonException ex) + { + _httpRequest.Dispose(); + if (_httpResponse != null) + { + _httpResponse.Dispose(); + } + throw new Microsoft.Rest.SerializationException("Unable to deserialize the response.", _responseContent, ex); + } + } + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.Exit(_invocationId, _result); + } + return _result; + + + + + + } + /// + /// Gets the current usage count and the limit for the resources of the + /// location under the subscription. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// Headers that will be added to request. + /// + /// + /// The cancellation token. + /// + /// + /// Thrown when the operation returned an invalid status code + /// + /// + /// Thrown when unable to deserialize the response + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// Thrown when a required parameter is null + /// + /// + /// A response object containing the response body and response headers. + /// + public async System.Threading.Tasks.Task>> ListByLocationNextWithHttpMessagesAsync(string nextPageLink, System.Collections.Generic.Dictionary> customHeaders = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + + if (nextPageLink == null) + { + throw new Microsoft.Rest.ValidationException(Microsoft.Rest.ValidationRules.CannotBeNull, "nextPageLink"); + } + // Tracing + bool _shouldTrace = Microsoft.Rest.ServiceClientTracing.IsEnabled; + string _invocationId = null; + if (_shouldTrace) + { + _invocationId = Microsoft.Rest.ServiceClientTracing.NextInvocationId.ToString(); + System.Collections.Generic.Dictionary tracingParameters = new System.Collections.Generic.Dictionary(); + tracingParameters.Add("nextPageLink", nextPageLink); + + + tracingParameters.Add("cancellationToken", cancellationToken); + Microsoft.Rest.ServiceClientTracing.Enter(_invocationId, this, "ListByLocationNext", tracingParameters); + } + // Construct URL + string _url = "{nextLink}"; + _url = _url.Replace("{nextLink}", nextPageLink); + + System.Collections.Generic.List _queryParameters = new System.Collections.Generic.List(); + if (_queryParameters.Count > 0) + { + _url += (_url.Contains("?") ? "&" : "?") + string.Join("&", _queryParameters); + } + // Create HTTP transport objects + var _httpRequest = new System.Net.Http.HttpRequestMessage(); + System.Net.Http.HttpResponseMessage _httpResponse = null; + _httpRequest.Method = new System.Net.Http.HttpMethod("GET"); + _httpRequest.RequestUri = new System.Uri(_url); + // Set Headers + if (this.Client.GenerateClientRequestId != null && this.Client.GenerateClientRequestId.Value) + { + _httpRequest.Headers.TryAddWithoutValidation("x-ms-client-request-id", System.Guid.NewGuid().ToString()); + } + if (this.Client.AcceptLanguage != null) + { + if (_httpRequest.Headers.Contains("accept-language")) + { + _httpRequest.Headers.Remove("accept-language"); + } + _httpRequest.Headers.TryAddWithoutValidation("accept-language", this.Client.AcceptLanguage); + } + + if (customHeaders != null) + { + foreach(var _header in customHeaders) + { + if (_httpRequest.Headers.Contains(_header.Key)) + { + _httpRequest.Headers.Remove(_header.Key); + } + _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value); + } + } + // Serialize Request + string _requestContent = null; + // Set Credentials + if (this.Client.Credentials != null) + { + cancellationToken.ThrowIfCancellationRequested(); + await this.Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + } + // Send Request + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.SendRequest(_invocationId, _httpRequest); + } + cancellationToken.ThrowIfCancellationRequested(); + _httpResponse = await this.Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false); + if (_shouldTrace) + { + Microsoft.Rest.ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse); + } + + System.Net.HttpStatusCode _statusCode = _httpResponse.StatusCode; + cancellationToken.ThrowIfCancellationRequested(); + string _responseContent = null; + + if ((int)_statusCode != 200) + { + var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _statusCode)); + try + { + _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false); + ErrorResponse _errorBody = Microsoft.Rest.Serialization.SafeJsonConvert.DeserializeObject(_responseContent, this.Client.DeserializationSettings); + if (_errorBody != null) + { + ex.Body = _errorBody; + } + } + catch (Newtonsoft.Json.JsonException) + { + // Ignore the exception + } + ex.Request = new Microsoft.Rest.HttpRequestMessageWrapper(_httpRequest, _requestContent); + ex.Response = new Microsoft.Rest.HttpResponseMessageWrapper(_httpResponse, _responseContent); if (_shouldTrace) { Microsoft.Rest.ServiceClientTracing.Error(_invocationId, ex); @@ -211,7 +380,7 @@ internal UsagesOperations (StorageManagementClient client) throw ex; } // Create Result - var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); + var _result = new Microsoft.Rest.Azure.AzureOperationResponse>(); _result.Request = _httpRequest; _result.Response = _httpResponse; diff --git a/src/Storage/Storage.Management.Sdk/Generated/UsagesOperationsExtensions.cs b/src/Storage/Storage.Management.Sdk/Generated/UsagesOperationsExtensions.cs index 56cc93b76ac8..36c3f3a1b758 100644 --- a/src/Storage/Storage.Management.Sdk/Generated/UsagesOperationsExtensions.cs +++ b/src/Storage/Storage.Management.Sdk/Generated/UsagesOperationsExtensions.cs @@ -20,9 +20,9 @@ public static partial class UsagesOperationsExtensions /// The operations group for this extension method. /// /// - /// The location of the Azure Storage resource. + /// The name of the Azure region. /// - public static System.Collections.Generic.IEnumerable ListByLocation(this IUsagesOperations operations, string location) + public static Microsoft.Rest.Azure.IPage ListByLocation(this IUsagesOperations operations, string location) { return ((IUsagesOperations)operations).ListByLocationAsync(location).GetAwaiter().GetResult(); } @@ -35,17 +35,52 @@ public static System.Collections.Generic.IEnumerable ListByLocation(this /// The operations group for this extension method. /// /// - /// The location of the Azure Storage resource. + /// The name of the Azure region. /// /// /// The cancellation token. /// - public static async System.Threading.Tasks.Task> ListByLocationAsync(this IUsagesOperations operations, string location, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + public static async System.Threading.Tasks.Task> ListByLocationAsync(this IUsagesOperations operations, string location, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { using (var _result = await operations.ListByLocationWithHttpMessagesAsync(location, null, cancellationToken).ConfigureAwait(false)) { return _result.Body; } } + /// + /// Gets the current usage count and the limit for the resources of the + /// location under the subscription. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + public static Microsoft.Rest.Azure.IPage ListByLocationNext(this IUsagesOperations operations, string nextPageLink) + { + return ((IUsagesOperations)operations).ListByLocationNextAsync(nextPageLink).GetAwaiter().GetResult(); + } + + /// + /// Gets the current usage count and the limit for the resources of the + /// location under the subscription. + /// + /// + /// The operations group for this extension method. + /// + /// + /// The NextLink from the previous successful call to List operation. + /// + /// + /// The cancellation token. + /// + public static async System.Threading.Tasks.Task> ListByLocationNextAsync(this IUsagesOperations operations, string nextPageLink, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) + { + using (var _result = await operations.ListByLocationNextWithHttpMessagesAsync(nextPageLink, null, cancellationToken).ConfigureAwait(false)) + { + return _result.Body; + } + } } } diff --git a/src/Storage/Storage.Management.Sdk/README.md b/src/Storage/Storage.Management.Sdk/README.md index 2822b95abbd0..99585de1c148 100644 --- a/src/Storage/Storage.Management.Sdk/README.md +++ b/src/Storage/Storage.Management.Sdk/README.md @@ -27,11 +27,15 @@ payload-flattening-threshold: 2 ``` yaml commit: 04b87408ba3b8afed159b3d3059bd1594c7f2dd3 input-file: - - https://github.com/Azure/azure-rest-api-specs/blob/$(commit)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/storage.json - - https://github.com/Azure/azure-rest-api-specs/blob/$(commit)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/blob.json - - https://github.com/Azure/azure-rest-api-specs/blob/$(commit)/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/file.json + - https://github.com/welovej/azure-rest-api-specs/blob/bd46040e2bc84dea94b147ae5fa47e5dfe689e4b/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/openapi.json output-folder: Generated namespace: Microsoft.Azure.Management.Storage + +directive: + - where: + subject: .*NetworkSecurityPerimeter.*|.*Table.*|.*Queue.* + remove: true + ``` \ No newline at end of file diff --git a/src/Storage/Storage.Management.Sdk/README.md.bak b/src/Storage/Storage.Management.Sdk/README.md.bak new file mode 100644 index 000000000000..7c508e8d8eab --- /dev/null +++ b/src/Storage/Storage.Management.Sdk/README.md.bak @@ -0,0 +1,41 @@ +# Overall +This directory contains management plane service clients of Az.Storage module. + +## Run Generation +In this directory, run AutoRest: +``` +autorest --reset +autorest --use:@autorest/powershell@4.x +``` + +### AutoRest Configuration +> see https://aka.ms/autorest +``` yaml +isSdkGenerator: true +powershell: true +clear-output-folder: true +reflect-api-versions: true +openapi-type: arm +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +payload-flattening-threshold: 2 +``` + + + +### +``` yaml +commit: 04b87408ba3b8afed159b3d3059bd1594c7f2dd3 +input-file: + - https://github.com/welovej/azure-rest-api-specs/blob/TspMig-storage/specification/storage/resource-manager/Microsoft.Storage/stable/2025-01-01/openapi.json + +output-folder: Generated + +namespace: Microsoft.Azure.Management.Storage + +directive: + - where: + subject: .*NetworkSecurityPerimeter.*|.*Table.*|.*Queue.* + remove: true + +``` \ No newline at end of file diff --git a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestAzureStorageAccountHierarchicalNamespaceUpgrade.json b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestAzureStorageAccountHierarchicalNamespaceUpgrade.json index 487d5a738c70..d3a6150e1af7 100644 --- a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestAzureStorageAccountHierarchicalNamespaceUpgrade.json +++ b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestAzureStorageAccountHierarchicalNamespaceUpgrade.json @@ -781,8 +781,8 @@ "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourcegroups/pstestrg5751/providers/Microsoft.Storage/storageAccounts/stopstestrg5751/hnsonmigration?api-version=2025-01-01&requestType=HnsOnHydrationRequest", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlZ3JvdXBzL3BzdGVzdHJnNTc1MS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNTc1MS9obnNvbm1pZ3JhdGlvbj9hcGktdmVyc2lvbj0yMDI1LTAxLTAxJnJlcXVlc3RUeXBlPUhuc09uSHlkcmF0aW9uUmVxdWVzdA==", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg5751/providers/Microsoft.Storage/storageAccounts/stopstestrg5751/hnsonmigration?api-version=2025-01-01&requestType=HnsOnHydrationRequest", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNTc1MS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNTc1MS9obnNvbm1pZ3JhdGlvbj9hcGktdmVyc2lvbj0yMDI1LTAxLTAxJnJlcXVlc3RUeXBlPUhuc09uVmFsaWRhdGlvblJlcXVlc3Q=", "RequestMethod": "POST", "RequestBody": "", "RequestHeaders": { diff --git a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestNewSetAzureStorageAccountTLSveresionBlobPublicAccess.json b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestNewSetAzureStorageAccountTLSveresionBlobPublicAccess.json index bb75540aef0b..0d5e471be7af 100644 --- a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestNewSetAzureStorageAccountTLSveresionBlobPublicAccess.json +++ b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageAccountTests/TestNewSetAzureStorageAccountTLSveresionBlobPublicAccess.json @@ -1,21 +1,21 @@ { "Entries": [ { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourcegroups/pstestrg7224?api-version=2016-09-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlZ3JvdXBzL3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourcegroups/pstestrg7685?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlZ3JvdXBzL3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", "RequestMethod": "PUT", "RequestHeaders": { "x-ms-client-request-id": [ - "14e4e76b-b49a-4357-88ec-58ffec04050a" + "9c3e01d1-5074-49d6-9849-b58f3bc42056" ], "Accept-Language": [ "en-US" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.105" + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.110" ], "Content-Type": [ "application/json; charset=utf-8" @@ -39,13 +39,13 @@ "11999" ], "x-ms-request-id": [ - "63df508a-19ff-4f76-b1b4-83a0c6a33303" + "dcb7e554-baa0-49ad-a9fc-a3720949f711" ], "x-ms-correlation-request-id": [ - "63df508a-19ff-4f76-b1b4-83a0c6a33303" + "dcb7e554-baa0-49ad-a9fc-a3720949f711" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071919Z:63df508a-19ff-4f76-b1b4-83a0c6a33303" + "SOUTHEASTASIA:20251010T080207Z:dcb7e554-baa0-49ad-a9fc-a3720949f711" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" @@ -57,10 +57,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: B109B58153454CA7902BAB9B05A847E3 Ref B: MAA201060514045 Ref C: 2025-03-24T07:19:15Z" + "Ref A: 491EB29A15784F1C8FD8A42379487B6B Ref B: MAA201060516045 Ref C: 2025-10-10T08:02:00Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:18 GMT" + "Fri, 10 Oct 2025 08:02:06 GMT" ], "Content-Length": [ "182" @@ -72,7 +72,7 @@ "-1" ] }, - "ResponseBody": "{\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224\",\r\n \"name\": \"pstestrg7224\",\r\n \"location\": \"eastus2euap\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685\",\r\n \"name\": \"pstestrg7685\",\r\n \"location\": \"eastus2euap\",\r\n \"properties\": {\r\n \"provisioningState\": \"Succeeded\"\r\n }\r\n}", "StatusCode": 201 }, { @@ -84,13 +84,13 @@ "en-US" ], "x-ms-client-request-id": [ - "87933a73-81bd-43c2-86d2-3e1b4c8b4028" + "a2bf867c-7d96-461c-b29b-f84bf3c60038" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ], "Content-Type": [ "application/json; charset=utf-8" @@ -99,7 +99,7 @@ "81" ] }, - "RequestBody": "{\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\"\r\n}", + "RequestBody": "{\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\"\r\n}", "ResponseHeaders": { "Cache-Control": [ "no-cache" @@ -108,13 +108,13 @@ "no-cache" ], "x-ms-request-id": [ - "a2c47ebe-eda5-4d2e-8264-266eb9575fd6" + "7843b01d-da35-4290-8369-b9cfbbc316b3" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], "x-ms-operation-identifier": [ - "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/41a184b4-a5a6-45c1-bb2c-16d656153f60" + "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/6cb8ceea-bf0f-4f34-a96f-232c664466ef" ], "x-ms-ratelimit-remaining-subscription-reads": [ "1099" @@ -123,10 +123,10 @@ "16499" ], "x-ms-correlation-request-id": [ - "8bc9918a-cb34-45ab-a263-8e223828d4e4" + "0cf86f3f-0faa-46a1-9f73-f660c856fc39" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071920Z:8bc9918a-cb34-45ab-a263-8e223828d4e4" + "SOUTHEASTASIA:20251010T080208Z:0cf86f3f-0faa-46a1-9f73-f660c856fc39" ], "X-Content-Type-Options": [ "nosniff" @@ -135,10 +135,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: F300685DEF914D1D90FF06352AE490A9 Ref B: MAA201060513047 Ref C: 2025-03-24T07:19:19Z" + "Ref A: 8BE9634E094A4449B8B2CACD1480EA4D Ref B: MAA201060514011 Ref C: 2025-10-10T08:02:07Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:19 GMT" + "Fri, 10 Oct 2025 08:02:07 GMT" ], "Content-Length": [ "22" @@ -154,21 +154,21 @@ "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "PUT", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "87933a73-81bd-43c2-86d2-3e1b4c8b4028" + "a2bf867c-7d96-461c-b29b-f84bf3c60038" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ], "Content-Type": [ "application/json; charset=utf-8" @@ -186,31 +186,31 @@ "no-cache" ], "Location": [ - "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2euap/asyncoperations/fc0077cd-5777-4ab4-889a-b480e5cd70d7?monitor=true&api-version=2025-01-01&t=638783975663710697&c=MIIHpTCCBo2gAwIBAgITfwTbn828Ducmmj24MgAEBNufzTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjUwMTI1MTI1MTUzWhcNMjUwNzI0MTI1MTUzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL20TJQJbhV5Jrwzn-fiGrag_COjmaTwDy9Ir0oe1CLIfiJ9ageBVfcEmW-k5bUVL3eg6B8mQTEYE-FJDVVZ4jbJ9Qw8REpm2kBASDRwoItVVD_HBpJf1VhdViEPJPMDvLg0mAmde0X2m3HVEO6Y7eggJ9iL31DDv9PF-Xvn6x9xlWvO3_OCJReOoV_HCTDyzds4Pq9OySlnAGAozKYzOumbcVPz_WEMc_vwW80fjQLmdihJgp6_15qlnMdx48MQhVGT3y4gdbknMQJghyzTFcsASVncSqtmz8nAx5qT9dZ63iaF6E7Fbx76fnF4lx5K72ANX5cjlfVOig5jzgf8RPkCAwEAAaOCBJIwggSOMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQp8DW_okjTMbIBWANCvQr_FrvzazAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAA5sOyKXcQwQQAVKz9J8GIjVymZkoHVSft4TqdgNxSdoIAYkk_tYdx_dEZChJfSvIfzhzAb8k57EHRKNwKtP752SSUr0Q0oB60Y3Fq7il1fMKFTbVk9ZMTyOoo3hJmRwJaisv9rK2UVHWvwD2iUKD0IK_tHwy3m6bqbGDVKaRn1K9UYM39wEvEdy-k8J2z3Olfn6yYpcrVBHWzDzSy7TVdgUzaa0IZ670aJGPrNVYMvsCepP2_T_FdHVk4LoK9K4_0-GkZbvBLZPQO6FYgttg78s6Nn34TUcXWeTeeXArlkf48rbeL5fDY_CJyKYXLv3arwG7gUdcU5T8MGHeLLzcyo&s=QncVt1pQH7ESAR13TFN_jO7joA8fDeSJXz5arsFiMFtER_pTPQSj6_kZoF1M1VQNNsB-DZKuJ_pMHqvBvoIeKIO71OkGGbJczM6L125EsAm3Y6Fq5vhB2G9Uql2oxZShMWkOVJbu24hw6Yr5zxkpe9B-bgIMxhZkx0WvjGxX8Isaqr7241mcCbpH1B_nfTRSnX6b7O15fRRnU3oSsKlMW4ghfSl8r47RBFu_T7TLbDxck1uANaJgaH-KGDxhmzmWjFZ1OuBQYTjhmOMfw5C0RwUgG7saxDHDtRQmLky_9-6Do9BQLzfer3zE0uw9BaPV_cZZs-t72rISsqVhPJoQ8g&h=JwZycn404jJhj4-RmXfx08b97QaUcssNIlbRJty4wzk" + "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2euap/asyncoperations/48a726eb-8b66-46b0-a13e-5460e2c7d386?monitor=true&api-version=2025-01-01&t=638956801572091072&c=MIIHhjCCBm6gAwIBAgITHgdzZdlIIkUuAR-erwAAB3Nl2TANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjUwOTIwMTIxMTA4WhcNMjUxMjE5MTIxMTA4WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMJdx5gosJyiN09QgNkBcW6TBOydzmy8Gen7NusoPSddWPhbbVgJyEb-OsP6w5MIoqFiNltOJtjj8M72k7AglYsZweT_CNnxgiRS1jChhObN18KpLDw5gSiZgXaJuHpRGVeg9YPLEHR8Y3G3AidB-impyg7MoDOu6uiG5OP6QJO1dAId9x6Dj8udEEuoBxP_ZB306r3gSTpYQb3E4wCujsyYi2J6o4iiIjevkuwjg-CesD1N0r_Mh9AupLsoVgAQFUJLCkvgGZEfn2fFeymo5bHas5b17aSF-ZDNkKx9iAyn7H0FeUlEY7yN3IaFhs8-X8-yNXd3aUCBBp7BH6UUQckCAwEAAaOCBHMwggRvMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwIwCgYIKwYBBQUHAwEwPAYJKwYBBAGCNxUHBC8wLQYlKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFgh8fIENbYcQIBZAIBBjCCAcsGCCsGAQUFBwEBBIIBvTCCAbkwYwYIKwYBBQUHMAKGV2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2lpbmZyYS9DZXJ0cy9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDEuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwyLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMy5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDQuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwHQYDVR0OBBYEFHLLdLURrEo5afGWQTdSs7bPgphnMA4GA1UdDwEB_wQEAwIFoDCCASYGA1UdHwSCAR0wggEZMIIBFaCCARGgggENhj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ1JML0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwxLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwyLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwzLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmw0LmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmwwgZ0GA1UdIASBlTCBkjAMBgorBgEEAYI3ewEBMGYGCisGAQQBgjd7AgIwWDBWBggrBgEFBQcCAjBKHkgAMwAzAGUAMAAxADkAMgAxAC0ANABkADYANAAtADQAZgA4AGMALQBhADAANQA1AC0ANQBiAGQAYQBmAGYAZAA1AGUAMwAzAGQwDAYKKwYBBAGCN3sDAjAMBgorBgEEAYI3ewQCMB8GA1UdIwQYMBaAFPFGaMbxw_ArLX2LauGy-b41_NFBMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOCAQEAwMsjoPnTGo4sN08FWnj3jpNBu8dIwc6qJJ1IPjE5T6PAsyMosFXPrHRxdOlVD_jZdSm2MO_7mHJkBl-bD_Y5lRxAgRyUZURhFy2UPNxwQZcFFuqPR1UtQyTZxiEiY7G8HUe-fP6i8vV9M7yoUqlDhaa7c1HJTmhAJuAcwP8_P3CBrr9MYOEq1OrnbCf-EPjyDKbvVCTHWdH_k-9M49iY0zx8LU8QWgB6ShmKZzdmhF57u84pB8KqJLI5pCLnWEdODmgdLzectDFxzpusQMgg3Rp8S5s9Ohx-l7iS4PTD25HncPTDROv-xNGQi4E70FIz7o9ifdgss0d_LS1MzVjYtw&s=XUtv96x89HVBURY30ghpMPoEjMLXUgHayC2hSy701iG2_LrTYG98jBti2kIUD2oJZYhYF6Q_ZTItKoEw_cySwpbzzlDmNgP8-zq03WcL5ecTLgxoaHUTdWwKjyfYqejcdwMouc3tj8E4DrOzpQHeNh-eTkkRtBLhxTwxAe0zJR-vJoqwhHULsZKhBObLwEQecw9KHtKeO-aXIl6CPnK6tcYQpI36jH1gZwkRA-LaB65bx5y1dg8OwFibjtHqiZB4Sb2IgaQrq86QV-FvuIRMcAP6N9EsG78GwZVIdfXVT6fRpjRPc32jdu2bT7eroUWPQUuGCuQuKcBemJr_2lCvrQ&h=gb5VUJh6zV2UgFcw2fErfN8qKoyiB_bSEtq9yupO4EU" ], "Retry-After": [ "17" ], "x-ms-request-id": [ - "fc0077cd-5777-4ab4-889a-b480e5cd70d7" + "48a726eb-8b66-46b0-a13e-5460e2c7d386" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], "x-ms-operation-identifier": [ - "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/4cddc8bf-9cb1-40af-b046-00703e4292c0" + "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/eastus2euap/5e1cfa0c-8efb-4361-84df-2d95e50b6670" + ], + "x-ms-throttling-version": [ + "v2" ], "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], - "x-ms-ratelimit-remaining-subscription-global-writes": [ - "11999" - ], "x-ms-correlation-request-id": [ - "26b5cdae-5d29-4892-bdc9-5cb277e8c588" + "67db1032-6d80-423a-ac5d-7204182c73e6" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071926Z:26b5cdae-5d29-4892-bdc9-5cb277e8c588" + "EASTUS2EUAP:20251010T080237Z:67db1032-6d80-423a-ac5d-7204182c73e6" ], "X-Content-Type-Options": [ "nosniff" @@ -219,10 +219,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 9292E370FC1245F4978246DF59725C2B Ref B: MAA201060513047 Ref C: 2025-03-24T07:19:20Z" + "Ref A: 5930177E5EE14875B33B41B911137899 Ref B: MAA201060514011 Ref C: 2025-10-10T08:02:33Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:26 GMT" + "Fri, 10 Oct 2025 08:02:36 GMT" ], "Content-Type": [ "text/plain; charset=utf-8" @@ -238,18 +238,18 @@ "StatusCode": 202 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2euap/asyncoperations/fc0077cd-5777-4ab4-889a-b480e5cd70d7?monitor=true&api-version=2025-01-01&t=638783975663710697&c=MIIHpTCCBo2gAwIBAgITfwTbn828Ducmmj24MgAEBNufzTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjUwMTI1MTI1MTUzWhcNMjUwNzI0MTI1MTUzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL20TJQJbhV5Jrwzn-fiGrag_COjmaTwDy9Ir0oe1CLIfiJ9ageBVfcEmW-k5bUVL3eg6B8mQTEYE-FJDVVZ4jbJ9Qw8REpm2kBASDRwoItVVD_HBpJf1VhdViEPJPMDvLg0mAmde0X2m3HVEO6Y7eggJ9iL31DDv9PF-Xvn6x9xlWvO3_OCJReOoV_HCTDyzds4Pq9OySlnAGAozKYzOumbcVPz_WEMc_vwW80fjQLmdihJgp6_15qlnMdx48MQhVGT3y4gdbknMQJghyzTFcsASVncSqtmz8nAx5qT9dZ63iaF6E7Fbx76fnF4lx5K72ANX5cjlfVOig5jzgf8RPkCAwEAAaOCBJIwggSOMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQp8DW_okjTMbIBWANCvQr_FrvzazAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAA5sOyKXcQwQQAVKz9J8GIjVymZkoHVSft4TqdgNxSdoIAYkk_tYdx_dEZChJfSvIfzhzAb8k57EHRKNwKtP752SSUr0Q0oB60Y3Fq7il1fMKFTbVk9ZMTyOoo3hJmRwJaisv9rK2UVHWvwD2iUKD0IK_tHwy3m6bqbGDVKaRn1K9UYM39wEvEdy-k8J2z3Olfn6yYpcrVBHWzDzSy7TVdgUzaa0IZ670aJGPrNVYMvsCepP2_T_FdHVk4LoK9K4_0-GkZbvBLZPQO6FYgttg78s6Nn34TUcXWeTeeXArlkf48rbeL5fDY_CJyKYXLv3arwG7gUdcU5T8MGHeLLzcyo&s=QncVt1pQH7ESAR13TFN_jO7joA8fDeSJXz5arsFiMFtER_pTPQSj6_kZoF1M1VQNNsB-DZKuJ_pMHqvBvoIeKIO71OkGGbJczM6L125EsAm3Y6Fq5vhB2G9Uql2oxZShMWkOVJbu24hw6Yr5zxkpe9B-bgIMxhZkx0WvjGxX8Isaqr7241mcCbpH1B_nfTRSnX6b7O15fRRnU3oSsKlMW4ghfSl8r47RBFu_T7TLbDxck1uANaJgaH-KGDxhmzmWjFZ1OuBQYTjhmOMfw5C0RwUgG7saxDHDtRQmLky_9-6Do9BQLzfer3zE0uw9BaPV_cZZs-t72rISsqVhPJoQ8g&h=JwZycn404jJhj4-RmXfx08b97QaUcssNIlbRJty4wzk", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9sb2NhdGlvbnMvZWFzdHVzMmV1YXAvYXN5bmNvcGVyYXRpb25zL2ZjMDA3N2NkLTU3NzctNGFiNC04ODlhLWI0ODBlNWNkNzBkNz9tb25pdG9yPXRydWUmYXBpLXZlcnNpb249MjAyNS0wMS0wMSZ0PTYzODc4Mzk3NTY2MzcxMDY5NyZjPU1JSUhwVENDQm8yZ0F3SUJBZ0lUZndUYm44MjhEdWNtbWoyNE1nQUVCTnVmelRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01ESXdIaGNOTWpVd01USTFNVEkxTVRVeldoY05NalV3TnpJME1USTFNVFV6V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUwyMFRKUUpiaFY1SnJ3em4tZmlHcmFnX0NPam1hVHdEeTlJcjBvZTFDTElmaUo5YWdlQlZmY0VtVy1rNWJVVkwzZWc2QjhtUVRFWUUtRkpEVlZaNGpiSjlRdzhSRXBtMmtCQVNEUndvSXRWVkRfSEJwSmYxVmhkVmlFUEpQTUR2TGcwbUFtZGUwWDJtM0hWRU82WTdlZ2dKOWlMMzFERHY5UEYtWHZuNng5eGxXdk8zX09DSlJlT29WX0hDVER5emRzNFBxOU95U2xuQUdBb3pLWXpPdW1iY1ZQel9XRU1jX3Z3VzgwZmpRTG1kaWhKZ3A2XzE1cWxuTWR4NDhNUWhWR1QzeTRnZGJrbk1RSmdoeXpURmNzQVNWbmNTcXRtejhuQXg1cVQ5ZFo2M2lhRjZFN0ZieDc2Zm5GNGx4NUs3MkFOWDVjamxmVk9pZzVqemdmOFJQa0NBd0VBQWFPQ0JKSXdnZ1NPTUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdFd0NnWUlLd1lCQlFVSEF3SXdQUVlKS3dZQkJBR0NOeFVIQkRBd0xnWW1Ld1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaGZtUlM0V3NtVFFDQVdRQ0FRY3dnZ0hhQmdnckJnRUZCUWNCQVFTQ0Fjd3dnZ0hJTUdZR0NDc0dBUVVGQnpBQ2hscG9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlEyVnlkSE12UWt3eVVFdEpTVTVVUTBFd01TNUJUVVV1UjBKTVgwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdNaWcwS1M1amNuUXdWZ1lJS3dZQkJRVUhNQUtHU21oMGRIQTZMeTlqY213eExtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURFdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01ESW9OQ2t1WTNKME1GWUdDQ3NHQVFVRkJ6QUNoa3BvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJGcFlTOUNUREpRUzBsSlRsUkRRVEF4TGtGTlJTNUhRa3hmUVUxRkpUSXdTVzVtY21FbE1qQkRRU1V5TURBeUtEUXBMbU55ZERCV0JnZ3JCZ0VGQlFjd0FvWkthSFIwY0RvdkwyTnliRE11WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNUzVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3TWlnMEtTNWpjblF3VmdZSUt3WUJCUVVITUFLR1NtaDBkSEE2THk5amNtdzBMbUZ0WlM1blltd3ZZV2xoTDBKTU1sQkxTVWxPVkVOQk1ERXVRVTFGTGtkQ1RGOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSjBNQjBHQTFVZERnUVdCQlFwOERXX29ralRNYklCV0FOQ3ZRcl9GcnZ6YXpBT0JnTlZIUThCQWY4RUJBTUNCYUF3Z2dFMUJnTlZIUjhFZ2dFc01JSUJLRENDQVNTZ2dnRWdvSUlCSElaQ2FIUjBjRG92TDJOeWJDNXRhV055YjNOdlpuUXVZMjl0TDNCcmFXbHVabkpoTDBOU1RDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTVM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTXk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTkM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNNSUdkQmdOVkhTQUVnWlV3Z1pJd0RBWUtLd1lCQkFHQ04zc0JBVEJtQmdvckJnRUVBWUkzZXdJQ01GZ3dWZ1lJS3dZQkJRVUhBZ0l3U2g1SUFETUFNd0JsQURBQU1RQTVBRElBTVFBdEFEUUFaQUEyQURRQUxRQTBBR1lBT0FCakFDMEFZUUF3QURVQU5RQXRBRFVBWWdCa0FHRUFaZ0JtQUdRQU5RQmxBRE1BTXdCa01Bd0dDaXNHQVFRQmdqZDdBd0l3REFZS0t3WUJCQUdDTjNzRUFqQWZCZ05WSFNNRUdEQVdnQlN1ZWNKclhTV0lFd2IyQnduRGwzeDdsNDhkVlRBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFRWUlLd1lCQlFVSEF3SXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBQTVzT3lLWGNRd1FRQVZLejlKOEdJalZ5bVprb0hWU2Z0NFRxZGdOeFNkb0lBWWtrX3RZZHhfZEVaQ2hKZlN2SWZ6aHpBYjhrNTdFSFJLTndLdFA3NTJTU1VyMFEwb0I2MFkzRnE3aWwxZk1LRlRiVms5Wk1UeU9vbzNoSm1Sd0phaXN2OXJLMlVWSFd2d0QyaVVLRDBJS190SHd5M202YnFiR0RWS2FSbjFLOVVZTTM5d0V2RWR5LWs4SjJ6M09sZm42eVlwY3JWQkhXekR6U3k3VFZkZ1V6YWEwSVo2NzBhSkdQck5WWU12c0NlcFAyX1RfRmRIVms0TG9LOUs0XzAtR2taYnZCTFpQUU82RllndHRnNzhzNk5uMzRUVWNYV2VUZWVYQXJsa2Y0OHJiZUw1ZkRZX0NKeUtZWEx2M2Fyd0c3Z1VkY1U1VDhNR0hlTEx6Y3lvJnM9UW5jVnQxcFFIN0VTQVIxM1RGTl9qTzdqb0E4ZkRlU0pYejVhcnNGaU1GdEVSX3BUUFFTajZfa1pvRjFNMVZRTk5zQi1EWkt1Sl9wTUhxdkJ2b0llS0lPNzFPa0dHYkpjek02TDEyNUVzQW0zWTZGcTV2aEIyRzlVcWwyb3haU2hNV2tPVkpidTI0aHc2WXI1enhrcGU5Qi1iZ0lNeGhaa3gwV3ZqR3hYOElzYXFyNzI0MW1jQ2JwSDFCX25mVFJTblg2YjdPMTVmUlJuVTNvU3NLbE1XNGdoZlNsOHI0N1JCRnVfVDdUTGJEeGNrMXVBTmFKZ2FILUtHRHhobXptV2pGWjFPdUJRWVRqaG1PTWZ3NUMwUndVZ0c3c2F4REhEdFJRbUxreV85LTZEbzlCUUx6ZmVyM3pFMHV3OUJhUFZfY1pacy10NzJySVNzcVZoUEpvUThnJmg9SndaeWNuNDA0akpoajQtUm1YZngwOGI5N1FhVWNzc05JbGJSSnR5NHd6aw==", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/providers/Microsoft.Storage/locations/eastus2euap/asyncoperations/48a726eb-8b66-46b0-a13e-5460e2c7d386?monitor=true&api-version=2025-01-01&t=638956801572091072&c=MIIHhjCCBm6gAwIBAgITHgdzZdlIIkUuAR-erwAAB3Nl2TANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjUwOTIwMTIxMTA4WhcNMjUxMjE5MTIxMTA4WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMJdx5gosJyiN09QgNkBcW6TBOydzmy8Gen7NusoPSddWPhbbVgJyEb-OsP6w5MIoqFiNltOJtjj8M72k7AglYsZweT_CNnxgiRS1jChhObN18KpLDw5gSiZgXaJuHpRGVeg9YPLEHR8Y3G3AidB-impyg7MoDOu6uiG5OP6QJO1dAId9x6Dj8udEEuoBxP_ZB306r3gSTpYQb3E4wCujsyYi2J6o4iiIjevkuwjg-CesD1N0r_Mh9AupLsoVgAQFUJLCkvgGZEfn2fFeymo5bHas5b17aSF-ZDNkKx9iAyn7H0FeUlEY7yN3IaFhs8-X8-yNXd3aUCBBp7BH6UUQckCAwEAAaOCBHMwggRvMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwIwCgYIKwYBBQUHAwEwPAYJKwYBBAGCNxUHBC8wLQYlKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFgh8fIENbYcQIBZAIBBjCCAcsGCCsGAQUFBwEBBIIBvTCCAbkwYwYIKwYBBQUHMAKGV2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2lpbmZyYS9DZXJ0cy9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDEuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwyLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMy5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDQuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwHQYDVR0OBBYEFHLLdLURrEo5afGWQTdSs7bPgphnMA4GA1UdDwEB_wQEAwIFoDCCASYGA1UdHwSCAR0wggEZMIIBFaCCARGgggENhj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ1JML0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwxLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwyLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwzLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmw0LmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmwwgZ0GA1UdIASBlTCBkjAMBgorBgEEAYI3ewEBMGYGCisGAQQBgjd7AgIwWDBWBggrBgEFBQcCAjBKHkgAMwAzAGUAMAAxADkAMgAxAC0ANABkADYANAAtADQAZgA4AGMALQBhADAANQA1AC0ANQBiAGQAYQBmAGYAZAA1AGUAMwAzAGQwDAYKKwYBBAGCN3sDAjAMBgorBgEEAYI3ewQCMB8GA1UdIwQYMBaAFPFGaMbxw_ArLX2LauGy-b41_NFBMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOCAQEAwMsjoPnTGo4sN08FWnj3jpNBu8dIwc6qJJ1IPjE5T6PAsyMosFXPrHRxdOlVD_jZdSm2MO_7mHJkBl-bD_Y5lRxAgRyUZURhFy2UPNxwQZcFFuqPR1UtQyTZxiEiY7G8HUe-fP6i8vV9M7yoUqlDhaa7c1HJTmhAJuAcwP8_P3CBrr9MYOEq1OrnbCf-EPjyDKbvVCTHWdH_k-9M49iY0zx8LU8QWgB6ShmKZzdmhF57u84pB8KqJLI5pCLnWEdODmgdLzectDFxzpusQMgg3Rp8S5s9Ohx-l7iS4PTD25HncPTDROv-xNGQi4E70FIz7o9ifdgss0d_LS1MzVjYtw&s=XUtv96x89HVBURY30ghpMPoEjMLXUgHayC2hSy701iG2_LrTYG98jBti2kIUD2oJZYhYF6Q_ZTItKoEw_cySwpbzzlDmNgP8-zq03WcL5ecTLgxoaHUTdWwKjyfYqejcdwMouc3tj8E4DrOzpQHeNh-eTkkRtBLhxTwxAe0zJR-vJoqwhHULsZKhBObLwEQecw9KHtKeO-aXIl6CPnK6tcYQpI36jH1gZwkRA-LaB65bx5y1dg8OwFibjtHqiZB4Sb2IgaQrq86QV-FvuIRMcAP6N9EsG78GwZVIdfXVT6fRpjRPc32jdu2bT7eroUWPQUuGCuQuKcBemJr_2lCvrQ&h=gb5VUJh6zV2UgFcw2fErfN8qKoyiB_bSEtq9yupO4EU", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9sb2NhdGlvbnMvZWFzdHVzMmV1YXAvYXN5bmNvcGVyYXRpb25zLzQ4YTcyNmViLThiNjYtNDZiMC1hMTNlLTU0NjBlMmM3ZDM4Nj9tb25pdG9yPXRydWUmYXBpLXZlcnNpb249MjAyNS0wMS0wMSZ0PTYzODk1NjgwMTU3MjA5MTA3MiZjPU1JSUhoakNDQm02Z0F3SUJBZ0lUSGdkelpkbElJa1V1QVItZXJ3QUFCM05sMlRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01EWXdIaGNOTWpVd09USXdNVEl4TVRBNFdoY05NalV4TWpFNU1USXhNVEE0V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQU1KZHg1Z29zSnlpTjA5UWdOa0JjVzZUQk95ZHpteThHZW43TnVzb1BTZGRXUGhiYlZnSnlFYi1Pc1A2dzVNSW9xRmlObHRPSnRqajhNNzJrN0FnbFlzWndlVF9DTm54Z2lSUzFqQ2hoT2JOMThLcExEdzVnU2laZ1hhSnVIcFJHVmVnOVlQTEVIUjhZM0czQWlkQi1pbXB5ZzdNb0RPdTZ1aUc1T1A2UUpPMWRBSWQ5eDZEajh1ZEVFdW9CeFBfWkIzMDZyM2dTVHBZUWIzRTR3Q3Vqc3lZaTJKNm80aWlJamV2a3V3amctQ2VzRDFOMHJfTWg5QXVwTHNvVmdBUUZVSkxDa3ZnR1pFZm4yZkZleW1vNWJIYXM1YjE3YVNGLVpETmtLeDlpQXluN0gwRmVVbEVZN3lOM0lhRmhzOC1YOC15TlhkM2FVQ0JCcDdCSDZVVVFja0NBd0VBQWFPQ0JITXdnZ1J2TUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdJd0NnWUlLd1lCQlFVSEF3RXdQQVlKS3dZQkJBR0NOeFVIQkM4d0xRWWxLd1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaDhmSUVOYlljUUlCWkFJQkJqQ0NBY3NHQ0NzR0FRVUZCd0VCQklJQnZUQ0NBYmt3WXdZSUt3WUJCUVVITUFLR1YyaDBkSEE2THk5amNtd3ViV2xqY205emIyWjBMbU52YlM5d2EybHBibVp5WVM5RFpYSjBjeTlDVERKUVMwbEpUbFJEUVRBeUxrRk5SUzVIUWt4ZlFVMUZKVEl3U1c1bWNtRWxNakJEUVNVeU1EQTJMbU55ZERCVEJnZ3JCZ0VGQlFjd0FvWkhhSFIwY0RvdkwyTnliREV1WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNaTVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNuUXdVd1lJS3dZQkJRVUhNQUtHUjJoMGRIQTZMeTlqY213eUxtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURJdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01EWXVZM0owTUZNR0NDc0dBUVVGQnpBQ2hrZG9kSFJ3T2k4dlkzSnNNeTVoYldVdVoySnNMMkZwWVM5Q1RESlFTMGxKVGxSRFFUQXlMa0ZOUlM1SFFreGZRVTFGSlRJd1NXNW1jbUVsTWpCRFFTVXlNREEyTG1OeWREQlRCZ2dyQmdFRkJRY3dBb1pIYUhSMGNEb3ZMMk55YkRRdVlXMWxMbWRpYkM5aGFXRXZRa3d5VUV0SlNVNVVRMEV3TWk1QlRVVXVSMEpNWDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjblF3SFFZRFZSME9CQllFRkhMTGRMVVJyRW81YWZHV1FUZFNzN2JQZ3Bobk1BNEdBMVVkRHdFQl93UUVBd0lGb0RDQ0FTWUdBMVVkSHdTQ0FSMHdnZ0VaTUlJQkZhQ0NBUkdnZ2dFTmhqOW9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlExSk1MMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXd4TG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY215R01XaDBkSEE2THk5amNtd3lMbUZ0WlM1blltd3ZZM0pzTDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjbXlHTVdoMGRIQTZMeTlqY213ekxtRnRaUzVuWW13dlkzSnNMMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXcwTG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY213d2daMEdBMVVkSUFTQmxUQ0JrakFNQmdvckJnRUVBWUkzZXdFQk1HWUdDaXNHQVFRQmdqZDdBZ0l3V0RCV0JnZ3JCZ0VGQlFjQ0FqQktIa2dBTXdBekFHVUFNQUF4QURrQU1nQXhBQzBBTkFCa0FEWUFOQUF0QURRQVpnQTRBR01BTFFCaEFEQUFOUUExQUMwQU5RQmlBR1FBWVFCbUFHWUFaQUExQUdVQU13QXpBR1F3REFZS0t3WUJCQUdDTjNzREFqQU1CZ29yQmdFRUFZSTNld1FDTUI4R0ExVWRJd1FZTUJhQUZQRkdhTWJ4d19BckxYMkxhdUd5LWI0MV9ORkJNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNEQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQXdNc2pvUG5UR280c04wOEZXbmozanBOQnU4ZEl3YzZxSkoxSVBqRTVUNlBBc3lNb3NGWFBySFJ4ZE9sVkRfalpkU20yTU9fN21ISmtCbC1iRF9ZNWxSeEFnUnlVWlVSaEZ5MlVQTnh3UVpjRkZ1cVBSMVV0UXlUWnhpRWlZN0c4SFVlLWZQNmk4dlY5TTd5b1VxbERoYWE3YzFISlRtaEFKdUFjd1A4X1AzQ0JycjlNWU9FcTFPcm5iQ2YtRVBqeURLYnZWQ1RIV2RIX2stOU00OWlZMHp4OExVOFFXZ0I2U2htS1p6ZG1oRjU3dTg0cEI4S3FKTEk1cENMbldFZE9EbWdkTHplY3RERnh6cHVzUU1nZzNScDhTNXM5T2h4LWw3aVM0UFREMjVIbmNQVERST3YteE5HUWk0RTcwRkl6N285aWZkZ3NzMGRfTFMxTXpWall0dyZzPVhVdHY5Nng4OUhWQlVSWTMwZ2hwTVBvRWpNTFhVZ0hheUMyaFN5NzAxaUcyX0xyVFlHOThqQnRpMmtJVUQyb0paWWhZRjZRX1pUSXRLb0V3X2N5U3dwYnp6bERtTmdQOC16cTAzV2NMNWVjVExneG9hSFVUZFd3S2p5ZllxZWpjZHdNb3VjM3RqOEU0RHJPenBRSGVOaC1lVGtrUnRCTGh4VHd4QWUwekpSLXZKb3F3aEhVTHNaS2hCT2JMd0VRZWN3OUtIdEtlTy1hWElsNkNQbks2dGNZUXBJMzZqSDFnWndrUkEtTGFCNjVieDV5MWRnOE93RmlianRIcWlaQjRTYjJJZ2FRcnE4NlFWLUZ2dUlSTWNBUDZOOUVzRzc4R3daVklkZlhWVDZmUnBqUlBjMzJqZHUyYlQ3ZXJvVVdQUVV1R0N1UXVLY0JlbUpyXzJsQ3ZyUSZoPWdiNVZVSmg2elYyVWdGY3cyZkVyZk44cUtveWlCX2JTRXRxOXl1cE80RVU=", "RequestMethod": "GET", "RequestHeaders": { "x-ms-client-request-id": [ - "87933a73-81bd-43c2-86d2-3e1b4c8b4028" + "a2bf867c-7d96-461c-b29b-f84bf3c60038" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -261,25 +261,25 @@ "no-cache" ], "x-ms-request-id": [ - "49376bc1-b474-4bd5-bb8b-53f9326b4976" + "1d1d6bf7-61d2-4fa3-8fb9-19333878dbf8" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], "x-ms-operation-identifier": [ - "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/442ef610-6171-444f-a8ea-9377672587ca" + "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/eastus2euap/24893fb9-3f5a-4523-9d02-e63b6bbed355" + ], + "x-ms-throttling-version": [ + "v2" ], "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], - "x-ms-ratelimit-remaining-subscription-global-reads": [ - "16499" - ], "x-ms-correlation-request-id": [ - "3bf59329-2655-4d21-8f69-aea46287d644" + "a54dc167-5c64-4308-b697-0cbb483469fd" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071944Z:3bf59329-2655-4d21-8f69-aea46287d644" + "EASTUS2EUAP:20251010T080254Z:a54dc167-5c64-4308-b697-0cbb483469fd" ], "X-Content-Type-Options": [ "nosniff" @@ -288,10 +288,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: B8CD8A5DAEB24B56A6751EE902FE0975 Ref B: MAA201060513047 Ref C: 2025-03-24T07:19:43Z" + "Ref A: 5E5A7EAFD6144D319E83EDB22D39B51C Ref B: MAA201060514011 Ref C: 2025-10-10T08:02:54Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:44 GMT" + "Fri, 10 Oct 2025 08:02:53 GMT" ], "Content-Length": [ "1435" @@ -303,25 +303,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "GET", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "87933a73-81bd-43c2-86d2-3e1b4c8b4028" + "a2bf867c-7d96-461c-b29b-f84bf3c60038" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -333,7 +333,7 @@ "no-cache" ], "x-ms-request-id": [ - "22fcc529-0c14-4f89-9a99-10f62456acab" + "46615157-6d78-4031-abb8-1271e2f9bda8" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" @@ -345,10 +345,10 @@ "16499" ], "x-ms-correlation-request-id": [ - "9b904983-ce73-4710-ba24-af69c4b8fc5b" + "b4f57a86-a295-4b1f-b447-b227582202bf" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071945Z:9b904983-ce73-4710-ba24-af69c4b8fc5b" + "SOUTHEASTASIA:20251010T080256Z:b4f57a86-a295-4b1f-b447-b227582202bf" ], "X-Content-Type-Options": [ "nosniff" @@ -357,10 +357,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 7ADE6E0B2F8543638D9C96BFCC2D7936 Ref B: MAA201060513047 Ref C: 2025-03-24T07:19:44Z" + "Ref A: B1202DA27E594913AB2F4BCC2DCB8ABF Ref B: MAA201060514011 Ref C: 2025-10-10T08:02:55Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:45 GMT" + "Fri, 10 Oct 2025 08:02:55 GMT" ], "Content-Length": [ "1435" @@ -372,25 +372,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "GET", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "84319308-5150-4c49-be9c-3eeb912eef6e" + "4e5b8e81-43a8-4407-9e57-6154e1371070" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -402,22 +402,22 @@ "no-cache" ], "x-ms-request-id": [ - "57df311b-a4fe-4ed1-a816-75dbfb031c62" + "f356b765-da1b-4e43-9709-8f799f64bd31" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "x-ms-throttling-version": [ + "v2" + ], "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], - "x-ms-ratelimit-remaining-subscription-global-reads": [ - "16499" - ], "x-ms-correlation-request-id": [ - "1c0697d6-2fbf-4141-a1c4-eb716a7d566e" + "8f49fb69-3cdb-4079-a1e3-b63abea5d337" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071947Z:1c0697d6-2fbf-4141-a1c4-eb716a7d566e" + "EASTUS2EUAP:20251010T080318Z:8f49fb69-3cdb-4079-a1e3-b63abea5d337" ], "X-Content-Type-Options": [ "nosniff" @@ -426,10 +426,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: E059BFEEFF254B7AAC85866F87CA21D4 Ref B: MAA201060516029 Ref C: 2025-03-24T07:19:45Z" + "Ref A: E82B1040CDB94DC7868F14015B7AB33A Ref B: MAA201060514035 Ref C: 2025-10-10T08:03:18Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:46 GMT" + "Fri, 10 Oct 2025 08:03:18 GMT" ], "Content-Length": [ "1435" @@ -441,25 +441,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "GET", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "d4bb1410-6964-44aa-a7bc-8b6fa1ce7c70" + "d99aac7f-1589-45d1-bc28-e0ffaf2ea790" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -471,22 +471,22 @@ "no-cache" ], "x-ms-request-id": [ - "c62f8f34-1f86-4afa-85aa-e66bab6dbcf6" + "fc58d58a-1de6-421d-b9f5-5b1d883440f0" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], - "x-ms-ratelimit-remaining-subscription-reads": [ - "1099" + "x-ms-throttling-version": [ + "v2" ], - "x-ms-ratelimit-remaining-subscription-global-reads": [ - "16499" + "x-ms-ratelimit-remaining-subscription-reads": [ + "1098" ], "x-ms-correlation-request-id": [ - "9533599b-c7e5-4eda-a410-1a780ffaf392" + "406d1ccf-4da2-43b8-965a-5a03551f1cce" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071953Z:9533599b-c7e5-4eda-a410-1a780ffaf392" + "EASTUS2EUAP:20251010T080320Z:406d1ccf-4da2-43b8-965a-5a03551f1cce" ], "X-Content-Type-Options": [ "nosniff" @@ -495,10 +495,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: EA91E75C0635488CBFFBBF5230B13867 Ref B: MAA201060513039 Ref C: 2025-03-24T07:19:51Z" + "Ref A: FB6B0B523E784404A1BB3FF1726FE773 Ref B: MAA201060514053 Ref C: 2025-10-10T08:03:20Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:52 GMT" + "Fri, 10 Oct 2025 08:03:20 GMT" ], "Content-Length": [ "1435" @@ -510,25 +510,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "GET", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "c3e1b38d-5b11-4cb6-a405-7c17f6eddf1b" + "c7a500a5-a9b5-43be-9a38-8f29b4ccd629" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -540,22 +540,22 @@ "no-cache" ], "x-ms-request-id": [ - "e4a3a722-b302-43ba-9ed3-6ed1055967d5" + "c780f8c5-ab32-49b0-9756-acba0d3d402b" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], + "x-ms-throttling-version": [ + "v2" + ], "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], - "x-ms-ratelimit-remaining-subscription-global-reads": [ - "16499" - ], "x-ms-correlation-request-id": [ - "7e1f79c6-1c3f-40f2-8918-0eb2f3aea91e" + "383567cd-d57b-43e1-81f0-02eff24a8738" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071954Z:7e1f79c6-1c3f-40f2-8918-0eb2f3aea91e" + "EASTUS2EUAP:20251010T080321Z:383567cd-d57b-43e1-81f0-02eff24a8738" ], "X-Content-Type-Options": [ "nosniff" @@ -564,10 +564,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 229A991DD40C42AA9806A02971101E3F Ref B: MAA201060513039 Ref C: 2025-03-24T07:19:53Z" + "Ref A: 3A97C006FD96474388C6C59F30402373 Ref B: MAA201060515049 Ref C: 2025-10-10T08:03:21Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:53 GMT" + "Fri, 10 Oct 2025 08:03:20 GMT" ], "Content-Length": [ "1435" @@ -579,25 +579,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "PATCH", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "d4bb1410-6964-44aa-a7bc-8b6fa1ce7c70" + "d99aac7f-1589-45d1-bc28-e0ffaf2ea790" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ], "Content-Type": [ "application/json; charset=utf-8" @@ -615,25 +615,25 @@ "no-cache" ], "x-ms-request-id": [ - "cea53455-cd07-4343-9271-1225b461bb0c" + "6d02c6c7-f5ee-4705-9d4e-a34760a77dfe" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], "x-ms-operation-identifier": [ - "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/24717fce-51fd-4137-abf6-125c473055c6" + "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/eastus2euap/1c8e44e7-d416-4719-80b4-ec8d822120ca" + ], + "x-ms-throttling-version": [ + "v2" ], "x-ms-ratelimit-remaining-subscription-writes": [ "799" ], - "x-ms-ratelimit-remaining-subscription-global-writes": [ - "11999" - ], "x-ms-correlation-request-id": [ - "e9a87d14-c906-49d0-82e5-d85d03cb62df" + "d284c731-3a1b-44e9-ba44-f70d0e86643d" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T071951Z:e9a87d14-c906-49d0-82e5-d85d03cb62df" + "EASTUS2EUAP:20251010T080320Z:d284c731-3a1b-44e9-ba44-f70d0e86643d" ], "X-Content-Type-Options": [ "nosniff" @@ -642,10 +642,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 66986C2FFA384544987F49D7E0554421 Ref B: MAA201060513039 Ref C: 2025-03-24T07:19:47Z" + "Ref A: 1372BA3303B549E7A31B4D36B97D6922 Ref B: MAA201060514053 Ref C: 2025-10-10T08:03:19Z" ], "Date": [ - "Mon, 24 Mar 2025 07:19:51 GMT" + "Fri, 10 Oct 2025 08:03:20 GMT" ], "Content-Length": [ "1435" @@ -657,25 +657,25 @@ "-1" ] }, - "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224\",\r\n \"name\": \"stopstestrg7224\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-03-24T07:19:24.5780006Z\",\r\n \"key2\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-03-24T07:19:24.5780006Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-03-24T07:19:24.4842481Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7224.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7224.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7224.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7224.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7224.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7224.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", + "ResponseBody": "{\r\n \"sku\": {\r\n \"name\": \"Standard_LRS\",\r\n \"tier\": \"Standard\"\r\n },\r\n \"kind\": \"StorageV2\",\r\n \"id\": \"/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685\",\r\n \"name\": \"stopstestrg7685\",\r\n \"type\": \"Microsoft.Storage/storageAccounts\",\r\n \"location\": \"eastus2euap\",\r\n \"tags\": {},\r\n \"properties\": {\r\n \"keyCreationTime\": {\r\n \"key1\": \"2025-10-10T08:02:35.3202168Z\",\r\n \"key2\": \"2025-10-10T08:02:35.3202168Z\"\r\n },\r\n \"privateEndpointConnections\": [],\r\n \"minimumTlsVersion\": \"TLS1_2\",\r\n \"allowBlobPublicAccess\": false,\r\n \"networkAcls\": {\r\n \"ipv6Rules\": [],\r\n \"bypass\": \"AzureServices\",\r\n \"virtualNetworkRules\": [],\r\n \"ipRules\": [],\r\n \"defaultAction\": \"Allow\"\r\n },\r\n \"supportsHttpsTrafficOnly\": true,\r\n \"encryption\": {\r\n \"services\": {\r\n \"file\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n },\r\n \"blob\": {\r\n \"keyType\": \"Account\",\r\n \"enabled\": true,\r\n \"lastEnabledTime\": \"2025-10-10T08:02:35.3358429Z\"\r\n }\r\n },\r\n \"keySource\": \"Microsoft.Storage\"\r\n },\r\n \"accessTier\": \"Hot\",\r\n \"provisioningState\": \"Succeeded\",\r\n \"creationTime\": \"2025-10-10T08:02:35.1639697Z\",\r\n \"primaryEndpoints\": {\r\n \"dfs\": \"https://stopstestrg7685.dfs.core.windows.net/\",\r\n \"web\": \"https://stopstestrg7685.z3.web.core.windows.net/\",\r\n \"blob\": \"https://stopstestrg7685.blob.core.windows.net/\",\r\n \"queue\": \"https://stopstestrg7685.queue.core.windows.net/\",\r\n \"table\": \"https://stopstestrg7685.table.core.windows.net/\",\r\n \"file\": \"https://stopstestrg7685.file.core.windows.net/\"\r\n },\r\n \"primaryLocation\": \"eastus2euap\",\r\n \"statusOfPrimary\": \"available\"\r\n }\r\n}", "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7224/providers/Microsoft.Storage/storageAccounts/stopstestrg7224?api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzIyNC9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg7685/providers/Microsoft.Storage/storageAccounts/stopstestrg7685?api-version=2025-01-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzY4NS9wcm92aWRlcnMvTWljcm9zb2Z0LlN0b3JhZ2Uvc3RvcmFnZUFjY291bnRzL3N0b3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDI1LTAxLTAx", "RequestMethod": "DELETE", "RequestHeaders": { "Accept-Language": [ "en-US" ], "x-ms-client-request-id": [ - "31326eec-0712-4421-a683-4f84778735d8" + "d97b674d-2b9d-472f-a4ed-d994041e3edc" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Storage.StorageManagementClient/8.2.0" + "Microsoft.Azure.Management.Storage.StorageManagementClient/9.2.0" ] }, "RequestBody": "", @@ -687,25 +687,25 @@ "no-cache" ], "x-ms-request-id": [ - "bab4a510-235a-43e0-b5a0-6f352310fdb8" + "0dae4896-e92a-47d3-97ac-d9c621ad7bd6" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" ], "x-ms-operation-identifier": [ - "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/southeastasia/5a51e38f-ac16-4317-9b96-410832b762db" + "tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47,objectId=c2bdc6ca-a59c-411c-bf1a-a97ceade71ea/eastus2euap/6a88ccc5-a3d2-4e15-8022-8a659806a201" ], - "x-ms-ratelimit-remaining-subscription-deletes": [ - "800" + "x-ms-throttling-version": [ + "v2" ], - "x-ms-ratelimit-remaining-subscription-global-deletes": [ - "12000" + "x-ms-ratelimit-remaining-subscription-deletes": [ + "799" ], "x-ms-correlation-request-id": [ - "a7a34882-4b52-4c72-9744-69ff6702d693" + "24004c06-0dd3-4928-b275-6a074694040a" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T072005Z:a7a34882-4b52-4c72-9744-69ff6702d693" + "EASTUS2EUAP:20251010T080323Z:24004c06-0dd3-4928-b275-6a074694040a" ], "X-Content-Type-Options": [ "nosniff" @@ -714,10 +714,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: DD804955A0434954A93BC94F2549BEFD Ref B: MAA201060516033 Ref C: 2025-03-24T07:19:54Z" + "Ref A: 1EA5747BF99640A8855C97BC06808006 Ref B: MAA201060516009 Ref C: 2025-10-10T08:03:22Z" ], "Date": [ - "Mon, 24 Mar 2025 07:20:05 GMT" + "Fri, 10 Oct 2025 08:03:23 GMT" ], "Content-Type": [ "text/plain; charset=utf-8" @@ -733,21 +733,21 @@ "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourcegroups/pstestrg7224?api-version=2016-09-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlZ3JvdXBzL3BzdGVzdHJnNzIyND9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourcegroups/pstestrg7685?api-version=2016-09-01", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlZ3JvdXBzL3BzdGVzdHJnNzY4NT9hcGktdmVyc2lvbj0yMDE2LTA5LTAx", "RequestMethod": "DELETE", "RequestHeaders": { "x-ms-client-request-id": [ - "13c82136-73b0-49d2-b43c-f917e970539d" + "a8f199a1-1d24-4309-9f8f-db8c2451669f" ], "Accept-Language": [ "en-US" ], "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.105" + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.110" ] }, "RequestBody": "", @@ -759,25 +759,25 @@ "no-cache" ], "Location": [ - "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzcyMjQtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638783976105491175&c=MIIHpTCCBo2gAwIBAgITfwTbn828Ducmmj24MgAEBNufzTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjUwMTI1MTI1MTUzWhcNMjUwNzI0MTI1MTUzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL20TJQJbhV5Jrwzn-fiGrag_COjmaTwDy9Ir0oe1CLIfiJ9ageBVfcEmW-k5bUVL3eg6B8mQTEYE-FJDVVZ4jbJ9Qw8REpm2kBASDRwoItVVD_HBpJf1VhdViEPJPMDvLg0mAmde0X2m3HVEO6Y7eggJ9iL31DDv9PF-Xvn6x9xlWvO3_OCJReOoV_HCTDyzds4Pq9OySlnAGAozKYzOumbcVPz_WEMc_vwW80fjQLmdihJgp6_15qlnMdx48MQhVGT3y4gdbknMQJghyzTFcsASVncSqtmz8nAx5qT9dZ63iaF6E7Fbx76fnF4lx5K72ANX5cjlfVOig5jzgf8RPkCAwEAAaOCBJIwggSOMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQp8DW_okjTMbIBWANCvQr_FrvzazAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAA5sOyKXcQwQQAVKz9J8GIjVymZkoHVSft4TqdgNxSdoIAYkk_tYdx_dEZChJfSvIfzhzAb8k57EHRKNwKtP752SSUr0Q0oB60Y3Fq7il1fMKFTbVk9ZMTyOoo3hJmRwJaisv9rK2UVHWvwD2iUKD0IK_tHwy3m6bqbGDVKaRn1K9UYM39wEvEdy-k8J2z3Olfn6yYpcrVBHWzDzSy7TVdgUzaa0IZ670aJGPrNVYMvsCepP2_T_FdHVk4LoK9K4_0-GkZbvBLZPQO6FYgttg78s6Nn34TUcXWeTeeXArlkf48rbeL5fDY_CJyKYXLv3arwG7gUdcU5T8MGHeLLzcyo&s=LMxeuLZ18muVt2J25X8riqyoqKgLEM5alsrQY8b6Lnl62mFSI_TjfccriuVDNe7zpP9jiPJrIdt3ABFMXqUj79ZRDzZXujGBOTtXCE0Z8pH5m8sxybQIszu9d_5pPu-ffcOvf4urx4AdrvJIoOZTXPjThPNuFEhKfg3DyHG52EQI7-lQ1PKGnMexjtF73EgDzRRyYkIResQT2SIgJ8WgveAa5PiaQODz-STPf1hg43DLuRr3cJmEDQU2iefTNJ5ykvRYp7VVES2zhIIcALArUUq835owdZzb_TwekrFzx8trN6eOZJaqgDEuO4_N5dF3po5VMVL75dXHcg4V5OSQ5A&h=aumnYUKTWRoxMhpciJ71bc0tKVP-aqVuuHFzhoOkvlY" + "https://management.azure.com/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzc2ODUtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638956802050111067&c=MIIHhjCCBm6gAwIBAgITHgdzZdlIIkUuAR-erwAAB3Nl2TANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjUwOTIwMTIxMTA4WhcNMjUxMjE5MTIxMTA4WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMJdx5gosJyiN09QgNkBcW6TBOydzmy8Gen7NusoPSddWPhbbVgJyEb-OsP6w5MIoqFiNltOJtjj8M72k7AglYsZweT_CNnxgiRS1jChhObN18KpLDw5gSiZgXaJuHpRGVeg9YPLEHR8Y3G3AidB-impyg7MoDOu6uiG5OP6QJO1dAId9x6Dj8udEEuoBxP_ZB306r3gSTpYQb3E4wCujsyYi2J6o4iiIjevkuwjg-CesD1N0r_Mh9AupLsoVgAQFUJLCkvgGZEfn2fFeymo5bHas5b17aSF-ZDNkKx9iAyn7H0FeUlEY7yN3IaFhs8-X8-yNXd3aUCBBp7BH6UUQckCAwEAAaOCBHMwggRvMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwIwCgYIKwYBBQUHAwEwPAYJKwYBBAGCNxUHBC8wLQYlKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFgh8fIENbYcQIBZAIBBjCCAcsGCCsGAQUFBwEBBIIBvTCCAbkwYwYIKwYBBQUHMAKGV2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2lpbmZyYS9DZXJ0cy9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDEuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwyLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMy5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDQuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwHQYDVR0OBBYEFHLLdLURrEo5afGWQTdSs7bPgphnMA4GA1UdDwEB_wQEAwIFoDCCASYGA1UdHwSCAR0wggEZMIIBFaCCARGgggENhj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ1JML0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwxLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwyLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwzLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmw0LmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmwwgZ0GA1UdIASBlTCBkjAMBgorBgEEAYI3ewEBMGYGCisGAQQBgjd7AgIwWDBWBggrBgEFBQcCAjBKHkgAMwAzAGUAMAAxADkAMgAxAC0ANABkADYANAAtADQAZgA4AGMALQBhADAANQA1AC0ANQBiAGQAYQBmAGYAZAA1AGUAMwAzAGQwDAYKKwYBBAGCN3sDAjAMBgorBgEEAYI3ewQCMB8GA1UdIwQYMBaAFPFGaMbxw_ArLX2LauGy-b41_NFBMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOCAQEAwMsjoPnTGo4sN08FWnj3jpNBu8dIwc6qJJ1IPjE5T6PAsyMosFXPrHRxdOlVD_jZdSm2MO_7mHJkBl-bD_Y5lRxAgRyUZURhFy2UPNxwQZcFFuqPR1UtQyTZxiEiY7G8HUe-fP6i8vV9M7yoUqlDhaa7c1HJTmhAJuAcwP8_P3CBrr9MYOEq1OrnbCf-EPjyDKbvVCTHWdH_k-9M49iY0zx8LU8QWgB6ShmKZzdmhF57u84pB8KqJLI5pCLnWEdODmgdLzectDFxzpusQMgg3Rp8S5s9Ohx-l7iS4PTD25HncPTDROv-xNGQi4E70FIz7o9ifdgss0d_LS1MzVjYtw&s=WPR6Xj1cHblNLCDUJVsjVQKJYo5Buulh2nQJclKOTpYV1Aw6sr4ve030vC9vMVZ3JrbL7zx62H0GYNt4mb-dxdHAjUSghak0QKTxG4Kn33rfPbxBe7dVbY7-hEWGWixNGH4rRF4Z_G_a53Y5kOXWNw14NIxI_LBY5Das_JdI4eIOhiLPfMsY0CZ2GyVsiNiTLqAe7K6nLQ8e4ZF7AIRif9RTyQFkjHVfktPmQ2gpwIExMUMv3Y2WGNMnXPLLnjHY7bG87uovTiclfFik0sE8QeqvpPmBcy3pzwCuz2FGwzRm-ccnhELKzx-1C2z2wvx-dTl3B0ZdbqNrMkJFOgQmjQ&h=BjIJ40SWj2U_4GZfpnIcF7JtNogt8jEPTUyIBBPZmIg" ], "Retry-After": [ "15" ], + "x-ms-throttling-version": [ + "v2" + ], "x-ms-ratelimit-remaining-subscription-deletes": [ "799" ], - "x-ms-ratelimit-remaining-subscription-global-deletes": [ - "11999" - ], "x-ms-request-id": [ - "92e9cbe0-90f3-4462-a92e-7318c9bfc560" + "0a848d43-16e9-49bf-bb48-472b5d460080" ], "x-ms-correlation-request-id": [ - "92e9cbe0-90f3-4462-a92e-7318c9bfc560" + "0a848d43-16e9-49bf-bb48-472b5d460080" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T072010Z:92e9cbe0-90f3-4462-a92e-7318c9bfc560" + "EASTUS2EUAP:20251010T080325Z:0a848d43-16e9-49bf-bb48-472b5d460080" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" @@ -789,10 +789,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 32E85EB1C07547B8AD2BA4D0CC8EF11A Ref B: MAA201060514029 Ref C: 2025-03-24T07:20:05Z" + "Ref A: 34B2BC8EA34E4D1B9F42F91E639C2095 Ref B: MAA201060513039 Ref C: 2025-10-10T08:03:24Z" ], "Date": [ - "Mon, 24 Mar 2025 07:20:10 GMT" + "Fri, 10 Oct 2025 08:03:25 GMT" ], "Expires": [ "-1" @@ -805,15 +805,15 @@ "StatusCode": 202 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzcyMjQtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638783976105491175&c=MIIHpTCCBo2gAwIBAgITfwTbn828Ducmmj24MgAEBNufzTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjUwMTI1MTI1MTUzWhcNMjUwNzI0MTI1MTUzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL20TJQJbhV5Jrwzn-fiGrag_COjmaTwDy9Ir0oe1CLIfiJ9ageBVfcEmW-k5bUVL3eg6B8mQTEYE-FJDVVZ4jbJ9Qw8REpm2kBASDRwoItVVD_HBpJf1VhdViEPJPMDvLg0mAmde0X2m3HVEO6Y7eggJ9iL31DDv9PF-Xvn6x9xlWvO3_OCJReOoV_HCTDyzds4Pq9OySlnAGAozKYzOumbcVPz_WEMc_vwW80fjQLmdihJgp6_15qlnMdx48MQhVGT3y4gdbknMQJghyzTFcsASVncSqtmz8nAx5qT9dZ63iaF6E7Fbx76fnF4lx5K72ANX5cjlfVOig5jzgf8RPkCAwEAAaOCBJIwggSOMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQp8DW_okjTMbIBWANCvQr_FrvzazAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAA5sOyKXcQwQQAVKz9J8GIjVymZkoHVSft4TqdgNxSdoIAYkk_tYdx_dEZChJfSvIfzhzAb8k57EHRKNwKtP752SSUr0Q0oB60Y3Fq7il1fMKFTbVk9ZMTyOoo3hJmRwJaisv9rK2UVHWvwD2iUKD0IK_tHwy3m6bqbGDVKaRn1K9UYM39wEvEdy-k8J2z3Olfn6yYpcrVBHWzDzSy7TVdgUzaa0IZ670aJGPrNVYMvsCepP2_T_FdHVk4LoK9K4_0-GkZbvBLZPQO6FYgttg78s6Nn34TUcXWeTeeXArlkf48rbeL5fDY_CJyKYXLv3arwG7gUdcU5T8MGHeLLzcyo&s=LMxeuLZ18muVt2J25X8riqyoqKgLEM5alsrQY8b6Lnl62mFSI_TjfccriuVDNe7zpP9jiPJrIdt3ABFMXqUj79ZRDzZXujGBOTtXCE0Z8pH5m8sxybQIszu9d_5pPu-ffcOvf4urx4AdrvJIoOZTXPjThPNuFEhKfg3DyHG52EQI7-lQ1PKGnMexjtF73EgDzRRyYkIResQT2SIgJ8WgveAa5PiaQODz-STPf1hg43DLuRr3cJmEDQU2iefTNJ5ykvRYp7VVES2zhIIcALArUUq835owdZzb_TwekrFzx8trN6eOZJaqgDEuO4_N5dF3po5VMVL75dXHcg4V5OSQ5A&h=aumnYUKTWRoxMhpciJ71bc0tKVP-aqVuuHFzhoOkvlY", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVTFSRlUxUlNSemN5TWpRdFJVRlRWRlZUTWtWVlFWQWlMQ0pxYjJKTWIyTmhkR2x2YmlJNkltVmhjM1IxY3pKbGRXRndJbjA/YXBpLXZlcnNpb249MjAxNi0wOS0wMSZ0PTYzODc4Mzk3NjEwNTQ5MTE3NSZjPU1JSUhwVENDQm8yZ0F3SUJBZ0lUZndUYm44MjhEdWNtbWoyNE1nQUVCTnVmelRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01ESXdIaGNOTWpVd01USTFNVEkxTVRVeldoY05NalV3TnpJME1USTFNVFV6V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUwyMFRKUUpiaFY1SnJ3em4tZmlHcmFnX0NPam1hVHdEeTlJcjBvZTFDTElmaUo5YWdlQlZmY0VtVy1rNWJVVkwzZWc2QjhtUVRFWUUtRkpEVlZaNGpiSjlRdzhSRXBtMmtCQVNEUndvSXRWVkRfSEJwSmYxVmhkVmlFUEpQTUR2TGcwbUFtZGUwWDJtM0hWRU82WTdlZ2dKOWlMMzFERHY5UEYtWHZuNng5eGxXdk8zX09DSlJlT29WX0hDVER5emRzNFBxOU95U2xuQUdBb3pLWXpPdW1iY1ZQel9XRU1jX3Z3VzgwZmpRTG1kaWhKZ3A2XzE1cWxuTWR4NDhNUWhWR1QzeTRnZGJrbk1RSmdoeXpURmNzQVNWbmNTcXRtejhuQXg1cVQ5ZFo2M2lhRjZFN0ZieDc2Zm5GNGx4NUs3MkFOWDVjamxmVk9pZzVqemdmOFJQa0NBd0VBQWFPQ0JKSXdnZ1NPTUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdFd0NnWUlLd1lCQlFVSEF3SXdQUVlKS3dZQkJBR0NOeFVIQkRBd0xnWW1Ld1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaGZtUlM0V3NtVFFDQVdRQ0FRY3dnZ0hhQmdnckJnRUZCUWNCQVFTQ0Fjd3dnZ0hJTUdZR0NDc0dBUVVGQnpBQ2hscG9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlEyVnlkSE12UWt3eVVFdEpTVTVVUTBFd01TNUJUVVV1UjBKTVgwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdNaWcwS1M1amNuUXdWZ1lJS3dZQkJRVUhNQUtHU21oMGRIQTZMeTlqY213eExtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURFdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01ESW9OQ2t1WTNKME1GWUdDQ3NHQVFVRkJ6QUNoa3BvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJGcFlTOUNUREpRUzBsSlRsUkRRVEF4TGtGTlJTNUhRa3hmUVUxRkpUSXdTVzVtY21FbE1qQkRRU1V5TURBeUtEUXBMbU55ZERCV0JnZ3JCZ0VGQlFjd0FvWkthSFIwY0RvdkwyTnliRE11WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNUzVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3TWlnMEtTNWpjblF3VmdZSUt3WUJCUVVITUFLR1NtaDBkSEE2THk5amNtdzBMbUZ0WlM1blltd3ZZV2xoTDBKTU1sQkxTVWxPVkVOQk1ERXVRVTFGTGtkQ1RGOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSjBNQjBHQTFVZERnUVdCQlFwOERXX29ralRNYklCV0FOQ3ZRcl9GcnZ6YXpBT0JnTlZIUThCQWY4RUJBTUNCYUF3Z2dFMUJnTlZIUjhFZ2dFc01JSUJLRENDQVNTZ2dnRWdvSUlCSElaQ2FIUjBjRG92TDJOeWJDNXRhV055YjNOdlpuUXVZMjl0TDNCcmFXbHVabkpoTDBOU1RDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTVM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTXk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTkM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNNSUdkQmdOVkhTQUVnWlV3Z1pJd0RBWUtLd1lCQkFHQ04zc0JBVEJtQmdvckJnRUVBWUkzZXdJQ01GZ3dWZ1lJS3dZQkJRVUhBZ0l3U2g1SUFETUFNd0JsQURBQU1RQTVBRElBTVFBdEFEUUFaQUEyQURRQUxRQTBBR1lBT0FCakFDMEFZUUF3QURVQU5RQXRBRFVBWWdCa0FHRUFaZ0JtQUdRQU5RQmxBRE1BTXdCa01Bd0dDaXNHQVFRQmdqZDdBd0l3REFZS0t3WUJCQUdDTjNzRUFqQWZCZ05WSFNNRUdEQVdnQlN1ZWNKclhTV0lFd2IyQnduRGwzeDdsNDhkVlRBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFRWUlLd1lCQlFVSEF3SXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBQTVzT3lLWGNRd1FRQVZLejlKOEdJalZ5bVprb0hWU2Z0NFRxZGdOeFNkb0lBWWtrX3RZZHhfZEVaQ2hKZlN2SWZ6aHpBYjhrNTdFSFJLTndLdFA3NTJTU1VyMFEwb0I2MFkzRnE3aWwxZk1LRlRiVms5Wk1UeU9vbzNoSm1Sd0phaXN2OXJLMlVWSFd2d0QyaVVLRDBJS190SHd5M202YnFiR0RWS2FSbjFLOVVZTTM5d0V2RWR5LWs4SjJ6M09sZm42eVlwY3JWQkhXekR6U3k3VFZkZ1V6YWEwSVo2NzBhSkdQck5WWU12c0NlcFAyX1RfRmRIVms0TG9LOUs0XzAtR2taYnZCTFpQUU82RllndHRnNzhzNk5uMzRUVWNYV2VUZWVYQXJsa2Y0OHJiZUw1ZkRZX0NKeUtZWEx2M2Fyd0c3Z1VkY1U1VDhNR0hlTEx6Y3lvJnM9TE14ZXVMWjE4bXVWdDJKMjVYOHJpcXlvcUtnTEVNNWFsc3JRWThiNkxubDYybUZTSV9UamZjY3JpdVZETmU3enBQOWppUEpySWR0M0FCRk1YcVVqNzlaUkR6Wlh1akdCT1R0WENFMFo4cEg1bThzeHliUUlzenU5ZF81cFB1LWZmY092ZjR1cng0QWRydkpJb09aVFhQalRoUE51RkVoS2ZnM0R5SEc1MkVRSTctbFExUEtHbk1leGp0RjczRWdEelJSeVlrSVJlc1FUMlNJZ0o4V2d2ZUFhNVBpYVFPRHotU1RQZjFoZzQzREx1UnIzY0ptRURRVTJpZWZUTko1eWt2UllwN1ZWRVMyemhJSWNBTEFyVVVxODM1b3dkWnpiX1R3ZWtyRnp4OHRyTjZlT1pKYXFnREV1TzRfTjVkRjNwbzVWTVZMNzVkWEhjZzRWNU9TUTVBJmg9YXVtbllVS1RXUm94TWhwY2lKNzFiYzB0S1ZQLWFxVnV1SEZ6aG9Pa3ZsWQ==", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzc2ODUtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638956802050111067&c=MIIHhjCCBm6gAwIBAgITHgdzZdlIIkUuAR-erwAAB3Nl2TANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjUwOTIwMTIxMTA4WhcNMjUxMjE5MTIxMTA4WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMJdx5gosJyiN09QgNkBcW6TBOydzmy8Gen7NusoPSddWPhbbVgJyEb-OsP6w5MIoqFiNltOJtjj8M72k7AglYsZweT_CNnxgiRS1jChhObN18KpLDw5gSiZgXaJuHpRGVeg9YPLEHR8Y3G3AidB-impyg7MoDOu6uiG5OP6QJO1dAId9x6Dj8udEEuoBxP_ZB306r3gSTpYQb3E4wCujsyYi2J6o4iiIjevkuwjg-CesD1N0r_Mh9AupLsoVgAQFUJLCkvgGZEfn2fFeymo5bHas5b17aSF-ZDNkKx9iAyn7H0FeUlEY7yN3IaFhs8-X8-yNXd3aUCBBp7BH6UUQckCAwEAAaOCBHMwggRvMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwIwCgYIKwYBBQUHAwEwPAYJKwYBBAGCNxUHBC8wLQYlKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFgh8fIENbYcQIBZAIBBjCCAcsGCCsGAQUFBwEBBIIBvTCCAbkwYwYIKwYBBQUHMAKGV2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2lpbmZyYS9DZXJ0cy9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDEuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwyLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMy5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDQuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwHQYDVR0OBBYEFHLLdLURrEo5afGWQTdSs7bPgphnMA4GA1UdDwEB_wQEAwIFoDCCASYGA1UdHwSCAR0wggEZMIIBFaCCARGgggENhj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ1JML0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwxLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwyLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwzLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmw0LmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmwwgZ0GA1UdIASBlTCBkjAMBgorBgEEAYI3ewEBMGYGCisGAQQBgjd7AgIwWDBWBggrBgEFBQcCAjBKHkgAMwAzAGUAMAAxADkAMgAxAC0ANABkADYANAAtADQAZgA4AGMALQBhADAANQA1AC0ANQBiAGQAYQBmAGYAZAA1AGUAMwAzAGQwDAYKKwYBBAGCN3sDAjAMBgorBgEEAYI3ewQCMB8GA1UdIwQYMBaAFPFGaMbxw_ArLX2LauGy-b41_NFBMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOCAQEAwMsjoPnTGo4sN08FWnj3jpNBu8dIwc6qJJ1IPjE5T6PAsyMosFXPrHRxdOlVD_jZdSm2MO_7mHJkBl-bD_Y5lRxAgRyUZURhFy2UPNxwQZcFFuqPR1UtQyTZxiEiY7G8HUe-fP6i8vV9M7yoUqlDhaa7c1HJTmhAJuAcwP8_P3CBrr9MYOEq1OrnbCf-EPjyDKbvVCTHWdH_k-9M49iY0zx8LU8QWgB6ShmKZzdmhF57u84pB8KqJLI5pCLnWEdODmgdLzectDFxzpusQMgg3Rp8S5s9Ohx-l7iS4PTD25HncPTDROv-xNGQi4E70FIz7o9ifdgss0d_LS1MzVjYtw&s=WPR6Xj1cHblNLCDUJVsjVQKJYo5Buulh2nQJclKOTpYV1Aw6sr4ve030vC9vMVZ3JrbL7zx62H0GYNt4mb-dxdHAjUSghak0QKTxG4Kn33rfPbxBe7dVbY7-hEWGWixNGH4rRF4Z_G_a53Y5kOXWNw14NIxI_LBY5Das_JdI4eIOhiLPfMsY0CZ2GyVsiNiTLqAe7K6nLQ8e4ZF7AIRif9RTyQFkjHVfktPmQ2gpwIExMUMv3Y2WGNMnXPLLnjHY7bG87uovTiclfFik0sE8QeqvpPmBcy3pzwCuz2FGwzRm-ccnhELKzx-1C2z2wvx-dTl3B0ZdbqNrMkJFOgQmjQ&h=BjIJ40SWj2U_4GZfpnIcF7JtNogt8jEPTUyIBBPZmIg", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVTFSRlUxUlNSemMyT0RVdFJVRlRWRlZUTWtWVlFWQWlMQ0pxYjJKTWIyTmhkR2x2YmlJNkltVmhjM1IxY3pKbGRXRndJbjA/YXBpLXZlcnNpb249MjAxNi0wOS0wMSZ0PTYzODk1NjgwMjA1MDExMTA2NyZjPU1JSUhoakNDQm02Z0F3SUJBZ0lUSGdkelpkbElJa1V1QVItZXJ3QUFCM05sMlRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01EWXdIaGNOTWpVd09USXdNVEl4TVRBNFdoY05NalV4TWpFNU1USXhNVEE0V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQU1KZHg1Z29zSnlpTjA5UWdOa0JjVzZUQk95ZHpteThHZW43TnVzb1BTZGRXUGhiYlZnSnlFYi1Pc1A2dzVNSW9xRmlObHRPSnRqajhNNzJrN0FnbFlzWndlVF9DTm54Z2lSUzFqQ2hoT2JOMThLcExEdzVnU2laZ1hhSnVIcFJHVmVnOVlQTEVIUjhZM0czQWlkQi1pbXB5ZzdNb0RPdTZ1aUc1T1A2UUpPMWRBSWQ5eDZEajh1ZEVFdW9CeFBfWkIzMDZyM2dTVHBZUWIzRTR3Q3Vqc3lZaTJKNm80aWlJamV2a3V3amctQ2VzRDFOMHJfTWg5QXVwTHNvVmdBUUZVSkxDa3ZnR1pFZm4yZkZleW1vNWJIYXM1YjE3YVNGLVpETmtLeDlpQXluN0gwRmVVbEVZN3lOM0lhRmhzOC1YOC15TlhkM2FVQ0JCcDdCSDZVVVFja0NBd0VBQWFPQ0JITXdnZ1J2TUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdJd0NnWUlLd1lCQlFVSEF3RXdQQVlKS3dZQkJBR0NOeFVIQkM4d0xRWWxLd1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaDhmSUVOYlljUUlCWkFJQkJqQ0NBY3NHQ0NzR0FRVUZCd0VCQklJQnZUQ0NBYmt3WXdZSUt3WUJCUVVITUFLR1YyaDBkSEE2THk5amNtd3ViV2xqY205emIyWjBMbU52YlM5d2EybHBibVp5WVM5RFpYSjBjeTlDVERKUVMwbEpUbFJEUVRBeUxrRk5SUzVIUWt4ZlFVMUZKVEl3U1c1bWNtRWxNakJEUVNVeU1EQTJMbU55ZERCVEJnZ3JCZ0VGQlFjd0FvWkhhSFIwY0RvdkwyTnliREV1WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNaTVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNuUXdVd1lJS3dZQkJRVUhNQUtHUjJoMGRIQTZMeTlqY213eUxtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURJdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01EWXVZM0owTUZNR0NDc0dBUVVGQnpBQ2hrZG9kSFJ3T2k4dlkzSnNNeTVoYldVdVoySnNMMkZwWVM5Q1RESlFTMGxKVGxSRFFUQXlMa0ZOUlM1SFFreGZRVTFGSlRJd1NXNW1jbUVsTWpCRFFTVXlNREEyTG1OeWREQlRCZ2dyQmdFRkJRY3dBb1pIYUhSMGNEb3ZMMk55YkRRdVlXMWxMbWRpYkM5aGFXRXZRa3d5VUV0SlNVNVVRMEV3TWk1QlRVVXVSMEpNWDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjblF3SFFZRFZSME9CQllFRkhMTGRMVVJyRW81YWZHV1FUZFNzN2JQZ3Bobk1BNEdBMVVkRHdFQl93UUVBd0lGb0RDQ0FTWUdBMVVkSHdTQ0FSMHdnZ0VaTUlJQkZhQ0NBUkdnZ2dFTmhqOW9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlExSk1MMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXd4TG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY215R01XaDBkSEE2THk5amNtd3lMbUZ0WlM1blltd3ZZM0pzTDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjbXlHTVdoMGRIQTZMeTlqY213ekxtRnRaUzVuWW13dlkzSnNMMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXcwTG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY213d2daMEdBMVVkSUFTQmxUQ0JrakFNQmdvckJnRUVBWUkzZXdFQk1HWUdDaXNHQVFRQmdqZDdBZ0l3V0RCV0JnZ3JCZ0VGQlFjQ0FqQktIa2dBTXdBekFHVUFNQUF4QURrQU1nQXhBQzBBTkFCa0FEWUFOQUF0QURRQVpnQTRBR01BTFFCaEFEQUFOUUExQUMwQU5RQmlBR1FBWVFCbUFHWUFaQUExQUdVQU13QXpBR1F3REFZS0t3WUJCQUdDTjNzREFqQU1CZ29yQmdFRUFZSTNld1FDTUI4R0ExVWRJd1FZTUJhQUZQRkdhTWJ4d19BckxYMkxhdUd5LWI0MV9ORkJNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNEQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQXdNc2pvUG5UR280c04wOEZXbmozanBOQnU4ZEl3YzZxSkoxSVBqRTVUNlBBc3lNb3NGWFBySFJ4ZE9sVkRfalpkU20yTU9fN21ISmtCbC1iRF9ZNWxSeEFnUnlVWlVSaEZ5MlVQTnh3UVpjRkZ1cVBSMVV0UXlUWnhpRWlZN0c4SFVlLWZQNmk4dlY5TTd5b1VxbERoYWE3YzFISlRtaEFKdUFjd1A4X1AzQ0JycjlNWU9FcTFPcm5iQ2YtRVBqeURLYnZWQ1RIV2RIX2stOU00OWlZMHp4OExVOFFXZ0I2U2htS1p6ZG1oRjU3dTg0cEI4S3FKTEk1cENMbldFZE9EbWdkTHplY3RERnh6cHVzUU1nZzNScDhTNXM5T2h4LWw3aVM0UFREMjVIbmNQVERST3YteE5HUWk0RTcwRkl6N285aWZkZ3NzMGRfTFMxTXpWall0dyZzPVdQUjZYajFjSGJsTkxDRFVKVnNqVlFLSllvNUJ1dWxoMm5RSmNsS09UcFlWMUF3NnNyNHZlMDMwdkM5dk1WWjNKcmJMN3p4NjJIMEdZTnQ0bWItZHhkSEFqVVNnaGFrMFFLVHhHNEtuMzNyZlBieEJlN2RWYlk3LWhFV0dXaXhOR0g0clJGNFpfR19hNTNZNWtPWFdOdzE0Tkl4SV9MQlk1RGFzX0pkSTRlSU9oaUxQZk1zWTBDWjJHeVZzaU5pVExxQWU3SzZuTFE4ZTRaRjdBSVJpZjlSVHlRRmtqSFZma3RQbVEyZ3B3SUV4TVVNdjNZMldHTk1uWFBMTG5qSFk3Ykc4N3VvdlRpY2xmRmlrMHNFOFFlcXZwUG1CY3kzcHp3Q3V6MkZHd3pSbS1jY25oRUxLengtMUMyejJ3dngtZFRsM0IwWmRicU5yTWtKRk9nUW1qUSZoPUJqSUo0MFNXajJVXzRHWmZwbkljRjdKdE5vZ3Q4akVQVFV5SUJCUFptSWc=", "RequestMethod": "GET", "RequestHeaders": { "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.105" + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.110" ] }, "RequestBody": "", @@ -824,20 +824,20 @@ "Pragma": [ "no-cache" ], + "x-ms-throttling-version": [ + "v2" + ], "x-ms-ratelimit-remaining-subscription-reads": [ "1099" ], - "x-ms-ratelimit-remaining-subscription-global-reads": [ - "16499" - ], "x-ms-request-id": [ - "f6b2817b-9a71-4699-ba46-b9b8b35fd14e" + "f2062803-9f18-4534-b2e5-0dfaaf26ad1c" ], "x-ms-correlation-request-id": [ - "f6b2817b-9a71-4699-ba46-b9b8b35fd14e" + "f2062803-9f18-4534-b2e5-0dfaaf26ad1c" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T072026Z:f6b2817b-9a71-4699-ba46-b9b8b35fd14e" + "EASTUS2EUAP:20251010T080340Z:f2062803-9f18-4534-b2e5-0dfaaf26ad1c" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" @@ -849,10 +849,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: 94E26D58B1C0490FA009672CC3DA3473 Ref B: MAA201060514029 Ref C: 2025-03-24T07:20:25Z" + "Ref A: 31543CB79D69465A9ADAA08874E99E04 Ref B: MAA201060513039 Ref C: 2025-10-10T08:03:40Z" ], "Date": [ - "Mon, 24 Mar 2025 07:20:26 GMT" + "Fri, 10 Oct 2025 08:03:40 GMT" ], "Expires": [ "-1" @@ -865,15 +865,15 @@ "StatusCode": 200 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzcyMjQtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638783976105491175&c=MIIHpTCCBo2gAwIBAgITfwTbn828Ducmmj24MgAEBNufzTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjUwMTI1MTI1MTUzWhcNMjUwNzI0MTI1MTUzWjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL20TJQJbhV5Jrwzn-fiGrag_COjmaTwDy9Ir0oe1CLIfiJ9ageBVfcEmW-k5bUVL3eg6B8mQTEYE-FJDVVZ4jbJ9Qw8REpm2kBASDRwoItVVD_HBpJf1VhdViEPJPMDvLg0mAmde0X2m3HVEO6Y7eggJ9iL31DDv9PF-Xvn6x9xlWvO3_OCJReOoV_HCTDyzds4Pq9OySlnAGAozKYzOumbcVPz_WEMc_vwW80fjQLmdihJgp6_15qlnMdx48MQhVGT3y4gdbknMQJghyzTFcsASVncSqtmz8nAx5qT9dZ63iaF6E7Fbx76fnF4lx5K72ANX5cjlfVOig5jzgf8RPkCAwEAAaOCBJIwggSOMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFghfmRS4WsmTQCAWQCAQcwggHaBggrBgEFBQcBAQSCAcwwggHIMGYGCCsGAQUFBzAChlpodHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ2VydHMvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmwxLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MFYGCCsGAQUFBzAChkpodHRwOi8vY3JsMi5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAxLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDAyKDQpLmNydDBWBggrBgEFBQcwAoZKaHR0cDovL2NybDMuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMS5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwMig0KS5jcnQwVgYIKwYBBQUHMAKGSmh0dHA6Ly9jcmw0LmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDEuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3J0MB0GA1UdDgQWBBQp8DW_okjTMbIBWANCvQr_FrvzazAOBgNVHQ8BAf8EBAMCBaAwggE1BgNVHR8EggEsMIIBKDCCASSgggEgoIIBHIZCaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraWluZnJhL0NSTC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMS5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMi5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsMy5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JshjRodHRwOi8vY3JsNC5hbWUuZ2JsL2NybC9BTUUlMjBJbmZyYSUyMENBJTIwMDIoNCkuY3JsMIGdBgNVHSAEgZUwgZIwDAYKKwYBBAGCN3sBATBmBgorBgEEAYI3ewICMFgwVgYIKwYBBQUHAgIwSh5IADMAMwBlADAAMQA5ADIAMQAtADQAZAA2ADQALQA0AGYAOABjAC0AYQAwADUANQAtADUAYgBkAGEAZgBmAGQANQBlADMAMwBkMAwGCisGAQQBgjd7AwIwDAYKKwYBBAGCN3sEAjAfBgNVHSMEGDAWgBSuecJrXSWIEwb2BwnDl3x7l48dVTAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAA5sOyKXcQwQQAVKz9J8GIjVymZkoHVSft4TqdgNxSdoIAYkk_tYdx_dEZChJfSvIfzhzAb8k57EHRKNwKtP752SSUr0Q0oB60Y3Fq7il1fMKFTbVk9ZMTyOoo3hJmRwJaisv9rK2UVHWvwD2iUKD0IK_tHwy3m6bqbGDVKaRn1K9UYM39wEvEdy-k8J2z3Olfn6yYpcrVBHWzDzSy7TVdgUzaa0IZ670aJGPrNVYMvsCepP2_T_FdHVk4LoK9K4_0-GkZbvBLZPQO6FYgttg78s6Nn34TUcXWeTeeXArlkf48rbeL5fDY_CJyKYXLv3arwG7gUdcU5T8MGHeLLzcyo&s=LMxeuLZ18muVt2J25X8riqyoqKgLEM5alsrQY8b6Lnl62mFSI_TjfccriuVDNe7zpP9jiPJrIdt3ABFMXqUj79ZRDzZXujGBOTtXCE0Z8pH5m8sxybQIszu9d_5pPu-ffcOvf4urx4AdrvJIoOZTXPjThPNuFEhKfg3DyHG52EQI7-lQ1PKGnMexjtF73EgDzRRyYkIResQT2SIgJ8WgveAa5PiaQODz-STPf1hg43DLuRr3cJmEDQU2iefTNJ5ykvRYp7VVES2zhIIcALArUUq835owdZzb_TwekrFzx8trN6eOZJaqgDEuO4_N5dF3po5VMVL75dXHcg4V5OSQ5A&h=aumnYUKTWRoxMhpciJ71bc0tKVP-aqVuuHFzhoOkvlY", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVTFSRlUxUlNSemN5TWpRdFJVRlRWRlZUTWtWVlFWQWlMQ0pxYjJKTWIyTmhkR2x2YmlJNkltVmhjM1IxY3pKbGRXRndJbjA/YXBpLXZlcnNpb249MjAxNi0wOS0wMSZ0PTYzODc4Mzk3NjEwNTQ5MTE3NSZjPU1JSUhwVENDQm8yZ0F3SUJBZ0lUZndUYm44MjhEdWNtbWoyNE1nQUVCTnVmelRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01ESXdIaGNOTWpVd01USTFNVEkxTVRVeldoY05NalV3TnpJME1USTFNVFV6V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQUwyMFRKUUpiaFY1SnJ3em4tZmlHcmFnX0NPam1hVHdEeTlJcjBvZTFDTElmaUo5YWdlQlZmY0VtVy1rNWJVVkwzZWc2QjhtUVRFWUUtRkpEVlZaNGpiSjlRdzhSRXBtMmtCQVNEUndvSXRWVkRfSEJwSmYxVmhkVmlFUEpQTUR2TGcwbUFtZGUwWDJtM0hWRU82WTdlZ2dKOWlMMzFERHY5UEYtWHZuNng5eGxXdk8zX09DSlJlT29WX0hDVER5emRzNFBxOU95U2xuQUdBb3pLWXpPdW1iY1ZQel9XRU1jX3Z3VzgwZmpRTG1kaWhKZ3A2XzE1cWxuTWR4NDhNUWhWR1QzeTRnZGJrbk1RSmdoeXpURmNzQVNWbmNTcXRtejhuQXg1cVQ5ZFo2M2lhRjZFN0ZieDc2Zm5GNGx4NUs3MkFOWDVjamxmVk9pZzVqemdmOFJQa0NBd0VBQWFPQ0JKSXdnZ1NPTUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdFd0NnWUlLd1lCQlFVSEF3SXdQUVlKS3dZQkJBR0NOeFVIQkRBd0xnWW1Ld1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaGZtUlM0V3NtVFFDQVdRQ0FRY3dnZ0hhQmdnckJnRUZCUWNCQVFTQ0Fjd3dnZ0hJTUdZR0NDc0dBUVVGQnpBQ2hscG9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlEyVnlkSE12UWt3eVVFdEpTVTVVUTBFd01TNUJUVVV1UjBKTVgwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdNaWcwS1M1amNuUXdWZ1lJS3dZQkJRVUhNQUtHU21oMGRIQTZMeTlqY213eExtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURFdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01ESW9OQ2t1WTNKME1GWUdDQ3NHQVFVRkJ6QUNoa3BvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJGcFlTOUNUREpRUzBsSlRsUkRRVEF4TGtGTlJTNUhRa3hmUVUxRkpUSXdTVzVtY21FbE1qQkRRU1V5TURBeUtEUXBMbU55ZERCV0JnZ3JCZ0VGQlFjd0FvWkthSFIwY0RvdkwyTnliRE11WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNUzVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3TWlnMEtTNWpjblF3VmdZSUt3WUJCUVVITUFLR1NtaDBkSEE2THk5amNtdzBMbUZ0WlM1blltd3ZZV2xoTDBKTU1sQkxTVWxPVkVOQk1ERXVRVTFGTGtkQ1RGOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSjBNQjBHQTFVZERnUVdCQlFwOERXX29ralRNYklCV0FOQ3ZRcl9GcnZ6YXpBT0JnTlZIUThCQWY4RUJBTUNCYUF3Z2dFMUJnTlZIUjhFZ2dFc01JSUJLRENDQVNTZ2dnRWdvSUlCSElaQ2FIUjBjRG92TDJOeWJDNXRhV055YjNOdlpuUXVZMjl0TDNCcmFXbHVabkpoTDBOU1RDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTVM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTWk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTXk1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNoalJvZEhSd09pOHZZM0pzTkM1aGJXVXVaMkpzTDJOeWJDOUJUVVVsTWpCSmJtWnlZU1V5TUVOQkpUSXdNRElvTkNrdVkzSnNNSUdkQmdOVkhTQUVnWlV3Z1pJd0RBWUtLd1lCQkFHQ04zc0JBVEJtQmdvckJnRUVBWUkzZXdJQ01GZ3dWZ1lJS3dZQkJRVUhBZ0l3U2g1SUFETUFNd0JsQURBQU1RQTVBRElBTVFBdEFEUUFaQUEyQURRQUxRQTBBR1lBT0FCakFDMEFZUUF3QURVQU5RQXRBRFVBWWdCa0FHRUFaZ0JtQUdRQU5RQmxBRE1BTXdCa01Bd0dDaXNHQVFRQmdqZDdBd0l3REFZS0t3WUJCQUdDTjNzRUFqQWZCZ05WSFNNRUdEQVdnQlN1ZWNKclhTV0lFd2IyQnduRGwzeDdsNDhkVlRBZEJnTlZIU1VFRmpBVUJnZ3JCZ0VGQlFjREFRWUlLd1lCQlFVSEF3SXdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBQTVzT3lLWGNRd1FRQVZLejlKOEdJalZ5bVprb0hWU2Z0NFRxZGdOeFNkb0lBWWtrX3RZZHhfZEVaQ2hKZlN2SWZ6aHpBYjhrNTdFSFJLTndLdFA3NTJTU1VyMFEwb0I2MFkzRnE3aWwxZk1LRlRiVms5Wk1UeU9vbzNoSm1Sd0phaXN2OXJLMlVWSFd2d0QyaVVLRDBJS190SHd5M202YnFiR0RWS2FSbjFLOVVZTTM5d0V2RWR5LWs4SjJ6M09sZm42eVlwY3JWQkhXekR6U3k3VFZkZ1V6YWEwSVo2NzBhSkdQck5WWU12c0NlcFAyX1RfRmRIVms0TG9LOUs0XzAtR2taYnZCTFpQUU82RllndHRnNzhzNk5uMzRUVWNYV2VUZWVYQXJsa2Y0OHJiZUw1ZkRZX0NKeUtZWEx2M2Fyd0c3Z1VkY1U1VDhNR0hlTEx6Y3lvJnM9TE14ZXVMWjE4bXVWdDJKMjVYOHJpcXlvcUtnTEVNNWFsc3JRWThiNkxubDYybUZTSV9UamZjY3JpdVZETmU3enBQOWppUEpySWR0M0FCRk1YcVVqNzlaUkR6Wlh1akdCT1R0WENFMFo4cEg1bThzeHliUUlzenU5ZF81cFB1LWZmY092ZjR1cng0QWRydkpJb09aVFhQalRoUE51RkVoS2ZnM0R5SEc1MkVRSTctbFExUEtHbk1leGp0RjczRWdEelJSeVlrSVJlc1FUMlNJZ0o4V2d2ZUFhNVBpYVFPRHotU1RQZjFoZzQzREx1UnIzY0ptRURRVTJpZWZUTko1eWt2UllwN1ZWRVMyemhJSWNBTEFyVVVxODM1b3dkWnpiX1R3ZWtyRnp4OHRyTjZlT1pKYXFnREV1TzRfTjVkRjNwbzVWTVZMNzVkWEhjZzRWNU9TUTVBJmg9YXVtbllVS1RXUm94TWhwY2lKNzFiYzB0S1ZQLWFxVnV1SEZ6aG9Pa3ZsWQ==", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/operationresults/eyJqb2JJZCI6IlJFU09VUkNFR1JPVVBERUxFVElPTkpPQi1QU1RFU1RSRzc2ODUtRUFTVFVTMkVVQVAiLCJqb2JMb2NhdGlvbiI6ImVhc3R1czJldWFwIn0?api-version=2016-09-01&t=638956802050111067&c=MIIHhjCCBm6gAwIBAgITHgdzZdlIIkUuAR-erwAAB3Nl2TANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDYwHhcNMjUwOTIwMTIxMTA4WhcNMjUxMjE5MTIxMTA4WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMJdx5gosJyiN09QgNkBcW6TBOydzmy8Gen7NusoPSddWPhbbVgJyEb-OsP6w5MIoqFiNltOJtjj8M72k7AglYsZweT_CNnxgiRS1jChhObN18KpLDw5gSiZgXaJuHpRGVeg9YPLEHR8Y3G3AidB-impyg7MoDOu6uiG5OP6QJO1dAId9x6Dj8udEEuoBxP_ZB306r3gSTpYQb3E4wCujsyYi2J6o4iiIjevkuwjg-CesD1N0r_Mh9AupLsoVgAQFUJLCkvgGZEfn2fFeymo5bHas5b17aSF-ZDNkKx9iAyn7H0FeUlEY7yN3IaFhs8-X8-yNXd3aUCBBp7BH6UUQckCAwEAAaOCBHMwggRvMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwIwCgYIKwYBBQUHAwEwPAYJKwYBBAGCNxUHBC8wLQYlKwYBBAGCNxUIhpDjDYTVtHiE8Ys-hZvdFs6dEoFgh8fIENbYcQIBZAIBBjCCAcsGCCsGAQUFBwEBBIIBvTCCAbkwYwYIKwYBBQUHMAKGV2h0dHA6Ly9jcmwubWljcm9zb2Z0LmNvbS9wa2lpbmZyYS9DZXJ0cy9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDEuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwUwYIKwYBBQUHMAKGR2h0dHA6Ly9jcmwyLmFtZS5nYmwvYWlhL0JMMlBLSUlOVENBMDIuQU1FLkdCTF9BTUUlMjBJbmZyYSUyMENBJTIwMDYuY3J0MFMGCCsGAQUFBzAChkdodHRwOi8vY3JsMy5hbWUuZ2JsL2FpYS9CTDJQS0lJTlRDQTAyLkFNRS5HQkxfQU1FJTIwSW5mcmElMjBDQSUyMDA2LmNydDBTBggrBgEFBQcwAoZHaHR0cDovL2NybDQuYW1lLmdibC9haWEvQkwyUEtJSU5UQ0EwMi5BTUUuR0JMX0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcnQwHQYDVR0OBBYEFHLLdLURrEo5afGWQTdSs7bPgphnMA4GA1UdDwEB_wQEAwIFoDCCASYGA1UdHwSCAR0wggEZMIIBFaCCARGgggENhj9odHRwOi8vY3JsLm1pY3Jvc29mdC5jb20vcGtpaW5mcmEvQ1JML0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwxLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwyLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmwzLmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmyGMWh0dHA6Ly9jcmw0LmFtZS5nYmwvY3JsL0FNRSUyMEluZnJhJTIwQ0ElMjAwNi5jcmwwgZ0GA1UdIASBlTCBkjAMBgorBgEEAYI3ewEBMGYGCisGAQQBgjd7AgIwWDBWBggrBgEFBQcCAjBKHkgAMwAzAGUAMAAxADkAMgAxAC0ANABkADYANAAtADQAZgA4AGMALQBhADAANQA1AC0ANQBiAGQAYQBmAGYAZAA1AGUAMwAzAGQwDAYKKwYBBAGCN3sDAjAMBgorBgEEAYI3ewQCMB8GA1UdIwQYMBaAFPFGaMbxw_ArLX2LauGy-b41_NFBMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATANBgkqhkiG9w0BAQsFAAOCAQEAwMsjoPnTGo4sN08FWnj3jpNBu8dIwc6qJJ1IPjE5T6PAsyMosFXPrHRxdOlVD_jZdSm2MO_7mHJkBl-bD_Y5lRxAgRyUZURhFy2UPNxwQZcFFuqPR1UtQyTZxiEiY7G8HUe-fP6i8vV9M7yoUqlDhaa7c1HJTmhAJuAcwP8_P3CBrr9MYOEq1OrnbCf-EPjyDKbvVCTHWdH_k-9M49iY0zx8LU8QWgB6ShmKZzdmhF57u84pB8KqJLI5pCLnWEdODmgdLzectDFxzpusQMgg3Rp8S5s9Ohx-l7iS4PTD25HncPTDROv-xNGQi4E70FIz7o9ifdgss0d_LS1MzVjYtw&s=WPR6Xj1cHblNLCDUJVsjVQKJYo5Buulh2nQJclKOTpYV1Aw6sr4ve030vC9vMVZ3JrbL7zx62H0GYNt4mb-dxdHAjUSghak0QKTxG4Kn33rfPbxBe7dVbY7-hEWGWixNGH4rRF4Z_G_a53Y5kOXWNw14NIxI_LBY5Das_JdI4eIOhiLPfMsY0CZ2GyVsiNiTLqAe7K6nLQ8e4ZF7AIRif9RTyQFkjHVfktPmQ2gpwIExMUMv3Y2WGNMnXPLLnjHY7bG87uovTiclfFik0sE8QeqvpPmBcy3pzwCuz2FGwzRm-ccnhELKzx-1C2z2wvx-dTl3B0ZdbqNrMkJFOgQmjQ&h=BjIJ40SWj2U_4GZfpnIcF7JtNogt8jEPTUyIBBPZmIg", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL29wZXJhdGlvbnJlc3VsdHMvZXlKcWIySkpaQ0k2SWxKRlUwOVZVa05GUjFKUFZWQkVSVXhGVkVsUFRrcFBRaTFRVTFSRlUxUlNSemMyT0RVdFJVRlRWRlZUTWtWVlFWQWlMQ0pxYjJKTWIyTmhkR2x2YmlJNkltVmhjM1IxY3pKbGRXRndJbjA/YXBpLXZlcnNpb249MjAxNi0wOS0wMSZ0PTYzODk1NjgwMjA1MDExMTA2NyZjPU1JSUhoakNDQm02Z0F3SUJBZ0lUSGdkelpkbElJa1V1QVItZXJ3QUFCM05sMlRBTkJna3Foa2lHOXcwQkFRc0ZBREJFTVJNd0VRWUtDWkltaVpQeUxHUUJHUllEUjBKTU1STXdFUVlLQ1pJbWlaUHlMR1FCR1JZRFFVMUZNUmd3RmdZRFZRUURFdzlCVFVVZ1NXNW1jbUVnUTBFZ01EWXdIaGNOTWpVd09USXdNVEl4TVRBNFdoY05NalV4TWpFNU1USXhNVEE0V2pCQU1UNHdQQVlEVlFRREV6VmhjM2x1WTI5d1pYSmhkR2x2Ym5OcFoyNXBibWRqWlhKMGFXWnBZMkYwWlM1dFlXNWhaMlZ0Wlc1MExtRjZkWEpsTG1OdmJUQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQURnZ0VQQURDQ0FRb0NnZ0VCQU1KZHg1Z29zSnlpTjA5UWdOa0JjVzZUQk95ZHpteThHZW43TnVzb1BTZGRXUGhiYlZnSnlFYi1Pc1A2dzVNSW9xRmlObHRPSnRqajhNNzJrN0FnbFlzWndlVF9DTm54Z2lSUzFqQ2hoT2JOMThLcExEdzVnU2laZ1hhSnVIcFJHVmVnOVlQTEVIUjhZM0czQWlkQi1pbXB5ZzdNb0RPdTZ1aUc1T1A2UUpPMWRBSWQ5eDZEajh1ZEVFdW9CeFBfWkIzMDZyM2dTVHBZUWIzRTR3Q3Vqc3lZaTJKNm80aWlJamV2a3V3amctQ2VzRDFOMHJfTWg5QXVwTHNvVmdBUUZVSkxDa3ZnR1pFZm4yZkZleW1vNWJIYXM1YjE3YVNGLVpETmtLeDlpQXluN0gwRmVVbEVZN3lOM0lhRmhzOC1YOC15TlhkM2FVQ0JCcDdCSDZVVVFja0NBd0VBQWFPQ0JITXdnZ1J2TUNjR0NTc0dBUVFCZ2pjVkNnUWFNQmd3Q2dZSUt3WUJCUVVIQXdJd0NnWUlLd1lCQlFVSEF3RXdQQVlKS3dZQkJBR0NOeFVIQkM4d0xRWWxLd1lCQkFHQ054VUlocERqRFlUVnRIaUU4WXMtaFp2ZEZzNmRFb0ZnaDhmSUVOYlljUUlCWkFJQkJqQ0NBY3NHQ0NzR0FRVUZCd0VCQklJQnZUQ0NBYmt3WXdZSUt3WUJCUVVITUFLR1YyaDBkSEE2THk5amNtd3ViV2xqY205emIyWjBMbU52YlM5d2EybHBibVp5WVM5RFpYSjBjeTlDVERKUVMwbEpUbFJEUVRBeUxrRk5SUzVIUWt4ZlFVMUZKVEl3U1c1bWNtRWxNakJEUVNVeU1EQTJMbU55ZERCVEJnZ3JCZ0VGQlFjd0FvWkhhSFIwY0RvdkwyTnliREV1WVcxbExtZGliQzloYVdFdlFrd3lVRXRKU1U1VVEwRXdNaTVCVFVVdVIwSk1YMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNuUXdVd1lJS3dZQkJRVUhNQUtHUjJoMGRIQTZMeTlqY213eUxtRnRaUzVuWW13dllXbGhMMEpNTWxCTFNVbE9WRU5CTURJdVFVMUZMa2RDVEY5QlRVVWxNakJKYm1aeVlTVXlNRU5CSlRJd01EWXVZM0owTUZNR0NDc0dBUVVGQnpBQ2hrZG9kSFJ3T2k4dlkzSnNNeTVoYldVdVoySnNMMkZwWVM5Q1RESlFTMGxKVGxSRFFUQXlMa0ZOUlM1SFFreGZRVTFGSlRJd1NXNW1jbUVsTWpCRFFTVXlNREEyTG1OeWREQlRCZ2dyQmdFRkJRY3dBb1pIYUhSMGNEb3ZMMk55YkRRdVlXMWxMbWRpYkM5aGFXRXZRa3d5VUV0SlNVNVVRMEV3TWk1QlRVVXVSMEpNWDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjblF3SFFZRFZSME9CQllFRkhMTGRMVVJyRW81YWZHV1FUZFNzN2JQZ3Bobk1BNEdBMVVkRHdFQl93UUVBd0lGb0RDQ0FTWUdBMVVkSHdTQ0FSMHdnZ0VaTUlJQkZhQ0NBUkdnZ2dFTmhqOW9kSFJ3T2k4dlkzSnNMbTFwWTNKdmMyOW1kQzVqYjIwdmNHdHBhVzVtY21FdlExSk1MMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXd4TG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY215R01XaDBkSEE2THk5amNtd3lMbUZ0WlM1blltd3ZZM0pzTDBGTlJTVXlNRWx1Wm5KaEpUSXdRMEVsTWpBd05pNWpjbXlHTVdoMGRIQTZMeTlqY213ekxtRnRaUzVuWW13dlkzSnNMMEZOUlNVeU1FbHVabkpoSlRJd1EwRWxNakF3Tmk1amNteUdNV2gwZEhBNkx5OWpjbXcwTG1GdFpTNW5ZbXd2WTNKc0wwRk5SU1V5TUVsdVpuSmhKVEl3UTBFbE1qQXdOaTVqY213d2daMEdBMVVkSUFTQmxUQ0JrakFNQmdvckJnRUVBWUkzZXdFQk1HWUdDaXNHQVFRQmdqZDdBZ0l3V0RCV0JnZ3JCZ0VGQlFjQ0FqQktIa2dBTXdBekFHVUFNQUF4QURrQU1nQXhBQzBBTkFCa0FEWUFOQUF0QURRQVpnQTRBR01BTFFCaEFEQUFOUUExQUMwQU5RQmlBR1FBWVFCbUFHWUFaQUExQUdVQU13QXpBR1F3REFZS0t3WUJCQUdDTjNzREFqQU1CZ29yQmdFRUFZSTNld1FDTUI4R0ExVWRJd1FZTUJhQUZQRkdhTWJ4d19BckxYMkxhdUd5LWI0MV9ORkJNQjBHQTFVZEpRUVdNQlFHQ0NzR0FRVUZCd01DQmdnckJnRUZCUWNEQVRBTkJna3Foa2lHOXcwQkFRc0ZBQU9DQVFFQXdNc2pvUG5UR280c04wOEZXbmozanBOQnU4ZEl3YzZxSkoxSVBqRTVUNlBBc3lNb3NGWFBySFJ4ZE9sVkRfalpkU20yTU9fN21ISmtCbC1iRF9ZNWxSeEFnUnlVWlVSaEZ5MlVQTnh3UVpjRkZ1cVBSMVV0UXlUWnhpRWlZN0c4SFVlLWZQNmk4dlY5TTd5b1VxbERoYWE3YzFISlRtaEFKdUFjd1A4X1AzQ0JycjlNWU9FcTFPcm5iQ2YtRVBqeURLYnZWQ1RIV2RIX2stOU00OWlZMHp4OExVOFFXZ0I2U2htS1p6ZG1oRjU3dTg0cEI4S3FKTEk1cENMbldFZE9EbWdkTHplY3RERnh6cHVzUU1nZzNScDhTNXM5T2h4LWw3aVM0UFREMjVIbmNQVERST3YteE5HUWk0RTcwRkl6N285aWZkZ3NzMGRfTFMxTXpWall0dyZzPVdQUjZYajFjSGJsTkxDRFVKVnNqVlFLSllvNUJ1dWxoMm5RSmNsS09UcFlWMUF3NnNyNHZlMDMwdkM5dk1WWjNKcmJMN3p4NjJIMEdZTnQ0bWItZHhkSEFqVVNnaGFrMFFLVHhHNEtuMzNyZlBieEJlN2RWYlk3LWhFV0dXaXhOR0g0clJGNFpfR19hNTNZNWtPWFdOdzE0Tkl4SV9MQlk1RGFzX0pkSTRlSU9oaUxQZk1zWTBDWjJHeVZzaU5pVExxQWU3SzZuTFE4ZTRaRjdBSVJpZjlSVHlRRmtqSFZma3RQbVEyZ3B3SUV4TVVNdjNZMldHTk1uWFBMTG5qSFk3Ykc4N3VvdlRpY2xmRmlrMHNFOFFlcXZwUG1CY3kzcHp3Q3V6MkZHd3pSbS1jY25oRUxLengtMUMyejJ3dngtZFRsM0IwWmRicU5yTWtKRk9nUW1qUSZoPUJqSUo0MFNXajJVXzRHWmZwbkljRjdKdE5vZ3Q4akVQVFV5SUJCUFptSWc=", "RequestMethod": "GET", "RequestHeaders": { "User-Agent": [ - "FxVersion/8.0.1425.11118", + "FxVersion/8.0.2025.41914", "OSName/Windows", "OSVersion/Microsoft.Windows.10.0.26100", - "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.105" + "Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient/1.3.110" ] }, "RequestBody": "", @@ -891,13 +891,13 @@ "16499" ], "x-ms-request-id": [ - "e9d0423b-351b-47c1-942c-e9581e0cdd16" + "c2f945b2-e95d-43f7-802e-a09db3445734" ], "x-ms-correlation-request-id": [ - "e9d0423b-351b-47c1-942c-e9581e0cdd16" + "c2f945b2-e95d-43f7-802e-a09db3445734" ], "x-ms-routing-request-id": [ - "SOUTHEASTASIA:20250324T072028Z:e9d0423b-351b-47c1-942c-e9581e0cdd16" + "SOUTHEASTASIA:20251010T080341Z:c2f945b2-e95d-43f7-802e-a09db3445734" ], "Strict-Transport-Security": [ "max-age=31536000; includeSubDomains" @@ -909,10 +909,10 @@ "CONFIG_NOCACHE" ], "X-MSEdge-Ref": [ - "Ref A: B6A46B56FEE0439EAA6AB7956F5765D6 Ref B: MAA201060514029 Ref C: 2025-03-24T07:20:27Z" + "Ref A: B1A1E785FB9F4D2DA565190C709A0462 Ref B: MAA201060513039 Ref C: 2025-10-10T08:03:40Z" ], "Date": [ - "Mon, 24 Mar 2025 07:20:27 GMT" + "Fri, 10 Oct 2025 08:03:41 GMT" ], "Expires": [ "-1" @@ -927,7 +927,7 @@ ], "Names": { "Test-NewSetAzureStorageAccountTLSveresionBlobPublicAccess": [ - "pstestrg7224" + "pstestrg7685" ] }, "Variables": { diff --git a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageFileTests/TestShareSnapshot.json b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageFileTests/TestShareSnapshot.json index 90913cf32957..a91767511301 100644 --- a/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageFileTests/TestShareSnapshot.json +++ b/src/Storage/Storage.Management.Test/SessionRecords/Microsoft.Azure.Commands.Management.Storage.Test.ScenarioTests.StorageFileTests/TestShareSnapshot.json @@ -931,8 +931,8 @@ "StatusCode": 201 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share1pstestrg754?$expand=snapshots&api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMXBzdGVzdHJnNzU0PyRleHBhbmQ9c25hcHNob3RzJmFwaS12ZXJzaW9uPTIwMjUtMDEtMDE=", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share1pstestrg754?api-version=2025-01-01&$expand=snapshots", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMXBzdGVzdHJnNzU0P2FwaS12ZXJzaW9uPTIwMjUtMDEtMDEmJGV4cGFuZD1zbmFwc2hvdHM=", "RequestMethod": "PUT", "RequestBody": "{}", "RequestHeaders": { @@ -1000,8 +1000,8 @@ "StatusCode": 201 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share1pstestrg754?$expand=snapshots&api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMXBzdGVzdHJnNzU0PyRleHBhbmQ9c25hcHNob3RzJmFwaS12ZXJzaW9uPTIwMjUtMDEtMDE=", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share1pstestrg754?api-version=2025-01-01&$expand=snapshots", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMXBzdGVzdHJnNzU0P2FwaS12ZXJzaW9uPTIwMjUtMDEtMDEmJGV4cGFuZD1zbmFwc2hvdHM=", "RequestMethod": "PUT", "RequestBody": "{}", "RequestHeaders": { @@ -1069,8 +1069,8 @@ "StatusCode": 201 }, { - "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share2pstestrg754?$expand=snapshots&api-version=2025-01-01", - "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMnBzdGVzdHJnNzU0PyRleHBhbmQ9c25hcHNob3RzJmFwaS12ZXJzaW9uPTIwMjUtMDEtMDE=", + "RequestUri": "/subscriptions/45b60d85-fd72-427a-a708-f994d26e593e/resourceGroups/pstestrg754/providers/Microsoft.Storage/storageAccounts/stopstestrg754/fileServices/default/shares/share2pstestrg754?api-version=2025-01-01&$expand=snapshots", + "EncodedRequestUri": "L3N1YnNjcmlwdGlvbnMvNDViNjBkODUtZmQ3Mi00MjdhLWE3MDgtZjk5NGQyNmU1OTNlL3Jlc291cmNlR3JvdXBzL3BzdGVzdHJnNzU0L3Byb3ZpZGVycy9NaWNyb3NvZnQuU3RvcmFnZS9zdG9yYWdlQWNjb3VudHMvc3RvcHN0ZXN0cmc3NTQvZmlsZVNlcnZpY2VzL2RlZmF1bHQvc2hhcmVzL3NoYXJlMnBzdGVzdHJnNzU0P2FwaS12ZXJzaW9uPTIwMjUtMDEtMDEmJGV4cGFuZD1zbmFwc2hvdHM=", "RequestMethod": "PUT", "RequestBody": "{}", "RequestHeaders": { diff --git a/src/Storage/Storage.Management/Az.Storage.psd1 b/src/Storage/Storage.Management/Az.Storage.psd1 index c1f9d875dd6d..0d437085a963 100644 --- a/src/Storage/Storage.Management/Az.Storage.psd1 +++ b/src/Storage/Storage.Management/Az.Storage.psd1 @@ -3,7 +3,7 @@ # # Generated by: Microsoft Corporation # -# Generated on: 10/9/2025 +# Generated on: 10/10/2025 # @{ @@ -74,10 +74,10 @@ RequiredAssemblies = 'Azure.Data.Tables.dll', 'Azure.Storage.Blobs.dll', 'System.IO.Hashing.dll' # Script files (.ps1) that are run in the caller's environment prior to importing this module. -# ScriptsToProcess = @() +ScriptsToProcess = @() # Type files (.ps1xml) to be loaded when importing this module -# TypesToProcess = @() +TypesToProcess = @() # Format files (.ps1xml) to be loaded when importing this module FormatsToProcess = 'Storage.Autorest/Az.Storage.format.ps1xml', @@ -91,8 +91,10 @@ NestedModules = @('Microsoft.Azure.PowerShell.Cmdlets.Storage.dll', # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. FunctionsToExport = 'Get-AzStorageAccountMigration', 'Get-AzStorageFileServiceUsage', + 'Get-AzStorageNetworkSecurityPerimeterConfiguration', 'Get-AzStorageSku', 'Get-AzStorageTaskAssignment', 'Get-AzStorageTaskAssignmentInstancesReport', + 'Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration', 'New-AzStorageTaskAssignment', 'Remove-AzStorageTaskAssignment', 'Start-AzStorageAccountMigration', 'Update-AzStorageTaskAssignment' @@ -127,9 +129,9 @@ CmdletsToExport = 'Add-AzRmStorageContainerLegalHold', 'Get-AzStorageEncryptionScope', 'Get-AzStorageFile', 'Get-AzStorageFileContent', 'Get-AzStorageFileCopyState', 'Get-AzStorageFileHandle', 'Get-AzStorageFileServiceProperty', - 'Get-AzStorageLocalUser', 'Get-AzStorageLocalUserKey', - 'Get-AzStorageObjectReplicationPolicy', 'Get-AzStorageQueue', - 'Get-AzStorageQueueStoredAccessPolicy', + 'Get-AzStorageFileSymbolicLink', 'Get-AzStorageLocalUser', + 'Get-AzStorageLocalUserKey', 'Get-AzStorageObjectReplicationPolicy', + 'Get-AzStorageQueue', 'Get-AzStorageQueueStoredAccessPolicy', 'Get-AzStorageServiceLoggingProperty', 'Get-AzStorageServiceMetricsProperty', 'Get-AzStorageServiceProperty', 'Get-AzStorageShare', @@ -154,6 +156,7 @@ CmdletsToExport = 'Add-AzRmStorageContainerLegalHold', 'New-AzStorageContainerStoredAccessPolicy', 'New-AzStorageContext', 'New-AzStorageDirectory', 'New-AzStorageEncryptionScope', 'New-AzStorageFileHardLink', 'New-AzStorageFileSASToken', + 'New-AzStorageFileSymbolicLink', 'New-AzStorageLocalUserPermissionScope', 'New-AzStorageLocalUserSshPassword', 'New-AzStorageLocalUserSshPublicKey', @@ -208,8 +211,7 @@ CmdletsToExport = 'Add-AzRmStorageContainerLegalHold', 'Update-AzStorageBlobServiceProperty', 'Update-AzStorageEncryptionScope', 'Update-AzStorageFileServiceProperty', - 'Update-AzStorageServiceProperty', 'New-AzStorageFileSymbolicLink', - 'Get-AzStorageFileSymbolicLink' + 'Update-AzStorageServiceProperty' # Variables to export from this module # VariablesToExport = @() @@ -236,7 +238,7 @@ PrivateData = @{ PSData = @{ # Tags applied to this module. These help with module discovery in online galleries. - Tags = 'Azure','ResourceManager','ARM','Storage','StorageAccount' + Tags = 'Azure', 'ResourceManager', 'ARM', 'Storage', 'StorageAccount' # A URL to the license for this module. LicenseUri = 'https://aka.ms/azps-license' @@ -265,7 +267,7 @@ PrivateData = @{ } # End of PSData hashtable - } # End of PrivateData hashtable +} # End of PrivateData hashtable # HelpInfo URI of this module # HelpInfoURI = '' diff --git a/src/Storage/Storage.Management/ChangeLog.md b/src/Storage/Storage.Management/ChangeLog.md index 0e61f95ac291..04c2d6ec5fce 100644 --- a/src/Storage/Storage.Management/ChangeLog.md +++ b/src/Storage/Storage.Management/ChangeLog.md @@ -18,13 +18,16 @@ - Additional information about change #1 --> ## Upcoming Release - -## Version 9.2.0 -* Supported Zone and ZonePlacementPolicy on Storage accounts: `New-AzStorageAccount`, `Set-AzStorageAccount` -* Supported listing Storage SKU: `Get-AzStorageSku` -* Supported enabling SMB Oauth on Storage accounts: `New-AzStorageAccount`, `Set-AzStorageAccount` -* Supported Enable Metrics when set object replication policy: `Set-AzStorageObjectReplicationPolicy` -* Supported create and get symbolic link in NFS File Share: `New-AzStorageFileSymbolicLink`, `Get-AzStorageFileSymbolicLink` +* Supported Zone and ZonePlacementPolicy on Storage accounts + - `New-AzStorageAccount` + - `Set-AzStorageAccount` +* Supported listing Storage SKU + - `Get-AzStorageSku` +* Supported enabling SMB Oauth on Storage accounts + - `New-AzStorageAccount` + - `Set-AzStorageAccount` +* Supported Enable Metrics when set object replication policy + - `Set-AzStorageObjectReplicationPolicy` ## Version 9.1.0 * Supported set SasExpirationAction as Log or Block, together with SasExpirationPeriod diff --git a/src/Storage/Storage.Management/Models/PSNetworkRule.cs b/src/Storage/Storage.Management/Models/PSNetworkRule.cs index bd3f9c51a9c4..2ee6c444bb39 100644 --- a/src/Storage/Storage.Management/Models/PSNetworkRule.cs +++ b/src/Storage/Storage.Management/Models/PSNetworkRule.cs @@ -82,24 +82,81 @@ public class PSNetworkRuleSet //Parse NetworkRule property Action in SDK to wrapped property PSNetworkRuleActionEnum - public static PSNetworkRuleActionEnum? ParsePSNetworkRuleAction(Microsoft.Azure.Management.Storage.Models.Action? action) + public static PSNetworkRuleActionEnum? ParsePSNetworkRuleAction(PSNetworkRuleActionEnum? action) { if (action == null) { return null; } - if (action.Value == Microsoft.Azure.Management.Storage.Models.Action.Allow) + if (action.Value == PSNetworkRuleActionEnum.Allow) { return PSNetworkRuleActionEnum.Allow; } return PSNetworkRuleActionEnum.Allow; } + public static PSNetworkRuleActionEnum? ParsePSNetworkRuleAction(IPRuleAction? action) + { + if (action == null) + { + return null; + } + if (action.Value == IPRuleAction.Allow) + { + return PSNetworkRuleActionEnum.Allow; + } + + return PSNetworkRuleActionEnum.Allow; + } + public static PSNetworkRuleActionEnum? ParsePSNetworkRuleAction(VirtualNetworkRuleAction? action) + { + if (action == null) + { + return null; + } + + if (action.Value == VirtualNetworkRuleAction.Allow) + { + return PSNetworkRuleActionEnum.Allow; + } + + return PSNetworkRuleActionEnum.Allow; + } + + //Parse wrapped property PSNetworkRuleActionEnum to NetworkRule rule property Action in SDK + public static PSNetworkRuleActionEnum? ParseStorageNetworkRuleAction(PSNetworkRuleActionEnum? action) + { + if (action == null) + { + return null; + } + + if (action == PSNetworkRuleActionEnum.Allow) + { + return PSNetworkRuleActionEnum.Allow; + } + return PSNetworkRuleActionEnum.Allow; + } + + //Parse wrapped property PSNetworkRuleActionEnum to NetworkRule rule property Action in SDK + public static IPRuleAction? ParseStorageIpRuleAction(PSNetworkRuleActionEnum? action) + { + if (action == null) + { + return null; + } + + if (action == PSNetworkRuleActionEnum.Allow) + { + return IPRuleAction.Allow; + } + return IPRuleAction.Allow; + } //Parse wrapped property PSNetworkRuleActionEnum to NetworkRule rule property Action in SDK - public static Microsoft.Azure.Management.Storage.Models.Action? ParseStorageNetworkRuleAction(PSNetworkRuleActionEnum? action) + public static VirtualNetworkRuleAction? ParseStorageVnetRuleAction(PSNetworkRuleActionEnum? action) { if (action == null) { @@ -108,9 +165,9 @@ public class PSNetworkRuleSet if (action == PSNetworkRuleActionEnum.Allow) { - return Microsoft.Azure.Management.Storage.Models.Action.Allow; + return VirtualNetworkRuleAction.Allow; } - return Microsoft.Azure.Management.Storage.Models.Action.Allow; + return VirtualNetworkRuleAction.Allow; } //Parse NetworkRule property Bypass in SDK to wrapped property PSNetworkRuleBypassEnum @@ -209,7 +266,7 @@ public static PSIpRule ParsePSNetworkRuleIPRule(IPRule ipRule) public static IPRule ParseStorageNetworkRuleIPRule(PSIpRule ipRule) { IPRule returnRule = new IPRule(); - returnRule.Action = ParseStorageNetworkRuleAction(ipRule.Action); + returnRule.Action = ParseStorageIpRuleAction(ipRule.Action); returnRule.IPAddressOrRange = ipRule.IPAddressOrRange; return returnRule; } @@ -247,7 +304,7 @@ public static PSVirtualNetworkRule ParsePSNetworkRuleVirtualNetworkRule(VirtualN public static VirtualNetworkRule ParseStorageNetworkRuleVirtualNetworkRule(PSVirtualNetworkRule virtualNetworkRule) { VirtualNetworkRule returnRule = new VirtualNetworkRule(); - returnRule.Action = ParseStorageNetworkRuleAction(virtualNetworkRule.Action); + returnRule.Action = ParseStorageVnetRuleAction(virtualNetworkRule.Action); returnRule.VirtualNetworkResourceId = virtualNetworkRule.VirtualNetworkResourceId; return returnRule; diff --git a/src/Storage/Storage.Management/Models/PSShare.cs b/src/Storage/Storage.Management/Models/PSShare.cs index f2f268b6926b..593dacf4c464 100644 --- a/src/Storage/Storage.Management/Models/PSShare.cs +++ b/src/Storage/Storage.Management/Models/PSShare.cs @@ -50,9 +50,9 @@ public PSShare(StorageModels.FileShare share) this.ProvisionedBandwidthMibps = share.ProvisionedBandwidthMibps; this.IncludedBurstIops = share.IncludedBurstIops; this.MaxBurstCreditsForIops = share.MaxBurstCreditsForIops; - this.NextAllowedProvisionedBandwidthDowngradeTime = share.NextAllowedProvisionedBandwidthDowngradeTime; - this.NextAllowedProvisionedIopsDowngradeTime = share.NextAllowedProvisionedIopsDowngradeTime; - this.NextAllowedQuotaDowngradeTime = share.NextAllowedQuotaDowngradeTime; + this.NextAllowedProvisionedBandwidthDowngradeTime = ParseDateTimeString(share.NextAllowedProvisionedBandwidthDowngradeTime); + this.NextAllowedProvisionedIopsDowngradeTime = ParseDateTimeString(share.NextAllowedProvisionedIopsDowngradeTime); + this.NextAllowedQuotaDowngradeTime = ParseDateTimeString(share.NextAllowedQuotaDowngradeTime); this.FileSharePaidBursting = share.FileSharePaidBursting is null ? null : new PSFileSharePropertiesFileSharePaidBursting(share.FileSharePaidBursting); } @@ -84,9 +84,9 @@ public PSShare(FileShareItem share) this.ProvisionedBandwidthMibps = share.ProvisionedBandwidthMibps; this.IncludedBurstIops = share.IncludedBurstIops; this.MaxBurstCreditsForIops = share.MaxBurstCreditsForIops; - this.NextAllowedProvisionedBandwidthDowngradeTime = share.NextAllowedProvisionedBandwidthDowngradeTime; - this.NextAllowedProvisionedIopsDowngradeTime = share.NextAllowedProvisionedIopsDowngradeTime; - this.NextAllowedQuotaDowngradeTime = share.NextAllowedQuotaDowngradeTime; + this.NextAllowedProvisionedBandwidthDowngradeTime = ParseDateTimeString(share.NextAllowedProvisionedBandwidthDowngradeTime); + this.NextAllowedProvisionedIopsDowngradeTime = ParseDateTimeString(share.NextAllowedProvisionedIopsDowngradeTime); + this.NextAllowedQuotaDowngradeTime = ParseDateTimeString(share.NextAllowedQuotaDowngradeTime); this.FileSharePaidBursting = share.FileSharePaidBursting is null ? null : new PSFileSharePropertiesFileSharePaidBursting(share.FileSharePaidBursting); } @@ -140,6 +140,24 @@ public PSShare(FileShareItem share) public System.DateTime? NextAllowedProvisionedBandwidthDowngradeTime { get; private set; } public PSFileSharePropertiesFileSharePaidBursting FileSharePaidBursting { get; set; } + public DateTime? ParseDateTimeString(string dateString) + { + if (string.IsNullOrEmpty(dateString)) + { + return null; + } + + DateTime date; + if (DateTime.TryParse(dateString, out date)) + { + return date; + } + else + { + return null; + } + + } public class PSFileSharePropertiesFileSharePaidBursting { public PSFileSharePropertiesFileSharePaidBursting() { } diff --git a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountKey.cs b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountKey.cs index c6bfc62831e9..696b00e4224a 100644 --- a/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountKey.cs +++ b/src/Storage/Storage.Management/StorageAccount/GetAzureStorageAccountKey.cs @@ -48,10 +48,10 @@ public override void ExecuteCmdlet() { base.ExecuteCmdlet(); - ListKeyExpand? listkeyExpend = null; + Enum70? listkeyExpend = null; if (ListKerbKey.IsPresent) { - listkeyExpend = ListKeyExpand.Kerb; + listkeyExpend = Enum70.Kerb; } var storageKeys = this.StorageClient.StorageAccounts.ListKeys( diff --git a/src/Storage/Storage.Management/StorageAccount/RestoreAzStorageBlobRange.cs b/src/Storage/Storage.Management/StorageAccount/RestoreAzStorageBlobRange.cs index b8e3a9473b2c..3ad7fca8010e 100644 --- a/src/Storage/Storage.Management/StorageAccount/RestoreAzStorageBlobRange.cs +++ b/src/Storage/Storage.Management/StorageAccount/RestoreAzStorageBlobRange.cs @@ -119,8 +119,8 @@ public override void ExecuteCmdlet() if (ShouldProcess(this.StorageAccountName, "Restore Blob Range")) { if (waitForComplete) - { - Task> beginTask = this.StorageClient.StorageAccounts.BeginRestoreBlobRangesWithHttpMessagesAsync( + { + Task> beginTask = this.StorageClient.StorageAccounts.BeginRestoreBlobRangesWithHttpMessagesAsync( this.ResourceGroupName, this.StorageAccountName, this.TimeToRestore, @@ -128,11 +128,11 @@ public override void ExecuteCmdlet() beginTask.Wait(); - AzureOperationResponse response = beginTask.Result; + AzureOperationResponse response = beginTask.Result; WriteWarning(string.Format("Restore blob ranges with Id '{0}' started. Restore blob ranges time to complete is dependent on the size of the restore.", response.Body is null ? "" : response.Body.RestoreId)); - Task> waitTask = ((StorageManagementClient)this.StorageClient).GetPostOrDeleteOperationResultAsync(response, null, new System.Threading.CancellationToken()); + Task> waitTask = ((StorageManagementClient)this.StorageClient).GetPostOrDeleteOperationResultAsync(response, null, new System.Threading.CancellationToken()); try { waitTask.Wait(); @@ -142,7 +142,7 @@ public override void ExecuteCmdlet() throw new InvalidJobStateException(string.Format("Blob ranges restore failed with information: '{0}'.", ((CloudException)ex.InnerException).Response.Content)); } - AzureOperationResponse result = waitTask.Result; + AzureOperationResponse result = waitTask.Result; WriteObject(new PSBlobRestoreStatus(result.Body)); @@ -164,4 +164,4 @@ public override void ExecuteCmdlet() } } } -} +} \ No newline at end of file diff --git a/src/Storage/Storage.Management/help/Az.Storage.md b/src/Storage/Storage.Management/help/Az.Storage.md index 45efc7dc9c30..c80a005ab257 100644 --- a/src/Storage/Storage.Management/help/Az.Storage.md +++ b/src/Storage/Storage.Management/help/Az.Storage.md @@ -156,7 +156,7 @@ Gets service properties for Azure Storage File services. Gets the usage of file service in storage account including account limits, file share limits and constants used in recommendations and bursting formula. ### [Get-AzStorageFileSymbolicLink](Get-AzStorageFileSymbolicLink.md) -Gets the value of a symbolic link. Only works in NFS file share. +Gets the properties of a symbolic link. Only works in NFS file share. ### [Get-AzStorageLocalUser](Get-AzStorageLocalUser.md) Gets a specified local user or lists all local users in a storage account. @@ -164,6 +164,9 @@ Gets a specified local user or lists all local users in a storage account. ### [Get-AzStorageLocalUserKey](Get-AzStorageLocalUserKey.md) Lists SSH authorized keys and shared key of a specified local user. +### [Get-AzStorageNetworkSecurityPerimeterConfiguration](Get-AzStorageNetworkSecurityPerimeterConfiguration.md) +Gets effective NetworkSecurityPerimeterConfiguration for association + ### [Get-AzStorageObjectReplicationPolicy](Get-AzStorageObjectReplicationPolicy.md) Gets or lists object replication policy of a Storage account. @@ -215,6 +218,9 @@ Invokes failover of a Storage account. ### [Invoke-AzStorageAccountHierarchicalNamespaceUpgrade](Invoke-AzStorageAccountHierarchicalNamespaceUpgrade.md) Validates if a storage account can be upgraded to enable HierarchicalNamespace, or upgrades a Storage account to enabled HierarchicalNamespace. +### [Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration](Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md) +Refreshes any information about the association. + ### [Lock-AzRmStorageContainerImmutabilityPolicy](Lock-AzRmStorageContainerImmutabilityPolicy.md) Locks ImmutabilityPolicy of a Storage blob containers @@ -553,5 +559,5 @@ Modifies the service properties for the Azure Storage File service. Modifies the properties for the Azure Storage service. ### [Update-AzStorageTaskAssignment](Update-AzStorageTaskAssignment.md) -update storage task assignment properties +Update storage task assignment properties diff --git a/src/Storage/Storage.Management/help/Get-AzStorageAccountMigration.md b/src/Storage/Storage.Management/help/Get-AzStorageAccountMigration.md index e1f21cc96401..29a9c6df251a 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageAccountMigration.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageAccountMigration.md @@ -97,7 +97,7 @@ Accept wildcard characters: False ``` ### -ResourceGroupName -The name of the resource group within the user's subscription. +The name of the resource group. The name is case insensitive. ```yaml @@ -114,6 +114,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Management/help/Get-AzStorageFileServiceUsage.md b/src/Storage/Storage.Management/help/Get-AzStorageFileServiceUsage.md index 4f9ee37845cd..0d8bf1dcc789 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageFileServiceUsage.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageFileServiceUsage.md @@ -125,7 +125,7 @@ Accept wildcard characters: False ``` ### -ResourceGroupName -The name of the resource group within the user's subscription. +The name of the resource group. The name is case insensitive. ```yaml @@ -158,6 +158,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Management/help/Get-AzStorageFileSymbolicLink.md b/src/Storage/Storage.Management/help/Get-AzStorageFileSymbolicLink.md index f83990156333..ec53135081b9 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageFileSymbolicLink.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageFileSymbolicLink.md @@ -16,21 +16,24 @@ Gets the properties of a symbolic link. Only works in NFS file share. ``` Get-AzStorageFileSymbolicLink [-ShareName] [-Path] [-Context ] [-ServerTimeoutPerRequest ] [-ClientTimeoutPerRequest ] - [-DefaultProfile ] [-ConcurrentTaskCount ] [] + [-DefaultProfile ] [-ConcurrentTaskCount ] + [] ``` ### Share ``` Get-AzStorageFileSymbolicLink [-ShareClient] [-Path] [-Context ] [-ServerTimeoutPerRequest ] [-ClientTimeoutPerRequest ] - [-DefaultProfile ] [-ConcurrentTaskCount ] [] + [-DefaultProfile ] [-ConcurrentTaskCount ] + [] ``` ### Directory ``` Get-AzStorageFileSymbolicLink [-ShareDirectoryClient] [-Path] [-Context ] [-ServerTimeoutPerRequest ] [-ClientTimeoutPerRequest ] - [-DefaultProfile ] [-ConcurrentTaskCount ] [] + [-DefaultProfile ] [-ConcurrentTaskCount ] + [] ``` ## DESCRIPTION @@ -114,7 +117,7 @@ $link = $shareClient | Get-AzStorageFileSymbolicLink -Path "linkdir/mylink" This command gets a symbolic link using a ShareClient object obtained from Get-AzStorageShare, demonstrating the pipeline usage with the Share parameter set. -### Example 4: Get symbolic link using ShareDirectoryClient pipeline +### Example 4: Get symbolic link using ShareDirectoryClient pipeline ```powershell $ctx = New-AzStorageContext -StorageAccountName "myaccount" -EnableFileBackupRequestIntent $dirClient = Get-AzStorageFile -ShareName "nfsshare" -Path "linkdir" -Context $ctx diff --git a/src/Storage/Storage.Management/help/Get-AzStorageNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Management/help/Get-AzStorageNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..a9f7561cbedb --- /dev/null +++ b/src/Storage/Storage.Management/help/Get-AzStorageNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,192 @@ +--- +external help file: Az.Storage-help.xml +Module Name: Az.Storage +online version: https://learn.microsoft.com/powershell/module/az.storage/get-azstoragenetworksecurityperimeterconfiguration +schema: 2.0.0 +--- + +# Get-AzStorageNetworkSecurityPerimeterConfiguration + +## SYNOPSIS +Gets effective NetworkSecurityPerimeterConfiguration for association + +## SYNTAX + +### List (Default) +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -AccountName -ResourceGroupName + [-SubscriptionId ] [-DefaultProfile ] + [] +``` + +### Get +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -AccountName -Name + -ResourceGroupName [-SubscriptionId ] [-DefaultProfile ] + [] +``` + +### GetViaIdentityStorageAccount +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -Name -StorageAccountInputObject + [-DefaultProfile ] [] +``` + +### GetViaIdentity +``` +Get-AzStorageNetworkSecurityPerimeterConfiguration -InputObject [-DefaultProfile ] + [] +``` + +## DESCRIPTION +Gets effective NetworkSecurityPerimeterConfiguration for association + +## EXAMPLES + +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +## PARAMETERS + +### -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. + +```yaml +Type: System.String +Parameter Sets: List, Get +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DefaultProfile +The DefaultProfile parameter is not functional. +Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription. + +```yaml +Type: System.Management.Automation.PSObject +Parameter Sets: (All) +Aliases: AzureRMContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: GetViaIdentity +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -Name +The name for Network Security Perimeter configuration + +```yaml +Type: System.String +Parameter Sets: Get, GetViaIdentityStorageAccount +Aliases: NetworkSecurityPerimeterConfigurationName + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourceGroupName +The name of the resource group. +The name is case insensitive. + +```yaml +Type: System.String +Parameter Sets: List, Get +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StorageAccountInputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: GetViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -SubscriptionId +The ID of the target subscription. +The value must be an UUID. + +```yaml +Type: System.String[] +Parameter Sets: List, Get +Aliases: + +Required: False +Position: Named +Default value: (Get-AzContext).Subscription.Id +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity + +## OUTPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.INetworkSecurityPerimeterConfiguration + +## NOTES + +## RELATED LINKS diff --git a/src/Storage/Storage.Management/help/Get-AzStorageSku.md b/src/Storage/Storage.Management/help/Get-AzStorageSku.md index ed8af1b05fae..c337c5c096db 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageSku.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageSku.md @@ -75,6 +75,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignment.md b/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignment.md index c35ae7239ea1..54983eea0e8a 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignment.md @@ -196,6 +196,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignmentInstancesReport.md b/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignmentInstancesReport.md index 40fa2ccbfc79..bdecb2605593 100644 --- a/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignmentInstancesReport.md +++ b/src/Storage/Storage.Management/help/Get-AzStorageTaskAssignmentInstancesReport.md @@ -246,6 +246,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String[] diff --git a/src/Storage/Storage.Management/help/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md b/src/Storage/Storage.Management/help/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md new file mode 100644 index 000000000000..588778ced25c --- /dev/null +++ b/src/Storage/Storage.Management/help/Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration.md @@ -0,0 +1,265 @@ +--- +external help file: Az.Storage-help.xml +Module Name: Az.Storage +online version: https://learn.microsoft.com/powershell/module/az.storage/invoke-azstoragereconcilenetworksecurityperimeterconfiguration +schema: 2.0.0 +--- + +# Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration + +## SYNOPSIS +Refreshes any information about the association. + +## SYNTAX + +### Reconcile (Default) +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration -AccountName + -NetworkSecurityPerimeterConfigurationName -ResourceGroupName [-SubscriptionId ] + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-WhatIf] + [-Confirm] [] +``` + +### ReconcileViaIdentityStorageAccount +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration + -NetworkSecurityPerimeterConfigurationName -StorageAccountInputObject + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-WhatIf] + [-Confirm] [] +``` + +### ReconcileViaIdentity +``` +Invoke-AzStorageReconcileNetworkSecurityPerimeterConfiguration -InputObject + [-DefaultProfile ] [-AsJob] [-NoWait] [-PassThru] [-WhatIf] + [-Confirm] [] +``` + +## DESCRIPTION +Refreshes any information about the association. + +## EXAMPLES + +### Example 1: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +### Example 2: {{ Add title here }} +```powershell +{{ Add code here }} +``` + +```output +{{ Add output here (remove the output block if the example doesn't have an output) }} +``` + +{{ Add description here }} + +## PARAMETERS + +### -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. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -AsJob +Run the command as a job + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -DefaultProfile +The DefaultProfile parameter is not functional. +Use the SubscriptionId parameter when available if executing the cmdlet against a different subscription. + +```yaml +Type: System.Management.Automation.PSObject +Parameter Sets: (All) +Aliases: AzureRMContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -InputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: ReconcileViaIdentity +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -NetworkSecurityPerimeterConfigurationName +The name for Network Security Perimeter configuration + +```yaml +Type: System.String +Parameter Sets: Reconcile, ReconcileViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -NoWait +Run the command asynchronously + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -PassThru +Returns true when the command succeeds + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -ResourceGroupName +The name of the resource group. +The name is case insensitive. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StorageAccountInputObject +Identity Parameter + +```yaml +Type: Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity +Parameter Sets: ReconcileViaIdentityStorageAccount +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -SubscriptionId +The ID of the target subscription. +The value must be an UUID. + +```yaml +Type: System.String +Parameter Sets: Reconcile +Aliases: + +Required: False +Position: Named +Default value: (Get-AzContext).Subscription.Id +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. +The cmdlet is not run. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +### Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity + +## OUTPUTS + +### System.Boolean + +## NOTES + +## RELATED LINKS diff --git a/src/Storage/Storage.Management/help/New-AzStorageFileSymbolicLink.md b/src/Storage/Storage.Management/help/New-AzStorageFileSymbolicLink.md index a94fbb7464ae..d5f570d10902 100644 --- a/src/Storage/Storage.Management/help/New-AzStorageFileSymbolicLink.md +++ b/src/Storage/Storage.Management/help/New-AzStorageFileSymbolicLink.md @@ -36,8 +36,8 @@ New-AzStorageFileSymbolicLink [-ShareDirectoryClient] [-P [-LinkText] [-Metadata ] [-FileCreatedOn ] [-FileLastWrittenOn ] [-Owner ] [-Group ] [-Context ] [-ServerTimeoutPerRequest ] [-ClientTimeoutPerRequest ] - [-DefaultProfile ] [-ConcurrentTaskCount ] [-WhatIf] [-Confirm] - [] + [-DefaultProfile ] [-ConcurrentTaskCount ] + [-WhatIf] [-Confirm] [] ``` ## DESCRIPTION diff --git a/src/Storage/Storage.Management/help/New-AzStorageTaskAssignment.md b/src/Storage/Storage.Management/help/New-AzStorageTaskAssignment.md index cab47cbc1e5c..9e3c84fd2ac3 100644 --- a/src/Storage/Storage.Management/help/New-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Management/help/New-AzStorageTaskAssignment.md @@ -324,7 +324,7 @@ Accept wildcard characters: False ### -StartOn When to start task execution. -This is a required field when ExecutionTrigger.properties.type is 'RunOnce'; this property should not be present when ExecutionTrigger.properties.type is 'OnSchedule' +This is an optional field when ExecutionTrigger.properties.type is 'RunOnce'; this property should not be present when ExecutionTrigger.properties.type is 'OnSchedule' ```yaml Type: System.DateTime @@ -340,6 +340,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.Management/help/Remove-AzStorageTaskAssignment.md b/src/Storage/Storage.Management/help/Remove-AzStorageTaskAssignment.md index 9ad4e961db39..97e0fc086c21 100644 --- a/src/Storage/Storage.Management/help/Remove-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Management/help/Remove-AzStorageTaskAssignment.md @@ -187,6 +187,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.Management/help/Set-AzStorageAccountManagementPolicy.md b/src/Storage/Storage.Management/help/Set-AzStorageAccountManagementPolicy.md index b5dcc2fe2f9e..9c4fa2cacf3e 100644 --- a/src/Storage/Storage.Management/help/Set-AzStorageAccountManagementPolicy.md +++ b/src/Storage/Storage.Management/help/Set-AzStorageAccountManagementPolicy.md @@ -1269,3 +1269,152 @@ This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable ## NOTES ## RELATED LINKS + + +## PARAMETERS + +### -DefaultProfile +The credentials, account, tenant, and subscription used for communication with Azure. + +```yaml +Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.Core.IAzureContextContainer +Parameter Sets: (All) +Aliases: AzContext, AzureRmContext, AzureCredential + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Policy +Management Policy Object to Set + +```yaml +Type: Microsoft.Azure.Commands.Management.Storage.Models.PSManagementPolicy +Parameter Sets: AccountNamePolicyObject, AccountObjectPolicyObject, AccountResourceIdPolicyObject +Aliases: ManagementPolicy + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -ResourceGroupName +Resource Group Name. + +```yaml +Type: System.String +Parameter Sets: AccountNamePolicyRule, AccountNamePolicyObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -Rule +The Management Policy rules. Get the object with New-AzStorageAccountManagementPolicyRule cmdlet. + +```yaml +Type: Microsoft.Azure.Commands.Management.Storage.Models.PSManagementPolicyRule[] +Parameter Sets: AccountNamePolicyRule, AccountObjectPolicyRule, AccountResourceIdPolicyRule +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -StorageAccount +Storage account object + +```yaml +Type: Microsoft.Azure.Commands.Management.Storage.Models.PSStorageAccount +Parameter Sets: AccountObjectPolicyRule, AccountObjectPolicyObject +Aliases: + +Required: True +Position: Named +Default value: None +Accept pipeline input: True (ByValue) +Accept wildcard characters: False +``` + +### -StorageAccountName +Storage Account Name. + +```yaml +Type: System.String +Parameter Sets: AccountNamePolicyRule, AccountNamePolicyObject +Aliases: AccountName + +Required: True +Position: 1 +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -StorageAccountResourceId +Storage Account Resource Id. + +```yaml +Type: System.String +Parameter Sets: AccountResourceIdPolicyRule, AccountResourceIdPolicyObject +Aliases: + +Required: True +Position: 0 +Default value: None +Accept pipeline input: True (ByPropertyName) +Accept wildcard characters: False +``` + +### -Confirm +Prompts you for confirmation before running the cmdlet. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: cf + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### -WhatIf +Shows what would happen if the cmdlet runs. The cmdlet is not run. + +```yaml +Type: System.Management.Automation.SwitchParameter +Parameter Sets: (All) +Aliases: wi + +Required: False +Position: Named +Default value: None +Accept pipeline input: False +Accept wildcard characters: False +``` + +### CommonParameters +This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see [about_CommonParameters](http://go.microsoft.com/fwlink/?LinkID=113216). + +## INPUTS + +## OUTPUTS + +## NOTES + +## RELATED LINKS diff --git a/src/Storage/Storage.Management/help/Update-AzStorageTaskAssignment.md b/src/Storage/Storage.Management/help/Update-AzStorageTaskAssignment.md index 54688f13a799..c22eeb320429 100644 --- a/src/Storage/Storage.Management/help/Update-AzStorageTaskAssignment.md +++ b/src/Storage/Storage.Management/help/Update-AzStorageTaskAssignment.md @@ -341,6 +341,7 @@ Accept wildcard characters: False ### -SubscriptionId The ID of the target subscription. +The value must be an UUID. ```yaml Type: System.String diff --git a/src/Storage/Storage.sln b/src/Storage/Storage.sln index ef67d3678f44..d92372defe86 100644 --- a/src/Storage/Storage.sln +++ b/src/Storage/Storage.sln @@ -35,7 +35,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Storage.common", "Storage.c EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Storage.Autorest", "Storage.Autorest", "{1E0B346E-62FD-A2E7-C013-81285A9FF5CA}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Az.Storage", "..\..\generated\Storage\Storage.Autorest\Az.Storage.csproj", "{C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}" +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Az.Storage", "..\..\generated\Storage\Storage.Autorest\Az.Storage.csproj", "{88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -203,18 +203,18 @@ Global {612125D7-36AF-4889-AB38-9B4D0D37CF0F}.Release|x64.Build.0 = Release|Any CPU {612125D7-36AF-4889-AB38-9B4D0D37CF0F}.Release|x86.ActiveCfg = Release|Any CPU {612125D7-36AF-4889-AB38-9B4D0D37CF0F}.Release|x86.Build.0 = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|x64.ActiveCfg = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|x64.Build.0 = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|x86.ActiveCfg = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Debug|x86.Build.0 = Debug|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|Any CPU.Build.0 = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|x64.ActiveCfg = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|x64.Build.0 = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|x86.ActiveCfg = Release|Any CPU - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC}.Release|x86.Build.0 = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|x64.ActiveCfg = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|x64.Build.0 = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|x86.ActiveCfg = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Debug|x86.Build.0 = Debug|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|Any CPU.Build.0 = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|x64.ActiveCfg = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|x64.Build.0 = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|x86.ActiveCfg = Release|Any CPU + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -229,6 +229,6 @@ Global {DED0C473-64A1-4615-9CD1-776D2EB11619} = {9ADC2E4A-DFC5-4CDC-9AB7-DC5E61E10C4F} {81B2C882-F205-411B-9EEC-A387E1D7B23C} = {9ADC2E4A-DFC5-4CDC-9AB7-DC5E61E10C4F} {DDCE5245-E4F2-4F1B-B669-D81A920AAD21} = {9ADC2E4A-DFC5-4CDC-9AB7-DC5E61E10C4F} - {C9FA1FE0-E2B4-414E-A238-0464AE52A7CC} = {1E0B346E-62FD-A2E7-C013-81285A9FF5CA} + {88F0D680-6F48-4AAE-A2E6-F2AA92D0AB3E} = {1E0B346E-62FD-A2E7-C013-81285A9FF5CA} EndGlobalSection EndGlobal