Skip to content

Commit ecb27a6

Browse files
authored
Continue fix issue in migrate to file track2 (#19658)
1 parent eb8b43c commit ecb27a6

File tree

3 files changed

+22
-7
lines changed

3 files changed

+22
-7
lines changed

src/Storage/Storage/File/Cmdlet/RemoveAzureStorageFile.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ public override void ExecuteCmdlet()
9898
// when only track1 object input, will miss storage context, so need to build storage context for prepare the output object.
9999
if (this.Context == null)
100100
{
101-
this.Context = GetStorageContextFromTrack1FileServiceClient(this.Directory.ServiceClient, DefaultContext);
101+
this.Context = GetStorageContextFromTrack1FileServiceClient(this.File.ServiceClient, DefaultContext);
102102
}
103103
break;
104104

@@ -124,7 +124,7 @@ public override void ExecuteCmdlet()
124124
// when only track1 object input, will miss storage context, so need to build storage context for prepare the output object.
125125
if (this.Context == null)
126126
{
127-
this.Context = GetStorageContextFromTrack1FileServiceClient(this.Share.ServiceClient, DefaultContext);
127+
this.Context = GetStorageContextFromTrack1FileServiceClient(this.Directory.ServiceClient, DefaultContext);
128128
}
129129
break;
130130

src/Storage/Storage/File/Cmdlet/RemoveAzureStorageShare.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,12 +103,12 @@ public override void ExecuteCmdlet()
103103
else
104104
{
105105
share = AzureStorageFileShare.GetTrack2FileShareClient(this.Share, (AzureStorageContext)this.Context, this.ClientOptions);
106+
}
106107

107-
// when only track1 object input, will miss storage context, so need to build storage context for prepare the output object.
108-
if (this.Context == null)
109-
{
110-
this.Context = GetStorageContextFromTrack1FileServiceClient(this.Share.ServiceClient, DefaultContext);
111-
}
108+
// when only track1 object input, will miss storage context, so need to build storage context for prepare the output object.
109+
if (this.Context == null)
110+
{
111+
this.Context = GetStorageContextFromTrack1FileServiceClient(this.Share.ServiceClient, DefaultContext);
112112
}
113113
break;
114114

src/Storage/Storage/File/Cmdlet/StartAzureStorageFileCopy.cs

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,12 @@ internal IStorageFileManagement GetDestinationChannel()
228228
destChannel = new StorageFileManagement(this.GetCmdletStorageContext(DestContext));
229229
}
230230
}
231+
else if (BlobFileParameterSet == this.ParameterSetName ||
232+
FileFileParameterSet == this.ParameterSetName ||
233+
UriFileParameterSet == this.ParameterSetName)
234+
{
235+
destChannel = new StorageFileManagement(this.GetCmdletStorageContext(DestContext));
236+
}
231237
else
232238
{
233239
destChannel = base.CreateChannel();
@@ -243,6 +249,15 @@ internal IStorageFileManagement GetDestinationChannel()
243249
[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
244250
public override void ExecuteCmdlet()
245251
{
252+
if(this.DestFile != null)
253+
{
254+
// when only track1 object input, will miss storage context, so need to build storage context for prepare the output object.
255+
if (this.DestContext == null)
256+
{
257+
this.DestContext = GetStorageContextFromTrack1FileServiceClient(this.DestFile.ServiceClient, DefaultContext);
258+
}
259+
}
260+
246261
blobChannel = this.GetBlobChannel();
247262
destChannel = GetDestinationChannel();
248263
IStorageFileManagement srcChannel = Channel;

0 commit comments

Comments
 (0)