public CompletableFuture<BlobProperties> getPropertiesWithResponse(BlobId blobId,
      BlobRequestConditions requestConditions) {
    return FutureUtils.retry(() -> getBlockBlobAsyncClient(blobId, false).getPropertiesWithResponse(requestConditions)
        .toFuture()
        .thenApply(Response::getValue), retries, retryPredicate, this::onRetriableError, this::onError);
  }
Returns the blob's metadata and properties.
@param blobId {@link BlobId}
@param requestConditions {@link BlobRequestConditions}
@return a {@link CompletableFuture} that will eventually contain blob properties and metadata or an exception
        if an error occurred.
ambry-cloud/src/main/java/com/github/ambry/cloud/azure/StorageClient.java