diff --git a/src/main/java/com/nmote/oembed/AbstractOEmbedProvider.java b/src/main/java/com/nmote/oembed/AbstractOEmbedProvider.java index 8205869..3376cf4 100644 --- a/src/main/java/com/nmote/oembed/AbstractOEmbedProvider.java +++ b/src/main/java/com/nmote/oembed/AbstractOEmbedProvider.java @@ -57,16 +57,17 @@ public AbstractOEmbedProvider(OkHttpClient httpClient, ObjectMapper mapper) { */ public T get(String url, final Class embedClass) throws IOException { Request request = new Request.Builder().url(url).build(); - Response response = httpClient.newCall(request).execute(); - if (response.isSuccessful()) { - try (InputStream in = response.body().byteStream()) { - T result = mapper.readValue(in, embedClass); - checkEmbedForErrors(result); - return result; + try (Response response = httpClient.newCall(request).execute()) { // auto-close response + if (response.isSuccessful()) { + try (InputStream in = response.body().byteStream()) { + T result = mapper.readValue(in, embedClass); + checkEmbedForErrors(result); + return result; + } + } else { + throw new IOException( + String.format("HTTP %d/%s while getting %s", response.code(), response.message(), url)); } - } else { - throw new IOException( - String.format("HTTP %d/%s while getting %s", response.code(), response.message(), url)); } }