Merge "ok-http: Listening to the redirect URL"
diff --git a/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/URLConnectionTest.java b/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/URLConnectionTest.java
index 3be5a2d..431461b 100644
--- a/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/URLConnectionTest.java
+++ b/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/URLConnectionTest.java
@@ -2222,7 +2222,7 @@
@Test public void writeTimeouts() throws IOException {
// Sockets on some platforms can have large buffers that mean writes do not block when
// required. These socket factories explicitly set the buffer sizes on sockets created.
- final int SOCKET_BUFFER_SIZE = 256 * 1024;
+ final int SOCKET_BUFFER_SIZE = 4 * 1024;
server.get().setServerSocketFactory(
new DelegatingServerSocketFactory(ServerSocketFactory.getDefault()) {
@Override
@@ -2247,7 +2247,7 @@
connection.setChunkedStreamingMode(0);
OutputStream out = connection.getOutputStream();
try {
- byte[] data = new byte[16 * 1024 * 1024]; // 16 MiB.
+ byte[] data = new byte[2 * 1024 * 1024]; // 2 MiB.
out.write(data);
fail();
} catch (SocketTimeoutException expected) {
@@ -3119,6 +3119,20 @@
assertContent("abc", client.open(server.getUrl("/")));
}
+ @Test void instanceFollowsRedirects() throws Exception {
+ testInstanceFollowsRedirects("http://www.google.com/");
+ testInstanceFollowsRedirects("https://www.google.com/");
+ }
+
+ private void testInstanceFollowsRedirects(String spec) throws Exception {
+ URL url = new URL(spec);
+ HttpURLConnection urlConnection = client.open(url);
+ urlConnection.setInstanceFollowRedirects(true);
+ assertTrue(urlConnection.getInstanceFollowRedirects());
+ urlConnection.setInstanceFollowRedirects(false);
+ assertFalse(urlConnection.getInstanceFollowRedirects());
+ }
+
/** Returns a gzipped copy of {@code bytes}. */
public Buffer gzip(String data) throws IOException {
Buffer result = new Buffer();
diff --git a/okhttp-urlconnection/src/main/java/com/squareup/okhttp/internal/huc/HttpURLConnectionImpl.java b/okhttp-urlconnection/src/main/java/com/squareup/okhttp/internal/huc/HttpURLConnectionImpl.java
index d09e971..0a014ac 100644
--- a/okhttp-urlconnection/src/main/java/com/squareup/okhttp/internal/huc/HttpURLConnectionImpl.java
+++ b/okhttp-urlconnection/src/main/java/com/squareup/okhttp/internal/huc/HttpURLConnectionImpl.java
@@ -279,6 +279,10 @@
client.setFollowRedirects(followRedirects);
}
+ @Override public boolean getInstanceFollowRedirects() {
+ return client.getFollowRedirects();
+ }
+
@Override public int getConnectTimeout() {
return client.getConnectTimeout();
}
diff --git a/okio/okio/src/main/java/okio/Segment.java b/okio/okio/src/main/java/okio/Segment.java
index c9ed9c2..225ab13 100644
--- a/okio/okio/src/main/java/okio/Segment.java
+++ b/okio/okio/src/main/java/okio/Segment.java
@@ -32,8 +32,6 @@
*/
final class Segment {
/** The size of all segments in bytes. */
- // Increasing socket read bytes from 2KB to 8KB reduces time taken
- // by application to read bytes
static final int SIZE = 8192;
final byte[] data;