diff --git a/okhttp-android-support/src/main/java/okhttp3/internal/huc/CacheAdapter.java b/okhttp-android-support/src/main/java/okhttp3/internal/huc/CacheAdapter.java index 65d6197fc..5bca95b93 100644 --- a/okhttp-android-support/src/main/java/okhttp3/internal/huc/CacheAdapter.java +++ b/okhttp-android-support/src/main/java/okhttp3/internal/huc/CacheAdapter.java @@ -78,7 +78,7 @@ public final class CacheAdapter implements InternalCache { // cacheable or the client should be careful about caching it. } - @Override public void update(Response cached, Response network) throws IOException { + @Override public void update(Response cached, Response network) { // This method is treated as optional and there is no obvious way of implementing it with // ResponseCache. Updating headers is useful if the server changes the metadata for a resource // (e.g. max age) to extend or truncate the life of that resource in the cache. If the metadata diff --git a/okhttp-apache/src/main/java/okhttp3/apache/OkApacheClient.java b/okhttp-apache/src/main/java/okhttp3/apache/OkApacheClient.java index a1af89f86..c95bd710c 100644 --- a/okhttp-apache/src/main/java/okhttp3/apache/OkApacheClient.java +++ b/okhttp-apache/src/main/java/okhttp3/apache/OkApacheClient.java @@ -74,7 +74,7 @@ public final class OkApacheClient implements HttpClient { return builder.build(); } - private static HttpResponse transformResponse(Response response) throws IOException { + private static HttpResponse transformResponse(Response response) { int code = response.code(); String message = response.message(); BasicHttpResponse httpResponse = new BasicHttpResponse(HTTP_1_1, code, message); diff --git a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.java b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.java index cf9c686fd..061aa787f 100644 --- a/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.java +++ b/okhttp-logging-interceptor/src/main/java/okhttp3/logging/HttpLoggingInterceptor.java @@ -274,7 +274,7 @@ public final class HttpLoggingInterceptor implements Interceptor { * Returns true if the body in question probably contains human readable text. Uses a small sample * of code points to detect unicode control characters commonly used in binary file signatures. */ - static boolean isPlaintext(Buffer buffer) throws EOFException { + static boolean isPlaintext(Buffer buffer) { try { Buffer prefix = new Buffer(); long byteCount = buffer.size() < 64 ? buffer.size() : 64; diff --git a/okhttp-tests/src/test/java/okhttp3/DelegatingSocketFactory.java b/okhttp-tests/src/test/java/okhttp3/DelegatingSocketFactory.java index d21f37a31..33ac2f4e1 100644 --- a/okhttp-tests/src/test/java/okhttp3/DelegatingSocketFactory.java +++ b/okhttp-tests/src/test/java/okhttp3/DelegatingSocketFactory.java @@ -18,7 +18,6 @@ package okhttp3; import java.io.IOException; import java.net.InetAddress; import java.net.Socket; -import java.net.UnknownHostException; import javax.net.SocketFactory; /** @@ -26,41 +25,35 @@ import javax.net.SocketFactory; * overriding {@link #configureSocket(java.net.Socket)}. */ public class DelegatingSocketFactory extends SocketFactory { - private final SocketFactory delegate; public DelegatingSocketFactory(SocketFactory delegate) { this.delegate = delegate; } - @Override - public Socket createSocket() throws IOException { + @Override public Socket createSocket() throws IOException { Socket socket = delegate.createSocket(); return configureSocket(socket); } - @Override - public Socket createSocket(String host, int port) throws IOException, UnknownHostException { + @Override public Socket createSocket(String host, int port) throws IOException { Socket socket = delegate.createSocket(host, port); return configureSocket(socket); } - @Override - public Socket createSocket(String host, int port, InetAddress localAddress, int localPort) - throws IOException, UnknownHostException { + @Override public Socket createSocket(String host, int port, InetAddress localAddress, + int localPort) throws IOException { Socket socket = delegate.createSocket(host, port, localAddress, localPort); return configureSocket(socket); } - @Override - public Socket createSocket(InetAddress host, int port) throws IOException { + @Override public Socket createSocket(InetAddress host, int port) throws IOException { Socket socket = delegate.createSocket(host, port); return configureSocket(socket); } - @Override - public Socket createSocket(InetAddress host, int port, InetAddress localAddress, int localPort) - throws IOException { + @Override public Socket createSocket(InetAddress host, int port, InetAddress localAddress, + int localPort) throws IOException { Socket socket = delegate.createSocket(host, port, localAddress, localPort); return configureSocket(socket); } diff --git a/okhttp-tests/src/test/java/okhttp3/FallbackTestClientSocketFactory.java b/okhttp-tests/src/test/java/okhttp3/FallbackTestClientSocketFactory.java index eb9aaaa2d..d829566e2 100644 --- a/okhttp-tests/src/test/java/okhttp3/FallbackTestClientSocketFactory.java +++ b/okhttp-tests/src/test/java/okhttp3/FallbackTestClientSocketFactory.java @@ -49,7 +49,7 @@ public class FallbackTestClientSocketFactory extends DelegatingSSLSocketFactory } @Override public void setEnabledCipherSuites(String[] suites) { - List enabledCipherSuites = new ArrayList(suites.length); + List enabledCipherSuites = new ArrayList<>(suites.length); for (String suite : suites) { if (!suite.equals(TLS_FALLBACK_SCSV)) { enabledCipherSuites.add(suite); diff --git a/okhttp-tests/src/test/java/okhttp3/URLConnectionTest.java b/okhttp-tests/src/test/java/okhttp3/URLConnectionTest.java index 2abdacdf9..bc653ff2b 100644 --- a/okhttp-tests/src/test/java/okhttp3/URLConnectionTest.java +++ b/okhttp-tests/src/test/java/okhttp3/URLConnectionTest.java @@ -2094,7 +2094,7 @@ public final class URLConnectionTest { } @Test public void redirectWithProxySelector() throws Exception { - final List proxySelectionRequests = new ArrayList(); + final List proxySelectionRequests = new ArrayList<>(); urlFactory.setClient(urlFactory.client().newBuilder() .proxySelector(new ProxySelector() { @Override public List select(URI uri) { @@ -3680,7 +3680,7 @@ public final class URLConnectionTest { } private static class RecordingTrustManager implements X509TrustManager { - private final List calls = new ArrayList(); + private final List calls = new ArrayList<>(); private final X509TrustManager delegate; public RecordingTrustManager(X509TrustManager delegate) { @@ -3702,7 +3702,7 @@ public final class URLConnectionTest { } private String certificatesToString(X509Certificate[] certificates) { - List result = new ArrayList(); + List result = new ArrayList<>(); for (X509Certificate certificate : certificates) { result.add(certificate.getSubjectDN() + " " + certificate.getSerialNumber()); } diff --git a/okhttp-tests/src/test/java/okhttp3/internal/platform/OptionalMethodTest.java b/okhttp-tests/src/test/java/okhttp3/internal/platform/OptionalMethodTest.java index e6c51fad6..82ac18fc1 100644 --- a/okhttp-tests/src/test/java/okhttp3/internal/platform/OptionalMethodTest.java +++ b/okhttp-tests/src/test/java/okhttp3/internal/platform/OptionalMethodTest.java @@ -75,32 +75,32 @@ public class OptionalMethodTest { } private final static OptionalMethod STRING_METHOD_RETURNS_ANY = - new OptionalMethod(null, "stringMethod"); + new OptionalMethod<>(null, "stringMethod"); private final static OptionalMethod STRING_METHOD_RETURNS_STRING = - new OptionalMethod(String.class, "stringMethod"); + new OptionalMethod<>(String.class, "stringMethod"); private final static OptionalMethod STRING_METHOD_RETURNS_INT = - new OptionalMethod(Integer.TYPE, "stringMethod"); + new OptionalMethod<>(Integer.TYPE, "stringMethod"); private final static OptionalMethod VOID_METHOD_RETURNS_ANY = - new OptionalMethod(null, "voidMethod"); + new OptionalMethod<>(null, "voidMethod"); private final static OptionalMethod VOID_METHOD_RETURNS_VOID = - new OptionalMethod(Void.TYPE, "voidMethod"); + new OptionalMethod<>(Void.TYPE, "voidMethod"); private final static OptionalMethod SUBCLASS_METHOD_RETURNS_ANY = - new OptionalMethod(null, "subclassMethod"); + new OptionalMethod<>(null, "subclassMethod"); private final static OptionalMethod SUBCLASS_METHOD_RETURNS_STRING = - new OptionalMethod(String.class, "subclassMethod"); + new OptionalMethod<>(String.class, "subclassMethod"); private final static OptionalMethod SUBCLASS_METHOD_RETURNS_INT = - new OptionalMethod(Integer.TYPE, "subclassMethod"); + new OptionalMethod<>(Integer.TYPE, "subclassMethod"); private final static OptionalMethod METHOD_WITH_ARGS_WRONG_PARAMS = - new OptionalMethod(null, "methodWithArgs", Integer.class); + new OptionalMethod<>(null, "methodWithArgs", Integer.class); private final static OptionalMethod METHOD_WITH_ARGS_CORRECT_PARAMS = - new OptionalMethod(null, "methodWithArgs", String.class); + new OptionalMethod<>(null, "methodWithArgs", String.class); private final static OptionalMethod THROWS_EXCEPTION = - new OptionalMethod(null, "throwsException"); + new OptionalMethod<>(null, "throwsException"); private final static OptionalMethod THROWS_RUNTIME_EXCEPTION = - new OptionalMethod(null, "throwsRuntimeException"); + new OptionalMethod<>(null, "throwsRuntimeException"); private final static OptionalMethod NON_PUBLIC = - new OptionalMethod(null, "nonPublic"); + new OptionalMethod<>(null, "nonPublic"); @Test public void isSupported() throws Exception { diff --git a/okhttp-urlconnection/src/main/java/okhttp3/internal/huc/OkHttpURLConnection.java b/okhttp-urlconnection/src/main/java/okhttp3/internal/huc/OkHttpURLConnection.java index a7632c814..b67ea730b 100644 --- a/okhttp-urlconnection/src/main/java/okhttp3/internal/huc/OkHttpURLConnection.java +++ b/okhttp-urlconnection/src/main/java/okhttp3/internal/huc/OkHttpURLConnection.java @@ -593,8 +593,6 @@ public final class OkHttpURLConnection extends HttpURLConnection implements Call @Override public Response intercept(Chain chain) throws IOException { try { return chain.proceed(chain.request()); - } catch (IOException e) { - throw e; } catch (Error | RuntimeException e) { throw new UnexpectedException(e); } diff --git a/okhttp-urlconnection/src/test/java/okhttp3/internal/huc/URLEncodingTest.java b/okhttp-urlconnection/src/test/java/okhttp3/internal/huc/URLEncodingTest.java index b93d87682..ec0de83e5 100644 --- a/okhttp-urlconnection/src/test/java/okhttp3/internal/huc/URLEncodingTest.java +++ b/okhttp-urlconnection/src/test/java/okhttp3/internal/huc/URLEncodingTest.java @@ -137,7 +137,7 @@ public final class URLEncodingTest { @Override public void remove(Request request) throws IOException { } - @Override public void update(Response cached, Response network) throws IOException { + @Override public void update(Response cached, Response network) { } @Override public void trackConditionalCacheHit() { diff --git a/okhttp/src/main/java/okhttp3/Cache.java b/okhttp/src/main/java/okhttp3/Cache.java index d70ac4320..2f8a9c240 100644 --- a/okhttp/src/main/java/okhttp3/Cache.java +++ b/okhttp/src/main/java/okhttp3/Cache.java @@ -152,7 +152,7 @@ public final class Cache implements Closeable, Flushable { Cache.this.remove(request); } - @Override public void update(Response cached, Response network) throws IOException { + @Override public void update(Response cached, Response network) { Cache.this.update(cached, network); } @@ -217,7 +217,7 @@ public final class Cache implements Closeable, Flushable { return response; } - private CacheRequest put(Response response) throws IOException { + private CacheRequest put(Response response) { String requestMethod = response.request().method(); if (HttpMethod.invalidatesCache(response.request().method())) { @@ -432,7 +432,7 @@ public final class Cache implements Closeable, Flushable { private boolean done; private Sink body; - public CacheRequestImpl(final DiskLruCache.Editor editor) throws IOException { + public CacheRequestImpl(final DiskLruCache.Editor editor) { this.editor = editor; this.cacheOut = editor.newSink(ENTRY_BODY); this.body = new ForwardingSink(cacheOut) { diff --git a/okhttp/src/main/java/okhttp3/CipherSuite.java b/okhttp/src/main/java/okhttp3/CipherSuite.java index ef51db32c..3b7cc1f48 100644 --- a/okhttp/src/main/java/okhttp3/CipherSuite.java +++ b/okhttp/src/main/java/okhttp3/CipherSuite.java @@ -359,7 +359,6 @@ public final class CipherSuite { // public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_256_CCM = of("TLS_ECDHE_ECDSA_WITH_AES_256_CCM", 0xc0ad, 7251, MAX_VALUE, MAX_VALUE); // public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 = of("TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8", 0xc0ae, 7251, MAX_VALUE, MAX_VALUE); // public static final CipherSuite TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8 = of("TLS_ECDHE_ECDSA_WITH_AES_256_CCM_8", 0xc0af, 7251, MAX_VALUE, MAX_VALUE); - ; final String javaName; diff --git a/okhttp/src/main/java/okhttp3/internal/Util.java b/okhttp/src/main/java/okhttp3/internal/Util.java index 0d7211640..a80f48236 100644 --- a/okhttp/src/main/java/okhttp3/internal/Util.java +++ b/okhttp/src/main/java/okhttp3/internal/Util.java @@ -29,10 +29,8 @@ import java.security.NoSuchAlgorithmException; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; -import java.util.LinkedHashMap; import java.util.List; import java.util.Locale; -import java.util.Map; import java.util.TimeZone; import java.util.concurrent.ThreadFactory; import java.util.concurrent.TimeUnit; @@ -244,11 +242,6 @@ public final class Util { return Collections.unmodifiableList(Arrays.asList(elements.clone())); } - /** Returns an immutable copy of {@code map}. */ - public static Map immutableMap(Map map) { - return Collections.unmodifiableMap(new LinkedHashMap<>(map)); - } - public static ThreadFactory threadFactory(final String name, final boolean daemon) { return new ThreadFactory() { @Override public Thread newThread(Runnable runnable) { diff --git a/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.java b/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.java index 424db32b3..6ec47ed64 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.java +++ b/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.java @@ -258,7 +258,7 @@ public final class CacheInterceptor implements Interceptor { } /** Combines cached headers with a network headers as defined by RFC 2616, 13.5.3. */ - private static Headers combine(Headers cachedHeaders, Headers networkHeaders) throws IOException { + private static Headers combine(Headers cachedHeaders, Headers networkHeaders) { Headers.Builder result = new Headers.Builder(); for (int i = 0, size = cachedHeaders.size(); i < size; i++) { diff --git a/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.java b/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.java index 4165d9e74..8b7b7f2a0 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.java +++ b/okhttp/src/main/java/okhttp3/internal/cache/DiskLruCache.java @@ -872,7 +872,7 @@ public final class DiskLruCache implements Closeable, Flushable { * Returns an unbuffered input stream to read the last committed value, or null if no value has * been committed. */ - public Source newSource(int index) throws IOException { + public Source newSource(int index) { synchronized (DiskLruCache.this) { if (done) { throw new IllegalStateException(); @@ -893,7 +893,7 @@ public final class DiskLruCache implements Closeable, Flushable { * output stream encounters errors when writing to the filesystem, this edit will be aborted * when {@link #commit} is called. The returned output stream does not throw IOExceptions. */ - public Sink newSink(int index) throws IOException { + public Sink newSink(int index) { synchronized (DiskLruCache.this) { if (done) { throw new IllegalStateException(); diff --git a/okhttp/src/main/java/okhttp3/internal/cache/InternalCache.java b/okhttp/src/main/java/okhttp3/internal/cache/InternalCache.java index e68edbf6e..6c70465b5 100644 --- a/okhttp/src/main/java/okhttp3/internal/cache/InternalCache.java +++ b/okhttp/src/main/java/okhttp3/internal/cache/InternalCache.java @@ -39,7 +39,7 @@ public interface InternalCache { * {@code network}. The cached response body is not updated. If the stored response has changed * since {@code cached} was returned, this does nothing. */ - void update(Response cached, Response network) throws IOException; + void update(Response cached, Response network); /** Track an conditional GET that was satisfied by this cache. */ void trackConditionalCacheHit(); diff --git a/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.java b/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.java index c21931b60..e2d99431e 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.java +++ b/okhttp/src/main/java/okhttp3/internal/connection/RealConnection.java @@ -145,7 +145,7 @@ public final class RealConnection extends FramedConnection.Listener implements C throw new ProtocolException("Too many tunnel connections attempted: " + maxAttempts); } - connectSocket(connectTimeout, readTimeout, writeTimeout, connectionSpecSelector); + connectSocket(connectTimeout, readTimeout); tunnelRequest = createTunnel(readTimeout, writeTimeout, tunnelRequest, url); if (tunnelRequest == null) break; // Tunnel successfully created. @@ -164,12 +164,11 @@ public final class RealConnection extends FramedConnection.Listener implements C /** Does all the work necessary to build a full HTTP or HTTPS connection on a raw socket. */ private void buildConnection(int connectTimeout, int readTimeout, int writeTimeout, ConnectionSpecSelector connectionSpecSelector) throws IOException { - connectSocket(connectTimeout, readTimeout, writeTimeout, connectionSpecSelector); + connectSocket(connectTimeout, readTimeout); establishProtocol(readTimeout, writeTimeout, connectionSpecSelector); } - private void connectSocket(int connectTimeout, int readTimeout, int writeTimeout, - ConnectionSpecSelector connectionSpecSelector) throws IOException { + private void connectSocket(int connectTimeout, int readTimeout) throws IOException { Proxy proxy = route.proxy(); Address address = route.address(); @@ -331,7 +330,7 @@ public final class RealConnection extends FramedConnection.Listener implements C * is sent unencrypted to the proxy server, so tunnels include only the minimum set of headers. * This avoids sending potentially sensitive data like HTTP cookies to the proxy unencrypted. */ - private Request createTunnelRequest() throws IOException { + private Request createTunnelRequest() { return new Request.Builder() .url(route.address().url()) .header("Host", Util.hostHeader(route.address().url(), true)) @@ -340,11 +339,6 @@ public final class RealConnection extends FramedConnection.Listener implements C .build(); } - /** Returns true if {@link #connect} has been attempted on this connection. */ - boolean isConnected() { - return protocol != null; - } - @Override public Route route() { return route; } diff --git a/okhttp/src/main/java/okhttp3/internal/connection/StreamAllocation.java b/okhttp/src/main/java/okhttp3/internal/connection/StreamAllocation.java index 92d421b66..8294f5699 100644 --- a/okhttp/src/main/java/okhttp3/internal/connection/StreamAllocation.java +++ b/okhttp/src/main/java/okhttp3/internal/connection/StreamAllocation.java @@ -88,8 +88,7 @@ public final class StreamAllocation { this.routeSelector = new RouteSelector(address, routeDatabase()); } - public HttpStream newStream(OkHttpClient client, boolean doExtensiveHealthChecks) - throws IOException { + public HttpStream newStream(OkHttpClient client, boolean doExtensiveHealthChecks) { int connectTimeout = client.connectTimeoutMillis(); int readTimeout = client.readTimeoutMillis(); int writeTimeout = client.writeTimeoutMillis(); diff --git a/okhttp/src/main/java/okhttp3/internal/framed/ErrorCode.java b/okhttp/src/main/java/okhttp3/internal/framed/ErrorCode.java index 1142319d7..1088f6736 100644 --- a/okhttp/src/main/java/okhttp3/internal/framed/ErrorCode.java +++ b/okhttp/src/main/java/okhttp3/internal/framed/ErrorCode.java @@ -62,7 +62,7 @@ public enum ErrorCode { public final int spdyRstCode; public final int spdyGoAwayCode; - private ErrorCode(int httpCode, int spdyRstCode, int spdyGoAwayCode) { + ErrorCode(int httpCode, int spdyRstCode, int spdyGoAwayCode) { this.httpCode = httpCode; this.spdyRstCode = spdyRstCode; this.spdyGoAwayCode = spdyGoAwayCode; diff --git a/okhttp/src/main/java/okhttp3/internal/framed/FramedConnection.java b/okhttp/src/main/java/okhttp3/internal/framed/FramedConnection.java index 3bdd7b351..68f354c7e 100644 --- a/okhttp/src/main/java/okhttp3/internal/framed/FramedConnection.java +++ b/okhttp/src/main/java/okhttp3/internal/framed/FramedConnection.java @@ -126,7 +126,7 @@ public final class FramedConnection implements Closeable { // Visible for testing final Reader readerRunnable; - private FramedConnection(Builder builder) throws IOException { + private FramedConnection(Builder builder) { protocol = builder.protocol; pushObserver = builder.pushObserver; client = builder.client; @@ -529,7 +529,7 @@ public final class FramedConnection implements Closeable { * @param client true if this peer initiated the connection; false if this peer accepted the * connection. */ - public Builder(boolean client) throws IOException { + public Builder(boolean client) { this.client = client; } diff --git a/okhttp/src/main/java/okhttp3/internal/framed/Hpack.java b/okhttp/src/main/java/okhttp3/internal/framed/Hpack.java index 793f7b93a..f159cd62d 100644 --- a/okhttp/src/main/java/okhttp3/internal/framed/Hpack.java +++ b/okhttp/src/main/java/okhttp3/internal/framed/Hpack.java @@ -371,8 +371,7 @@ final class Hpack { private static final int SETTINGS_HEADER_TABLE_SIZE = 4096; private final Buffer out; - private final Map headerStringToDynamicIndex = - new LinkedHashMap(); + private final Map headerStringToDynamicIndex = new LinkedHashMap<>(); private int headerTableSizeSetting; private int maxDynamicTableByteCount; @@ -494,7 +493,7 @@ final class Hpack { } // http://tools.ietf.org/html/draft-ietf-httpbis-header-compression-12#section-4.1.1 - void writeInt(int value, int prefixMask, int bits) throws IOException { + void writeInt(int value, int prefixMask, int bits) { // Write the raw value for a single byte value. if (value < prefixMask) { out.writeByte(bits | value); diff --git a/okhttp/src/main/java/okhttp3/internal/framed/Huffman.java b/okhttp/src/main/java/okhttp3/internal/framed/Huffman.java index 0c7f3012a..ac6ac49a9 100644 --- a/okhttp/src/main/java/okhttp3/internal/framed/Huffman.java +++ b/okhttp/src/main/java/okhttp3/internal/framed/Huffman.java @@ -124,7 +124,7 @@ class Huffman { return (int) ((len + 7) >> 3); } - byte[] decode(byte[] buf) throws IOException { + byte[] decode(byte[] buf) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); Node node = root; int current = 0; diff --git a/okhttp/src/main/java/okhttp3/internal/http/Http1xStream.java b/okhttp/src/main/java/okhttp3/internal/http/Http1xStream.java index e29a91a19..2ca436a30 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/Http1xStream.java +++ b/okhttp/src/main/java/okhttp3/internal/http/Http1xStream.java @@ -87,7 +87,7 @@ public final class Http1xStream implements HttpStream { this.sink = sink; } - @Override public Sink createRequestBody(Request request, long contentLength) throws IOException { + @Override public Sink createRequestBody(Request request, long contentLength) { if ("chunked".equalsIgnoreCase(request.header("Transfer-Encoding"))) { // Stream a request body of unknown length. return newChunkedSink(); diff --git a/okhttp/src/main/java/okhttp3/internal/http/Http2xStream.java b/okhttp/src/main/java/okhttp3/internal/http/Http2xStream.java index fc989f058..ff1adcdbe 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/Http2xStream.java +++ b/okhttp/src/main/java/okhttp3/internal/http/Http2xStream.java @@ -119,7 +119,7 @@ public final class Http2xStream implements HttpStream { this.framedConnection = framedConnection; } - @Override public Sink createRequestBody(Request request, long contentLength) throws IOException { + @Override public Sink createRequestBody(Request request, long contentLength) { return stream.getSink(); } diff --git a/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.java b/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.java index 5207c996b..6c68bf9fe 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.java +++ b/okhttp/src/main/java/okhttp3/internal/http/HttpHeaders.java @@ -38,10 +38,6 @@ public final class HttpHeaders { private HttpHeaders() { } - public static long contentLength(Request request) { - return contentLength(request.headers()); - } - public static long contentLength(Response response) { return contentLength(response.headers()); } diff --git a/okhttp/src/main/java/okhttp3/internal/http/HttpStream.java b/okhttp/src/main/java/okhttp3/internal/http/HttpStream.java index 3829a7a05..8db5a162b 100644 --- a/okhttp/src/main/java/okhttp3/internal/http/HttpStream.java +++ b/okhttp/src/main/java/okhttp3/internal/http/HttpStream.java @@ -30,7 +30,7 @@ public interface HttpStream { int DISCARD_STREAM_TIMEOUT_MILLIS = 100; /** Returns an output stream where the request body can be streamed. */ - Sink createRequestBody(Request request, long contentLength) throws IOException; + Sink createRequestBody(Request request, long contentLength); /** This should update the HTTP engine's sentRequestMillis field. */ void writeRequestHeaders(Request request) throws IOException;