/// <summary> /// get blob content /// </summary> /// <param name="container">source container object</param> /// <param name="blobName">source blob name</param> /// <param name="fileName">destination file name</param> /// <returns>the downloaded AzureStorageBlob object</returns> internal void GetBlobContent(CloudBlobContainer container, string blobName, string fileName) { if (!NameUtil.IsValidBlobName(blobName)) { throw new ArgumentException(String.Format(Resources.InvalidBlobName, blobName)); } string filePath = GetFullReceiveFilePath(fileName, blobName, null); ValidatePipelineCloudBlobContainer(container); if (UseTrack2SDK()) { BlobContainerClient track2container = AzureStorageContainer.GetTrack2BlobContainerClient(container, Channel.StorageContext, ClientOptions); BlobBaseClient blobClient = track2container.GetBlobBaseClient(blobName); GetBlobContent(blobClient, filePath, true); } else { AccessCondition accessCondition = null; BlobRequestOptions requestOptions = RequestOptions; CloudBlob blob = GetBlobReferenceFromServerWithContainer(Channel, container, blobName, accessCondition, requestOptions, OperationContext); GetBlobContent(blob, filePath, true); } }
/// <summary> /// get blob content /// </summary> /// <param name="container">source container object</param> /// <param name="blobName">source blob name</param> /// <param name="fileName">destination file name</param> /// <returns>the downloaded AzureStorageBlob object</returns> internal void GetBlobContent(CloudBlobContainer container, string blobName, string fileName) { if (!NameUtil.IsValidBlobName(blobName)) { throw new ArgumentException(String.Format(Resources.InvalidBlobName, blobName)); } // Don't need get File full path here, since will get file full path in GetBlobContent() with blob object. ValidatePipelineCloudBlobContainer(container); if (UseTrack2Sdk()) { BlobContainerClient track2container = AzureStorageContainer.GetTrack2BlobContainerClient(container, Channel.StorageContext, ClientOptions); BlobBaseClient blobClient = track2container.GetBlobBaseClient(blobName); GetBlobContent(blobClient, fileName, true); } else { AccessCondition accessCondition = null; BlobRequestOptions requestOptions = RequestOptions; CloudBlob blob = GetBlobReferenceFromServerWithContainer(Channel, container, blobName, accessCondition, requestOptions, OperationContext); GetBlobContent(blob, fileName, true); } }
#pragma warning disable CA1806 // Do not ignore method results public override void Run(CancellationToken cancellationToken) { // traverse hierarchy down BlobServiceClient.GetBlobContainerClient(ContainerName); BlobContainerClient.GetBlobClient(BlobName); BlobContainerClient.GetBlobBaseClient(BlobName); BlobContainerClient.GetBlockBlobClient(BlobName); BlobContainerClient.GetPageBlobClient(BlobName); BlobContainerClient.GetAppendBlobClient(BlobName); // traverse hierarchy up BlobClient.GetParentBlobContainerClient(); BlobContainerClient.GetParentBlobServiceClient(); // BlobServiceClient ctors new BlobServiceClient(s_connectionString); new BlobServiceClient(BlobServiceClient.Uri); new BlobServiceClient(BlobServiceClient.Uri, s_azureSasCredential); new BlobServiceClient(BlobServiceClient.Uri, s_tokenCredential); new BlobServiceClient(BlobServiceClient.Uri, StorageSharedKeyCredential); // BlobContainerClient ctors new BlobContainerClient(s_connectionString, ContainerName); new BlobContainerClient(BlobContainerClient.Uri); new BlobContainerClient(BlobContainerClient.Uri, s_azureSasCredential); new BlobContainerClient(BlobContainerClient.Uri, s_tokenCredential); new BlobContainerClient(BlobContainerClient.Uri, StorageSharedKeyCredential); // BlobClient ctors new BlobClient(s_connectionString, ContainerName, BlobName); new BlobClient(BlobContainerClient.Uri); new BlobClient(BlobContainerClient.Uri, s_azureSasCredential); new BlobClient(BlobContainerClient.Uri, s_tokenCredential); new BlobClient(BlobContainerClient.Uri, StorageSharedKeyCredential); // BlobBaseClient ctors new BlobBaseClient(s_connectionString, ContainerName, BlobName); new BlobBaseClient(BlobContainerClient.Uri); new BlobBaseClient(BlobContainerClient.Uri, s_azureSasCredential); new BlobBaseClient(BlobContainerClient.Uri, s_tokenCredential); new BlobBaseClient(BlobContainerClient.Uri, StorageSharedKeyCredential); // AppendBlobClient ctors new AppendBlobClient(s_connectionString, ContainerName, BlobName); new AppendBlobClient(BlobContainerClient.Uri); new AppendBlobClient(BlobContainerClient.Uri, s_azureSasCredential); new AppendBlobClient(BlobContainerClient.Uri, s_tokenCredential); new AppendBlobClient(BlobContainerClient.Uri, StorageSharedKeyCredential); // BlockBlobClient ctors new BlockBlobClient(s_connectionString, ContainerName, BlobName); new BlockBlobClient(BlobContainerClient.Uri); new BlockBlobClient(BlobContainerClient.Uri, s_azureSasCredential); new BlockBlobClient(BlobContainerClient.Uri, s_tokenCredential); new BlockBlobClient(BlobContainerClient.Uri, StorageSharedKeyCredential); // PageBlobClient ctors new PageBlobClient(s_connectionString, ContainerName, BlobName); new PageBlobClient(BlobContainerClient.Uri); new PageBlobClient(BlobContainerClient.Uri, s_azureSasCredential); new PageBlobClient(BlobContainerClient.Uri, s_tokenCredential); new PageBlobClient(BlobContainerClient.Uri, StorageSharedKeyCredential); }