PostProcessor.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.storage.file;
import com.azure.storage.common.Utility;
import com.azure.storage.file.models.StorageErrorException;
import com.azure.storage.file.models.StorageException;
import reactor.core.publisher.Mono;
final class PostProcessor {
static <T> Mono<T> postProcessResponse(Mono<T> response) {
return Utility.postProcessResponse(response, (errorResponse) ->
errorResponse.onErrorResume(StorageErrorException.class, resume ->
resume.getResponse()
.getBodyAsString()
.switchIfEmpty(Mono.just(""))
.flatMap(body -> Mono.error(new StorageException(resume, body)))
));
}
private PostProcessor() {
}
}