diff --git a/sdk/storage/azure-storage-blobs/CHANGELOG.md b/sdk/storage/azure-storage-blobs/CHANGELOG.md index bfe5b12b7..6583bdd6e 100644 --- a/sdk/storage/azure-storage-blobs/CHANGELOG.md +++ b/sdk/storage/azure-storage-blobs/CHANGELOG.md @@ -62,6 +62,7 @@ - Replace `std::pair` with `Azure::Core::Http::Range` to denote blob ranges. - Move version strings into `Details` namespace. - Replace scoped enums that don't support bitwise operations with extensible enum. +- Rename `SourceConditions` in API options to `SourceAccessConditions`. ## 12.0.0-beta.5 (2020-11-13) diff --git a/sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_options.hpp b/sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_options.hpp index a1e63f745..f624297bc 100644 --- a/sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_options.hpp +++ b/sdk/storage/azure-storage-blobs/inc/azure/storage/blobs/blob_options.hpp @@ -628,7 +628,7 @@ namespace Azure { namespace Storage { namespace Blobs { /** * @brief Optional conditions that the source must meet to perform this operation. */ - BlobAccessConditions SourceConditions; + BlobAccessConditions SourceAccessConditions; /** * @brief Specifies the tier to be set on the target blob. @@ -1026,7 +1026,7 @@ namespace Azure { namespace Storage { namespace Blobs { */ struct : public ModifiedTimeConditions, public ETagAccessConditions { - } SourceConditions; + } SourceAccessConditions; }; /** diff --git a/sdk/storage/azure-storage-blobs/src/blob_client.cpp b/sdk/storage/azure-storage-blobs/src/blob_client.cpp index 250fae18d..ec05cba6b 100644 --- a/sdk/storage/azure-storage-blobs/src/blob_client.cpp +++ b/sdk/storage/azure-storage-blobs/src/blob_client.cpp @@ -563,13 +563,13 @@ namespace Azure { namespace Storage { namespace Blobs { protocolLayerOptions.IfMatch = options.AccessConditions.IfMatch; protocolLayerOptions.IfNoneMatch = options.AccessConditions.IfNoneMatch; protocolLayerOptions.IfTags = options.AccessConditions.TagConditions; - protocolLayerOptions.SourceLeaseId = options.SourceConditions.LeaseId; - protocolLayerOptions.SourceIfModifiedSince = options.SourceConditions.IfModifiedSince; - protocolLayerOptions.SourceIfUnmodifiedSince = options.SourceConditions.IfUnmodifiedSince; - protocolLayerOptions.SourceIfMatch = options.SourceConditions.IfMatch; - protocolLayerOptions.SourceIfNoneMatch = options.SourceConditions.IfNoneMatch; + protocolLayerOptions.SourceLeaseId = options.SourceAccessConditions.LeaseId; + protocolLayerOptions.SourceIfModifiedSince = options.SourceAccessConditions.IfModifiedSince; + protocolLayerOptions.SourceIfUnmodifiedSince = options.SourceAccessConditions.IfUnmodifiedSince; + protocolLayerOptions.SourceIfMatch = options.SourceAccessConditions.IfMatch; + protocolLayerOptions.SourceIfNoneMatch = options.SourceAccessConditions.IfNoneMatch; protocolLayerOptions.ShouldSealDestination = options.ShouldSealDestination; - protocolLayerOptions.SourceIfTags = options.SourceConditions.TagConditions; + protocolLayerOptions.SourceIfTags = options.SourceAccessConditions.TagConditions; return Details::BlobRestClient::Blob::StartCopyFromUri( options.Context, *m_pipeline, m_blobUrl, protocolLayerOptions); } diff --git a/sdk/storage/azure-storage-blobs/src/block_blob_client.cpp b/sdk/storage/azure-storage-blobs/src/block_blob_client.cpp index 386cf404b..0f4c6b794 100644 --- a/sdk/storage/azure-storage-blobs/src/block_blob_client.cpp +++ b/sdk/storage/azure-storage-blobs/src/block_blob_client.cpp @@ -292,10 +292,10 @@ namespace Azure { namespace Storage { namespace Blobs { protocolLayerOptions.SourceRange = options.SourceRange; protocolLayerOptions.TransactionalContentHash = options.TransactionalContentHash; protocolLayerOptions.LeaseId = options.AccessConditions.LeaseId; - protocolLayerOptions.SourceIfModifiedSince = options.SourceConditions.IfModifiedSince; - protocolLayerOptions.SourceIfUnmodifiedSince = options.SourceConditions.IfUnmodifiedSince; - protocolLayerOptions.SourceIfMatch = options.SourceConditions.IfMatch; - protocolLayerOptions.SourceIfNoneMatch = options.SourceConditions.IfNoneMatch; + protocolLayerOptions.SourceIfModifiedSince = options.SourceAccessConditions.IfModifiedSince; + protocolLayerOptions.SourceIfUnmodifiedSince = options.SourceAccessConditions.IfUnmodifiedSince; + protocolLayerOptions.SourceIfMatch = options.SourceAccessConditions.IfMatch; + protocolLayerOptions.SourceIfNoneMatch = options.SourceAccessConditions.IfNoneMatch; if (m_customerProvidedKey.HasValue()) { protocolLayerOptions.EncryptionKey = m_customerProvidedKey.GetValue().Key; diff --git a/sdk/storage/azure-storage-blobs/test/append_blob_client_test.cpp b/sdk/storage/azure-storage-blobs/test/append_blob_client_test.cpp index 937475a76..982d76c69 100644 --- a/sdk/storage/azure-storage-blobs/test/append_blob_client_test.cpp +++ b/sdk/storage/azure-storage-blobs/test/append_blob_client_test.cpp @@ -213,45 +213,45 @@ namespace Azure { namespace Storage { namespace Test { { Blobs::StartCopyBlobFromUriOptions options; - options.SourceConditions.LeaseId = CreateUniqueLeaseId(); + options.SourceAccessConditions.LeaseId = CreateUniqueLeaseId(); /* don't know why, the copy operation also succeeds even if the lease id doesn't match. EXPECT_THROW( destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options), StorageException); */ - options.SourceConditions.LeaseId = leaseId; + options.SourceAccessConditions.LeaseId = leaseId; EXPECT_NO_THROW(destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options)); } sourceBlobClient.BreakLease(); { Blobs::StartCopyBlobFromUriOptions options; - options.SourceConditions.IfMatch = eTag; + options.SourceAccessConditions.IfMatch = eTag; EXPECT_NO_THROW(destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options)); - options.SourceConditions.IfMatch = DummyETag; + options.SourceAccessConditions.IfMatch = DummyETag; EXPECT_THROW( destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options), StorageException); } { Blobs::StartCopyBlobFromUriOptions options; - options.SourceConditions.IfNoneMatch = DummyETag; + options.SourceAccessConditions.IfNoneMatch = DummyETag; EXPECT_NO_THROW(destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options)); - options.SourceConditions.IfNoneMatch = eTag; + options.SourceAccessConditions.IfNoneMatch = eTag; EXPECT_THROW( destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options), StorageException); } { Blobs::StartCopyBlobFromUriOptions options; - options.SourceConditions.IfModifiedSince = timeBeforeStr; + options.SourceAccessConditions.IfModifiedSince = timeBeforeStr; EXPECT_NO_THROW(destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options)); - options.SourceConditions.IfModifiedSince = timeAfterStr; + options.SourceAccessConditions.IfModifiedSince = timeAfterStr; EXPECT_THROW( destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options), StorageException); } { Blobs::StartCopyBlobFromUriOptions options; - options.SourceConditions.IfUnmodifiedSince = timeAfterStr; + options.SourceAccessConditions.IfUnmodifiedSince = timeAfterStr; EXPECT_NO_THROW(destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options)); - options.SourceConditions.IfUnmodifiedSince = timeBeforeStr; + options.SourceAccessConditions.IfUnmodifiedSince = timeBeforeStr; EXPECT_THROW( destBlobClient.StartCopyFromUri(sourceBlobClient.GetUrl(), options), StorageException); } diff --git a/sdk/storage/azure-storage-blobs/test/blob_container_client_test.cpp b/sdk/storage/azure-storage-blobs/test/blob_container_client_test.cpp index 1482e6ab0..99bbb3c65 100644 --- a/sdk/storage/azure-storage-blobs/test/blob_container_client_test.cpp +++ b/sdk/storage/azure-storage-blobs/test/blob_container_client_test.cpp @@ -930,12 +930,12 @@ namespace Azure { namespace Storage { namespace Test { Blobs::StartCopyBlobFromUriOptions options; auto blobClient2 = Azure::Storage::Blobs::AppendBlobClient::CreateFromConnectionString( StandardStorageConnectionString(), m_containerName, RandomString()); - options.SourceConditions.TagConditions = failWhereExpression; + options.SourceAccessConditions.TagConditions = failWhereExpression; EXPECT_THROW(blobClient2.StartCopyFromUri(url, options), StorageException); - options.SourceConditions.TagConditions = successWhereExpression; + options.SourceAccessConditions.TagConditions = successWhereExpression; EXPECT_NO_THROW(blobClient2.StartCopyFromUri(url, options)); - options.SourceConditions.TagConditions.Reset(); + options.SourceAccessConditions.TagConditions.Reset(); blobClient2.SetTags(tags); options.AccessConditions.TagConditions = failWhereExpression;