Rename SourceConditions->SourceAccessConditions (#1267)

This commit is contained in:
JinmingHu 2021-01-07 19:21:26 +08:00 committed by GitHub
parent 36fbcd9cee
commit b212d287ab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 26 additions and 25 deletions

View File

@ -62,6 +62,7 @@
- Replace `std::pair<int64_t, int64_t>` 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)

View File

@ -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;
};
/**

View File

@ -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);
}

View File

@ -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;

View File

@ -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);
}

View File

@ -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;