< prev index next >
src/java.httpclient/share/classes/java/net/http/MultiExchange.java
Print this page
@@ -185,12 +185,11 @@
}
public CompletableFuture<HttpResponseImpl> responseAsync(Void v) {
CompletableFuture<HttpResponseImpl> cf;
if (++attempts > max_attempts) {
- cf = new CompletableFuture<>();
- cf.completeExceptionally(new IOException("Too many retries"));
+ cf = CompletableFuture.failedFuture(new IOException("Too many retries"));
} else {
if (currentreq.timeval() != 0) {
// set timer
td = new TimedEvent(currentreq.timeval());
client.registerTimer(td);
@@ -239,21 +238,19 @@
/**
* Take a Throwable and return a suitable CompletableFuture that is
* completed exceptionally.
*/
private CompletableFuture<HttpResponseImpl> getExceptionalCF(Throwable t) {
- CompletableFuture<HttpResponseImpl> error = new CompletableFuture<>();
if ((t instanceof CompletionException) || (t instanceof ExecutionException)) {
if (t.getCause() != null) {
t = t.getCause();
}
}
if (cancelled && t instanceof IOException) {
t = new HttpTimeoutException("request timed out");
}
- error.completeExceptionally(t);
- return error;
+ return CompletableFuture.failedFuture(t);
}
<T> T responseBody(HttpResponse.BodyProcessor<T> processor) {
return getExchange().responseBody(processor);
}
< prev index next >