Skip to content

Commit 2b9b3de

Browse files
authored
Changing return types for DeleteIfExists to Boolean (Azure#28945)
changing return types from void to boolean
1 parent aaec715 commit 2b9b3de

File tree

46 files changed

+496
-442
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+496
-442
lines changed

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerAsyncClient.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -452,7 +452,7 @@ Mono<Response<Void>> createWithResponse(Map<String, String> metadata, PublicAcce
452452
*/
453453
@ServiceMethod(returns = ReturnType.SINGLE)
454454
public Mono<Boolean> createIfNotExists() {
455-
return createIfNotExistsWithResponse(null).map(response -> response.getStatusCode() != 409);
455+
return createIfNotExistsWithResponse(null).flatMap(FluxUtil::toMono);
456456
}
457457

458458
/**
@@ -482,24 +482,25 @@ public Mono<Boolean> createIfNotExists() {
482482
* successfully created. If status code is 409, a container already existed at this location.
483483
*/
484484
@ServiceMethod(returns = ReturnType.SINGLE)
485-
public Mono<Response<Void>> createIfNotExistsWithResponse(BlobContainerCreateOptions options) {
485+
public Mono<Response<Boolean>> createIfNotExistsWithResponse(BlobContainerCreateOptions options) {
486486
try {
487487
return createIfNotExistsWithResponse(options, null);
488488
} catch (RuntimeException ex) {
489489
return monoError(LOGGER, ex);
490490
}
491491
}
492492

493-
Mono<Response<Void>> createIfNotExistsWithResponse(BlobContainerCreateOptions options, Context context) {
493+
Mono<Response<Boolean>> createIfNotExistsWithResponse(BlobContainerCreateOptions options, Context context) {
494494
try {
495495
options = options == null ? new BlobContainerCreateOptions() : options;
496496
return createWithResponse(options.getMetadata(), options.getPublicAccessType(), context)
497+
.map(response -> (Response<Boolean>) new SimpleResponse<>(response, true))
497498
.onErrorResume(t -> t instanceof BlobStorageException && ((BlobStorageException) t)
498499
.getStatusCode() == 409,
499500
t -> {
500501
HttpResponse response = ((BlobStorageException) t).getResponse();
501502
return Mono.just(new SimpleResponse<>(response.getRequest(), response.getStatusCode(),
502-
response.getHeaders(), null));
503+
response.getHeaders(), false));
503504
});
504505
} catch (RuntimeException ex) {
505506
return monoError(LOGGER, ex);
@@ -602,7 +603,7 @@ Mono<Response<Void>> deleteWithResponse(BlobRequestConditions requestConditions,
602603
*/
603604
@ServiceMethod(returns = ReturnType.SINGLE)
604605
public Mono<Boolean> deleteIfExists() {
605-
return deleteIfExistsWithResponse(null).map(response -> response.getStatusCode() == 202);
606+
return deleteIfExistsWithResponse(null).flatMap(FluxUtil::toMono);
606607
}
607608

608609
/**
@@ -635,23 +636,24 @@ public Mono<Boolean> deleteIfExists() {
635636
* {@link BlobRequestConditions#getIfNoneMatch()} is set.
636637
*/
637638
@ServiceMethod(returns = ReturnType.SINGLE)
638-
public Mono<Response<Void>> deleteIfExistsWithResponse(BlobRequestConditions requestConditions) {
639+
public Mono<Response<Boolean>> deleteIfExistsWithResponse(BlobRequestConditions requestConditions) {
639640
try {
640641
return deleteIfExistsWithResponse(requestConditions, null);
641642
} catch (RuntimeException ex) {
642643
return monoError(LOGGER, ex);
643644
}
644645
}
645646

646-
Mono<Response<Void>> deleteIfExistsWithResponse(BlobRequestConditions requestConditions, Context context) {
647+
Mono<Response<Boolean>> deleteIfExistsWithResponse(BlobRequestConditions requestConditions, Context context) {
647648
requestConditions = requestConditions == null ? new BlobRequestConditions() : requestConditions;
648649
try {
649650
return deleteWithResponse(requestConditions, context)
651+
.map(response -> (Response<Boolean>) new SimpleResponse<>(response, true))
650652
.onErrorResume(t -> t instanceof BlobStorageException && ((BlobStorageException) t).getStatusCode() == 404,
651653
t -> {
652654
HttpResponse response = ((BlobStorageException) t).getResponse();
653655
return Mono.just(new SimpleResponse<>(response.getRequest(), response.getStatusCode(),
654-
response.getHeaders(), null));
656+
response.getHeaders(), false));
655657
});
656658
} catch (RuntimeException ex) {
657659
return monoError(LOGGER, ex);

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobContainerClient.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -337,7 +337,7 @@ public Response<Void> createWithResponse(Map<String, String> metadata, PublicAcc
337337
*/
338338
@ServiceMethod(returns = ReturnType.SINGLE)
339339
public boolean createIfNotExists() {
340-
return createIfNotExistsWithResponse(null, null, null).getStatusCode() == 201;
340+
return createIfNotExistsWithResponse(null, null, null).getValue();
341341
}
342342

343343
/**
@@ -353,7 +353,7 @@ public boolean createIfNotExists() {
353353
* BlobContainerCreateOptions options = new BlobContainerCreateOptions&#40;&#41;.setMetadata&#40;metadata&#41;
354354
* .setPublicAccessType&#40;PublicAccessType.CONTAINER&#41;;
355355
*
356-
* Response&lt;Void&gt; response = client.createIfNotExistsWithResponse&#40;options, timeout, context&#41;;
356+
* Response&lt;Boolean&gt; response = client.createIfNotExistsWithResponse&#40;options, timeout, context&#41;;
357357
* if &#40;response.getStatusCode&#40;&#41; == 409&#41; &#123;
358358
* System.out.println&#40;&quot;Already existed.&quot;&#41;;
359359
* &#125; else &#123;
@@ -369,7 +369,7 @@ public boolean createIfNotExists() {
369369
* container was successfully created. If status code is 409, a container already existed at this location.
370370
*/
371371
@ServiceMethod(returns = ReturnType.SINGLE)
372-
public Response<Void> createIfNotExistsWithResponse(BlobContainerCreateOptions options, Duration timeout,
372+
public Response<Boolean> createIfNotExistsWithResponse(BlobContainerCreateOptions options, Duration timeout,
373373
Context context) {
374374
return StorageImplUtils.blockWithOptionalTimeout(client.
375375
createIfNotExistsWithResponse(options, context), timeout);
@@ -449,8 +449,7 @@ public Response<Void> deleteWithResponse(BlobRequestConditions requestConditions
449449
*/
450450
@ServiceMethod(returns = ReturnType.SINGLE)
451451
public boolean deleteIfExists() {
452-
Response<Void> response = deleteIfExistsWithResponse(null, null, Context.NONE);
453-
return response.getStatusCode() == 202;
452+
return deleteIfExistsWithResponse(null, null, Context.NONE).getValue();
454453
}
455454

456455
/**
@@ -467,7 +466,7 @@ public boolean deleteIfExists() {
467466
* .setIfUnmodifiedSince&#40;OffsetDateTime.now&#40;&#41;.minusDays&#40;3&#41;&#41;;
468467
* Context context = new Context&#40;&quot;Key&quot;, &quot;Value&quot;&#41;;
469468
*
470-
* Response&lt;Void&gt; response = client.deleteIfExistsWithResponse&#40;requestConditions, timeout, context&#41;;
469+
* Response&lt;Boolean&gt; response = client.deleteIfExistsWithResponse&#40;requestConditions, timeout, context&#41;;
471470
* if &#40;response.getStatusCode&#40;&#41; == 404&#41; &#123;
472471
* System.out.println&#40;&quot;Does not exist.&quot;&#41;;
473472
* &#125; else &#123;
@@ -483,7 +482,7 @@ public boolean deleteIfExists() {
483482
* was successfully deleted. If status code is 404, the container does not exist.
484483
*/
485484
@ServiceMethod(returns = ReturnType.SINGLE)
486-
public Response<Void> deleteIfExistsWithResponse(BlobRequestConditions requestConditions, Duration timeout,
485+
public Response<Boolean> deleteIfExistsWithResponse(BlobRequestConditions requestConditions, Duration timeout,
487486
Context context) {
488487
return blockWithOptionalTimeout(client.deleteIfExistsWithResponse(requestConditions, context), timeout);
489488
}

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceAsyncClient.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ Mono<Response<Void>> deleteBlobContainerWithResponse(String containerName, Conte
402402
*/
403403
@ServiceMethod(returns = ReturnType.SINGLE)
404404
public Mono<Boolean> deleteBlobContainerIfExists(String containerName) {
405-
return deleteBlobContainerIfExistsWithResponse(containerName).map(response -> response.getStatusCode() != 404);
405+
return deleteBlobContainerIfExistsWithResponse(containerName).flatMap(FluxUtil::toMono);
406406
}
407407

408408
/**
@@ -431,22 +431,23 @@ public Mono<Boolean> deleteBlobContainerIfExists(String containerName) {
431431
*
432432
*/
433433
@ServiceMethod(returns = ReturnType.SINGLE)
434-
public Mono<Response<Void>> deleteBlobContainerIfExistsWithResponse(String containerName) {
434+
public Mono<Response<Boolean>> deleteBlobContainerIfExistsWithResponse(String containerName) {
435435
try {
436436
return withContext(context -> deleteBlobContainerIfExistsWithResponse(containerName, context));
437437
} catch (RuntimeException ex) {
438438
return monoError(LOGGER, ex);
439439
}
440440
}
441441

442-
Mono<Response<Void>> deleteBlobContainerIfExistsWithResponse(String containerName, Context context) {
442+
Mono<Response<Boolean>> deleteBlobContainerIfExistsWithResponse(String containerName, Context context) {
443443
try {
444444
return deleteBlobContainerWithResponse(containerName, context)
445+
.map(response -> (Response<Boolean>) new SimpleResponse<>(response, true))
445446
.onErrorResume(t -> t instanceof BlobStorageException && ((BlobStorageException) t).getStatusCode() == 404,
446447
t -> {
447448
HttpResponse response = ((BlobStorageException) t).getResponse();
448449
return Mono.just(new SimpleResponse<>(response.getRequest(), response.getStatusCode(),
449-
response.getHeaders(), null));
450+
response.getHeaders(), false));
450451
});
451452
} catch (RuntimeException ex) {
452453
return monoError(LOGGER, ex);

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/BlobServiceClient.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -268,8 +268,7 @@ public Response<Void> deleteBlobContainerWithResponse(String containerName, Cont
268268
*/
269269
@ServiceMethod(returns = ReturnType.SINGLE)
270270
public boolean deleteBlobContainerIfExists(String containerName) {
271-
Response<Void> response = deleteBlobContainerIfExistsWithResponse(containerName, Context.NONE);
272-
return response.getStatusCode() == 202;
271+
return deleteBlobContainerIfExistsWithResponse(containerName, Context.NONE).getValue();
273272
}
274273

275274
/**
@@ -283,7 +282,7 @@ public boolean deleteBlobContainerIfExists(String containerName) {
283282
* <pre>
284283
* Context context = new Context&#40;&quot;Key&quot;, &quot;Value&quot;&#41;;
285284
*
286-
* Response&lt;Void&gt; response = client.deleteBlobContainerIfExistsWithResponse&#40;&quot;containerName&quot;, context&#41;;
285+
* Response&lt;Boolean&gt; response = client.deleteBlobContainerIfExistsWithResponse&#40;&quot;containerName&quot;, context&#41;;
287286
* if &#40;response.getStatusCode&#40;&#41; == 404&#41; &#123;
288287
* System.out.println&#40;&quot;Does not exist.&quot;&#41;;
289288
* &#125; else &#123;
@@ -298,7 +297,7 @@ public boolean deleteBlobContainerIfExists(String containerName) {
298297
* container was successfully deleted. If status code is 404, the container does not exist.
299298
*/
300299
@ServiceMethod(returns = ReturnType.SINGLE)
301-
public Response<Void> deleteBlobContainerIfExistsWithResponse(String containerName, Context context) {
300+
public Response<Boolean> deleteBlobContainerIfExistsWithResponse(String containerName, Context context) {
302301
return blobServiceAsyncClient.deleteBlobContainerIfExistsWithResponse(containerName, context).block();
303302
}
304303

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobAsyncClientBase.java

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1717,7 +1717,7 @@ Mono<Response<Void>> deleteWithResponse(DeleteSnapshotsOptionType deleteBlobSnap
17171717
*/
17181718
@ServiceMethod(returns = ReturnType.SINGLE)
17191719
public Mono<Boolean> deleteIfExists() {
1720-
return deleteIfExistsWithResponse(null, null).map(response -> response.getStatusCode() != 404);
1720+
return deleteIfExistsWithResponse(null, null).flatMap(FluxUtil::toMono);
17211721
}
17221722

17231723
/**
@@ -1749,7 +1749,7 @@ public Mono<Boolean> deleteIfExists() {
17491749
* successfully deleted. If status code is 404, the base blob does not exist.
17501750
*/
17511751
@ServiceMethod(returns = ReturnType.SINGLE)
1752-
public Mono<Response<Void>> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
1752+
public Mono<Response<Boolean>> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
17531753
BlobRequestConditions requestConditions) {
17541754
try {
17551755
return withContext(context -> deleteIfExistsWithResponse(deleteBlobSnapshotOptions,
@@ -1759,17 +1759,18 @@ public Mono<Response<Void>> deleteIfExistsWithResponse(DeleteSnapshotsOptionType
17591759
}
17601760
}
17611761

1762-
Mono<Response<Void>> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
1762+
Mono<Response<Boolean>> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
17631763
BlobRequestConditions requestConditions, Context context) {
17641764
requestConditions = requestConditions == null ? new BlobRequestConditions() : requestConditions;
17651765

1766-
return deleteWithResponse(deleteBlobSnapshotOptions, requestConditions, context).onErrorResume(t -> t
1767-
instanceof BlobStorageException && ((BlobStorageException) t).getStatusCode() == 404,
1768-
t -> {
1769-
HttpResponse response = ((BlobStorageException) t).getResponse();
1770-
return Mono.just(new SimpleResponse<>(response.getRequest(), response.getStatusCode(),
1771-
response.getHeaders(), null));
1772-
});
1766+
return deleteWithResponse(deleteBlobSnapshotOptions, requestConditions, context)
1767+
.map(response -> (Response<Boolean>) new SimpleResponse<>(response, true))
1768+
.onErrorResume(t -> t instanceof BlobStorageException && ((BlobStorageException) t).getStatusCode() == 404,
1769+
t -> {
1770+
HttpResponse response = ((BlobStorageException) t).getResponse();
1771+
return Mono.just(new SimpleResponse<>(response.getRequest(), response.getStatusCode(),
1772+
response.getHeaders(), false));
1773+
});
17731774
}
17741775

17751776
/**

sdk/storage/azure-storage-blob/src/main/java/com/azure/storage/blob/specialized/BlobClientBase.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1198,8 +1198,7 @@ public Response<Void> deleteWithResponse(DeleteSnapshotsOptionType deleteBlobSna
11981198
*/
11991199
@ServiceMethod(returns = ReturnType.SINGLE)
12001200
public boolean deleteIfExists() {
1201-
Response<Void> response = deleteIfExistsWithResponse(null, null, null, Context.NONE);
1202-
return response.getStatusCode() == 202;
1201+
return deleteIfExistsWithResponse(null, null, null, Context.NONE).getValue();
12031202
}
12041203

12051204
/**
@@ -1211,7 +1210,7 @@ public boolean deleteIfExists() {
12111210
*
12121211
* <!-- src_embed com.azure.storage.blob.specialized.BlobClientBase.deleteIfExistsWithResponse#DeleteSnapshotsOptionType-BlobRequestConditions-Duration-Context -->
12131212
* <pre>
1214-
* Response&lt;Void&gt; response = client.deleteIfExistsWithResponse&#40;DeleteSnapshotsOptionType.INCLUDE, null, timeout,
1213+
* Response&lt;Boolean&gt; response = client.deleteIfExistsWithResponse&#40;DeleteSnapshotsOptionType.INCLUDE, null, timeout,
12151214
* new Context&#40;key1, value1&#41;&#41;;
12161215
* if &#40;response.getStatusCode&#40;&#41; == 404&#41; &#123;
12171216
* System.out.println&#40;&quot;Does not exist.&quot;&#41;;
@@ -1234,7 +1233,7 @@ public boolean deleteIfExists() {
12341233
* blob was successfully deleted. If status code is 404, the base blob does not exist.
12351234
*/
12361235
@ServiceMethod(returns = ReturnType.SINGLE)
1237-
public Response<Void> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
1236+
public Response<Boolean> deleteIfExistsWithResponse(DeleteSnapshotsOptionType deleteBlobSnapshotOptions,
12381237
BlobRequestConditions requestConditions, Duration timeout, Context context) {
12391238
return blockWithOptionalTimeout(client.deleteIfExistsWithResponse(deleteBlobSnapshotOptions,
12401239
requestConditions, context), timeout);

sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobContainerClientJavaDocCodeSnippets.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -476,7 +476,7 @@ public void createIfNotExistsCodeSnippets() {
476476
BlobContainerCreateOptions options = new BlobContainerCreateOptions().setMetadata(metadata)
477477
.setPublicAccessType(PublicAccessType.CONTAINER);
478478

479-
Response<Void> response = client.createIfNotExistsWithResponse(options, timeout, context);
479+
Response<Boolean> response = client.createIfNotExistsWithResponse(options, timeout, context);
480480
if (response.getStatusCode() == 409) {
481481
System.out.println("Already existed.");
482482
} else {
@@ -501,7 +501,7 @@ public void deleteIfExistsCodeSnippets() {
501501
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
502502
Context context = new Context("Key", "Value");
503503

504-
Response<Void> response = client.deleteIfExistsWithResponse(requestConditions, timeout, context);
504+
Response<Boolean> response = client.deleteIfExistsWithResponse(requestConditions, timeout, context);
505505
if (response.getStatusCode() == 404) {
506506
System.out.println("Does not exist.");
507507
} else {

sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/BlobServiceClientJavaDocCodeSnippets.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,7 @@ public void deleteContainerIfExistsCodeSnippets() {
380380
// BEGIN: com.azure.storage.blob.BlobServiceClient.deleteBlobContainerIfExistsWithResponse#String-Context
381381
Context context = new Context("Key", "Value");
382382

383-
Response<Void> response = client.deleteBlobContainerIfExistsWithResponse("containerName", context);
383+
Response<Boolean> response = client.deleteBlobContainerIfExistsWithResponse("containerName", context);
384384
if (response.getStatusCode() == 404) {
385385
System.out.println("Does not exist.");
386386
} else {

sdk/storage/azure-storage-blob/src/samples/java/com/azure/storage/blob/specialized/BlobClientBaseJavaDocCodeSnippets.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -776,7 +776,7 @@ public void deleteIfExistsCodeSnippets() {
776776
// END: com.azure.storage.blob.specialized.BlobClientBase.deleteIfExists
777777

778778
// BEGIN: com.azure.storage.blob.specialized.BlobClientBase.deleteIfExistsWithResponse#DeleteSnapshotsOptionType-BlobRequestConditions-Duration-Context
779-
Response<Void> response = client.deleteIfExistsWithResponse(DeleteSnapshotsOptionType.INCLUDE, null, timeout,
779+
Response<Boolean> response = client.deleteIfExistsWithResponse(DeleteSnapshotsOptionType.INCLUDE, null, timeout,
780780
new Context(key1, value1));
781781
if (response.getStatusCode() == 404) {
782782
System.out.println("Does not exist.");

sdk/storage/azure-storage-blob/src/test/java/com/azure/storage/blob/BlobAPITest.groovy

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2834,6 +2834,7 @@ class BlobAPITest extends APISpec {
28342834
def headers = response.getHeaders()
28352835

28362836
then:
2837+
response.getValue()
28372838
response.getStatusCode() == 202
28382839
headers.getValue("x-ms-request-id") != null
28392840
headers.getValue("x-ms-version") != null
@@ -2853,6 +2854,7 @@ class BlobAPITest extends APISpec {
28532854
def response = bc.deleteIfExistsWithResponse(null, null, null, null)
28542855

28552856
then:
2857+
!response.getValue()
28562858
response.getStatusCode() == 404
28572859
}
28582860

@@ -2862,7 +2864,9 @@ class BlobAPITest extends APISpec {
28622864
def secondResponse = bc.deleteIfExistsWithResponse(null, null, null, null)
28632865

28642866
then:
2867+
initialResponse.getValue()
28652868
initialResponse.getStatusCode() == 202
2869+
!secondResponse.getValue()
28662870
secondResponse.getStatusCode() == 404
28672871

28682872
}

0 commit comments

Comments
 (0)