Skip to content

Commit 1653719

Browse files
VeryEarlybluewwvidai-msft
authored
[Storage] When download blob with parameter AbsoluteUri, not allow in… (#26599)
* [Storage] When download blob with parameter AbsoluteUri, not allow input parameter Context (#26585) * [Storage] fix #26316: When download blob with parameter AbsoluteUri (alias Uri, BlobUri), not allow input parameter Context together. * Add static exception * revise change log * resolve merge --------- Co-authored-by: Wei Wei <[email protected]> Co-authored-by: Vincent Dai <[email protected]>
1 parent c40ab7c commit 1653719

File tree

4 files changed

+32
-14
lines changed

4 files changed

+32
-14
lines changed

src/Storage/Storage.Management/ChangeLog.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
- Additional information about change #1
1919
-->
2020
## Upcoming Release
21+
* When download blob with parameter AbsoluteUri (alias Uri, BlobUri), not allow input parameter Context together.
22+
- `Get-AzStorageBlobContent`
2123

2224
## Version 7.5.0
2325
* Added a warning for an upcoming breaking change for download blob will block input parameter -AbsoluteUri and -Context together.

src/Storage/Storage.Management/help/Get-AzStorageBlobContent.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,36 +15,36 @@ Downloads a storage blob.
1515

1616
### ReceiveManual (Default)
1717
```
18-
Get-AzStorageBlobContent [-Blob] <String> [-Container] <String> [-Destination <String>] [-CheckMd5] [-Force]
19-
[-AsJob] [-TagCondition <String>] [-Context <IStorageContext>] [-ServerTimeoutPerRequest <Int32>]
18+
Get-AzStorageBlobContent [-Blob] <String> [-Container] <String> [-Destination <String>] [-CheckMd5]
19+
[-Context <IStorageContext>] [-Force] [-AsJob] [-TagCondition <String>] [-ServerTimeoutPerRequest <Int32>]
2020
[-ClientTimeoutPerRequest <Int32>] [-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>]
2121
[-WhatIf] [-Confirm] [<CommonParameters>]
2222
```
2323

2424
### BlobPipeline
2525
```
2626
Get-AzStorageBlobContent -CloudBlob <CloudBlob> [-BlobBaseClient <BlobBaseClient>] [-Destination <String>]
27-
[-CheckMd5] [-Force] [-AsJob] [-TagCondition <String>] [-Context <IStorageContext>]
27+
[-CheckMd5] [-Context <IStorageContext>] [-Force] [-AsJob] [-TagCondition <String>]
2828
[-ServerTimeoutPerRequest <Int32>] [-ClientTimeoutPerRequest <Int32>]
29-
[-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>]
30-
[-WhatIf] [-Confirm] [<CommonParameters>]
29+
[-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>] [-WhatIf] [-Confirm]
30+
[<CommonParameters>]
3131
```
3232

3333
### ContainerPipeline
3434
```
3535
Get-AzStorageBlobContent -CloudBlobContainer <CloudBlobContainer> [-Blob] <String> [-Destination <String>]
36-
[-CheckMd5] [-Force] [-AsJob] [-TagCondition <String>] [-Context <IStorageContext>]
36+
[-CheckMd5] [-Context <IStorageContext>] [-Force] [-AsJob] [-TagCondition <String>]
3737
[-ServerTimeoutPerRequest <Int32>] [-ClientTimeoutPerRequest <Int32>]
38-
[-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>]
39-
[-WhatIf] [-Confirm] [<CommonParameters>]
38+
[-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>] [-WhatIf] [-Confirm]
39+
[<CommonParameters>]
4040
```
4141

4242
### UriPipeline
4343
```
4444
Get-AzStorageBlobContent [-Destination <String>] -AbsoluteUri <String> [-Force] [-AsJob]
45-
[-TagCondition <String>] [-Context <IStorageContext>] [-ServerTimeoutPerRequest <Int32>]
46-
[-ClientTimeoutPerRequest <Int32>] [-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>]
47-
[-WhatIf] [-Confirm] [<CommonParameters>]
45+
[-TagCondition <String>] [-ServerTimeoutPerRequest <Int32>] [-ClientTimeoutPerRequest <Int32>]
46+
[-DefaultProfile <IAzureContextContainer>] [-ConcurrentTaskCount <Int32>] [-WhatIf] [-Confirm]
47+
[<CommonParameters>]
4848
```
4949

5050
## DESCRIPTION
@@ -256,7 +256,7 @@ You can use the New-AzStorageContext cmdlet to create a storage context.
256256
257257
```yaml
258258
Type: Microsoft.Azure.Commands.Common.Authentication.Abstractions.IStorageContext
259-
Parameter Sets: (All)
259+
Parameter Sets: ReceiveManual, BlobPipeline, ContainerPipeline
260260
Aliases:
261261

262262
Required: False

src/Storage/Storage/Blob/Cmdlet/GetAzureStorageBlobContent.cs

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
using Azure.Storage.Blobs;
3232
using Azure.Storage;
3333
using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
34+
using Microsoft.Azure.Commands.Common.Authentication.Abstractions;
3435

3536
namespace Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet
3637
{
@@ -113,12 +114,25 @@ public SwitchParameter CheckMd5
113114

114115
private bool checkMd5;
115116

116-
[CmdletParameterBreakingChangeWithVersion("AbsoluteUri", "13.0.0", "8.0.0", ChangeDescription = "When download blob with parameter AbsoluteUri (alias Uri, BlobUri), parameter Context will not be allowed to input together.")]
117117
[Alias("Uri", "BlobUri")]
118118
[Parameter(HelpMessage = "Blob uri to download from.", Mandatory = true,
119119
ValueFromPipelineByPropertyName = true, ParameterSetName = UriParameterSet)]
120120
public string AbsoluteUri { get; set; }
121121

122+
[Parameter(HelpMessage = "Azure Storage Context Object",
123+
ValueFromPipeline = true,
124+
ValueFromPipelineByPropertyName = true,
125+
ParameterSetName = ManualParameterSet)]
126+
[Parameter(HelpMessage = "Azure Storage Context Object",
127+
ValueFromPipeline = true,
128+
ValueFromPipelineByPropertyName = true,
129+
ParameterSetName = BlobParameterSet)]
130+
[Parameter(HelpMessage = "Azure Storage Context Object",
131+
ValueFromPipeline = true,
132+
ValueFromPipelineByPropertyName = true,
133+
ParameterSetName = ContainerParameterSet)]
134+
public override IStorageContext Context { get; set; }
135+
122136
private BlobToFileSystemNameResolver fileNameResolver;
123137
private bool skipSourceChannelInit;
124138

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
"Module","ClassName","Target","Severity","ProblemId","Description","Remediation"
2-
"Az.Storage","Microsoft.WindowsAzure.Commands.Storage.Common.Cmdlet.NewAzureStorageContext","New-AzStorageContext","0","1020","The cmdlet 'New-AzStorageContext' no longer has output type 'Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext'.","Make cmdlet 'New-AzStorageContext' return type 'Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext'."
2+
"Az.Storage","Microsoft.WindowsAzure.Commands.Storage.Common.Cmdlet.NewAzureStorageContext","New-AzStorageContext","0","1020","The cmdlet 'New-AzStorageContext' no longer has output type 'Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext'.","Make cmdlet 'New-AzStorageContext' return type 'Microsoft.WindowsAzure.Commands.Storage.AzureStorageContext'."
3+
"Az.Storage","Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet.GetAzureStorageBlobContentCommand","Get-AzStorageBlobContent","0","1050","The parameter set '__AllParameterSets' for cmdlet 'Get-AzStorageBlobContent' has been removed.","Add parameter set '__AllParameterSets' back to cmdlet 'Get-AzStorageBlobContent'."
4+
"Az.Storage","Microsoft.WindowsAzure.Commands.Storage.Blob.Cmdlet.GetAzureStorageBlobContentCommand","Get-AzStorageBlobContent","0","1050","The parameter set 'UriPipeline' for cmdlet 'Get-AzStorageBlobContent' has been removed.","Add parameter set 'UriPipeline' back to cmdlet 'Get-AzStorageBlobContent'."

0 commit comments

Comments
 (0)