From 5e5bf7f518b063f71445d866a9e322f7de1f7c47 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Tue, 16 Feb 2016 13:57:08 +0100 Subject: [PATCH] Polishing --- .../client/OkHttpAsyncClientHttpRequest.java | 9 ++--- .../http/client/OkHttpClientHttpRequest.java | 8 ++--- .../OkHttpClientHttpRequestFactory.java | 33 ++++++++++--------- 3 files changed, 23 insertions(+), 27 deletions(-) diff --git a/spring-web/src/main/java/org/springframework/http/client/OkHttpAsyncClientHttpRequest.java b/spring-web/src/main/java/org/springframework/http/client/OkHttpAsyncClientHttpRequest.java index 0e3f836f2f..238495c2e7 100644 --- a/spring-web/src/main/java/org/springframework/http/client/OkHttpAsyncClientHttpRequest.java +++ b/spring-web/src/main/java/org/springframework/http/client/OkHttpAsyncClientHttpRequest.java @@ -69,14 +69,12 @@ class OkHttpAsyncClientHttpRequest extends AbstractBufferingAsyncClientHttpReque protected ListenableFuture executeInternal(HttpHeaders headers, byte[] content) throws IOException { - Request request = OkHttpClientHttpRequestFactory - .buildRequest(headers, content, this.uri, this.method); - + Request request = OkHttpClientHttpRequestFactory.buildRequest(headers, content, this.uri, this.method); return new OkHttpListenableFuture(this.client.newCall(request)); } - private static class OkHttpListenableFuture - extends SettableListenableFuture { + + private static class OkHttpListenableFuture extends SettableListenableFuture { private final Call call; @@ -87,7 +85,6 @@ class OkHttpAsyncClientHttpRequest extends AbstractBufferingAsyncClientHttpReque public void onResponse(Response response) { set(new OkHttpClientHttpResponse(response)); } - @Override public void onFailure(Request request, IOException ex) { setException(ex); diff --git a/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequest.java b/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequest.java index 538a3fe76d..7c264f350d 100644 --- a/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequest.java +++ b/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequest.java @@ -62,12 +62,8 @@ class OkHttpClientHttpRequest extends AbstractBufferingClientHttpRequest { @Override - protected ClientHttpResponse executeInternal(HttpHeaders headers, byte[] content) - throws IOException { - - Request request = OkHttpClientHttpRequestFactory - .buildRequest(headers, content, this.uri, this.method); - + protected ClientHttpResponse executeInternal(HttpHeaders headers, byte[] content) throws IOException { + Request request = OkHttpClientHttpRequestFactory.buildRequest(headers, content, this.uri, this.method); return new OkHttpClientHttpResponse(this.client.newCall(request).execute()); } diff --git a/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequestFactory.java b/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequestFactory.java index 96ed87e6ba..5148ebb0a7 100644 --- a/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequestFactory.java +++ b/spring-web/src/main/java/org/springframework/http/client/OkHttpClientHttpRequestFactory.java @@ -16,6 +16,7 @@ package org.springframework.http.client; +import java.io.IOException; import java.net.MalformedURLException; import java.net.URI; import java.net.URL; @@ -62,7 +63,7 @@ public class OkHttpClientHttpRequestFactory * @param client the client to use */ public OkHttpClientHttpRequestFactory(OkHttpClient client) { - Assert.notNull(client, "'client' must not be null"); + Assert.notNull(client, "OkHttpClient must not be null"); this.client = client; this.defaultClient = false; } @@ -106,11 +107,24 @@ public class OkHttpClientHttpRequestFactory return new OkHttpAsyncClientHttpRequest(this.client, uri, httpMethod); } + + @Override + public void destroy() throws IOException { + if (this.defaultClient) { + // Clean up the client if we created it in the constructor + if (this.client.getCache() != null) { + this.client.getCache().close(); + } + this.client.getDispatcher().getExecutorService().shutdown(); + } + } + + static Request buildRequest(HttpHeaders headers, byte[] content, URI uri, HttpMethod method) throws MalformedURLException { + com.squareup.okhttp.MediaType contentType = getContentType(headers); - RequestBody body = - (content.length > 0 ? RequestBody.create(contentType, content) : null); + RequestBody body = (content.length > 0 ? RequestBody.create(contentType, content) : null); URL url = uri.toURL(); String methodName = method.name(); @@ -122,6 +136,7 @@ public class OkHttpClientHttpRequestFactory builder.addHeader(headerName, headerValue); } } + return builder.build(); } @@ -131,16 +146,4 @@ public class OkHttpClientHttpRequestFactory com.squareup.okhttp.MediaType.parse(rawContentType) : null); } - - @Override - public void destroy() throws Exception { - if (this.defaultClient) { - // Clean up the client if we created it in the constructor - if (this.client.getCache() != null) { - this.client.getCache().close(); - } - this.client.getDispatcher().getExecutorService().shutdown(); - } - } - }