(HttpClient httpClient, URI uri, String vaasRequestId)
| 118 | } |
| 119 | |
| 120 | private CompletableFuture<VaasVerdict> sendUrlWithRetry(HttpClient httpClient, URI uri, String vaasRequestId) { |
| 121 | return createHttpRequestBuilderWithHeaders(uri, vaasRequestId).thenCompose(request -> |
| 122 | httpClient.sendAsync(request.build(), HttpResponse.BodyHandlers.ofString()) |
| 123 | .thenCompose(handleException(response -> switch (response.statusCode()) { |
| 124 | case 200 -> { |
| 125 | var urlReport = UrlReport.fromJson(response.body()); |
| 126 | yield CompletableFuture.completedFuture(VaasVerdict.From(urlReport)); |
| 127 | } |
| 128 | case 201, 202 -> sendUrlWithRetry(httpClient, uri, vaasRequestId); |
| 129 | default -> { |
| 130 | throwParsedVaasError(response); |
| 131 | throw new Exception("Unreachable"); |
| 132 | } |
| 133 | })) |
| 134 | ); |
| 135 | } |
| 136 | |
| 137 | private CompletableFuture<VaasVerdict> sendFileWithRetry(HttpClient httpClient, URI uri, String vaasRequestId) { |
| 138 | return createHttpRequestBuilderWithHeaders(uri, vaasRequestId).thenCompose(request -> |
no test coverage detected