From d969b535f9332978360e50772a8447a7647fd66d Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 20 Jul 2020 13:24:22 -0700 Subject: [PATCH 1/3] Consolidate options to throw on null for required params and not throw if no required params --- .../storage/blob/options/BlockBlobListBlocksOptions.java | 2 ++ .../storage/blob/specialized/BlobAsyncClientBase.java | 3 ++- .../storage/blob/specialized/BlobLeaseAsyncClient.java | 7 ++++--- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java index fadc41b926a9..ad4924d72f31 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java @@ -5,6 +5,7 @@ import com.azure.core.annotation.Fluent; import com.azure.storage.blob.models.BlockListType; +import com.azure.storage.common.implementation.StorageImplUtils; /** * Extended options that may be passed when listing blocks for a block blob. @@ -20,6 +21,7 @@ public class BlockBlobListBlocksOptions { * @param type Specifies which type of blocks to return. */ public BlockBlobListBlocksOptions(BlockListType type) { + StorageImplUtils.assertNotNull("type", type); this.type = type; } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index 8b92c9ff0946..8250ab3bf328 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -37,6 +37,7 @@ import com.azure.storage.blob.models.ArchiveStatus; import com.azure.storage.blob.models.BlobDownloadHeaders; import com.azure.storage.blob.options.BlobBeginCopyOptions; +import com.azure.storage.blob.options.BlobBreakLeaseOptions; import com.azure.storage.blob.options.BlobCopyFromUrlOptions; import com.azure.storage.blob.models.BlobCopyInfo; import com.azure.storage.blob.models.BlobDownloadAsyncResponse; @@ -1374,7 +1375,7 @@ public Mono>> getTagsWithResponse(BlobGetTagsOption } Mono>> getTagsWithResponse(BlobGetTagsOptions options, Context context) { - StorageImplUtils.assertNotNull("options", options); + options = (options == null) ? new BlobGetTagsOptions() : options; BlobRequestConditions requestConditions = (options.getRequestConditions() == null) ? new BlobRequestConditions() : options.getRequestConditions(); return this.azureBlobStorage.blobs().getTagsWithRestResponseAsync(null, null, null, null, snapshot, diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java index d1b339f9dd0c..b8f362a61f5e 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java @@ -19,6 +19,7 @@ import com.azure.storage.blob.implementation.AzureBlobStorageImpl; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.BlobLeaseRequestConditions; +import com.azure.storage.blob.options.AppendBlobCreateOptions; import com.azure.storage.blob.options.BlobAcquireLeaseOptions; import com.azure.storage.blob.options.BlobBreakLeaseOptions; import com.azure.storage.blob.options.BlobChangeLeaseOptions; @@ -241,7 +242,7 @@ public Mono> renewLeaseWithResponse(BlobRenewLeaseOptions optio } Mono> renewLeaseWithResponse(BlobRenewLeaseOptions options, Context context) { - StorageImplUtils.assertNotNull("options", options); + options = (options == null) ? new BlobRenewLeaseOptions() : options; BlobLeaseRequestConditions requestConditions = (options.getRequestConditions() == null) ? new BlobLeaseRequestConditions() : options.getRequestConditions(); context = context == null ? Context.NONE : context; @@ -321,7 +322,7 @@ public Mono> releaseLeaseWithResponse(BlobReleaseLeaseOptions opt } Mono> releaseLeaseWithResponse(BlobReleaseLeaseOptions options, Context context) { - StorageImplUtils.assertNotNull("options", options); + options = (options == null) ? new BlobReleaseLeaseOptions() : options; BlobLeaseRequestConditions requestConditions = (options.getRequestConditions() == null) ? new BlobLeaseRequestConditions() : options.getRequestConditions(); context = context == null ? Context.NONE : context; @@ -414,7 +415,7 @@ public Mono> breakLeaseWithResponse(BlobBreakLeaseOptions opti } Mono> breakLeaseWithResponse(BlobBreakLeaseOptions options, Context context) { - StorageImplUtils.assertNotNull("options", options); + options = (options == null) ? new BlobBreakLeaseOptions() : options; BlobLeaseRequestConditions requestConditions = (options.getRequestConditions() == null) ? new BlobLeaseRequestConditions() : options.getRequestConditions(); context = context == null ? Context.NONE : context; From cb403c2ebd214100c65332a07d90eb61b571139e Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 20 Jul 2020 13:52:24 -0700 Subject: [PATCH 2/3] Removed null check --- .../azure/storage/blob/options/BlockBlobListBlocksOptions.java | 1 - .../com/azure/storage/blob/specialized/BlobAsyncClientBase.java | 1 - .../com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java | 1 - 3 files changed, 3 deletions(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java index ad4924d72f31..29f21546066b 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java @@ -21,7 +21,6 @@ public class BlockBlobListBlocksOptions { * @param type Specifies which type of blocks to return. */ public BlockBlobListBlocksOptions(BlockListType type) { - StorageImplUtils.assertNotNull("type", type); this.type = type; } diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java index 8250ab3bf328..6a343f31bb03 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java @@ -37,7 +37,6 @@ import com.azure.storage.blob.models.ArchiveStatus; import com.azure.storage.blob.models.BlobDownloadHeaders; import com.azure.storage.blob.options.BlobBeginCopyOptions; -import com.azure.storage.blob.options.BlobBreakLeaseOptions; import com.azure.storage.blob.options.BlobCopyFromUrlOptions; import com.azure.storage.blob.models.BlobCopyInfo; import com.azure.storage.blob.models.BlobDownloadAsyncResponse; diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java index b8f362a61f5e..5c82b413fcd2 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobLeaseAsyncClient.java @@ -19,7 +19,6 @@ import com.azure.storage.blob.implementation.AzureBlobStorageImpl; import com.azure.storage.blob.implementation.util.ModelHelper; import com.azure.storage.blob.models.BlobLeaseRequestConditions; -import com.azure.storage.blob.options.AppendBlobCreateOptions; import com.azure.storage.blob.options.BlobAcquireLeaseOptions; import com.azure.storage.blob.options.BlobBreakLeaseOptions; import com.azure.storage.blob.options.BlobChangeLeaseOptions; From 17ac72333bbc858f60823c6ae45c4c72d649545d Mon Sep 17 00:00:00 2001 From: Gauri Prasad Date: Mon, 20 Jul 2020 14:15:44 -0700 Subject: [PATCH 3/3] Removed import --- .../azure/storage/blob/options/BlockBlobListBlocksOptions.java | 1 - 1 file changed, 1 deletion(-) diff --git a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java index 29f21546066b..fadc41b926a9 100644 --- a/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java +++ b/sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/options/BlockBlobListBlocksOptions.java @@ -5,7 +5,6 @@ import com.azure.core.annotation.Fluent; import com.azure.storage.blob.models.BlockListType; -import com.azure.storage.common.implementation.StorageImplUtils; /** * Extended options that may be passed when listing blocks for a block blob.