From 0466edb4ad41c8549ca6bd7be16b064274bce4c7 Mon Sep 17 00:00:00 2001 From: Jesse Wilson Date: Sun, 4 May 2014 00:00:23 -0400 Subject: [PATCH] Hide route database. --- .../squareup/okhttp/internal/http/RouteSelectorTest.java | 2 +- okhttp/src/main/java/com/squareup/okhttp/OkHttpClient.java | 7 ++++++- .../main/java/com/squareup/okhttp/internal/Internal.java | 2 ++ .../com/squareup/okhttp/{ => internal}/RouteDatabase.java | 3 ++- .../java/com/squareup/okhttp/internal/http/HttpEngine.java | 4 ++-- .../com/squareup/okhttp/internal/http/RouteSelector.java | 2 +- 6 files changed, 14 insertions(+), 6 deletions(-) rename okhttp/src/main/java/com/squareup/okhttp/{ => internal}/RouteDatabase.java (95%) diff --git a/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java b/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java index 06cf1cf6c..1c3cd7bdd 100644 --- a/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java +++ b/okhttp-tests/src/test/java/com/squareup/okhttp/internal/http/RouteSelectorTest.java @@ -20,7 +20,7 @@ import com.squareup.okhttp.Connection; import com.squareup.okhttp.ConnectionPool; import com.squareup.okhttp.OkAuthenticator; import com.squareup.okhttp.Protocol; -import com.squareup.okhttp.RouteDatabase; +import com.squareup.okhttp.internal.RouteDatabase; import com.squareup.okhttp.internal.Dns; import com.squareup.okhttp.internal.SslContextBuilder; import com.squareup.okhttp.internal.huc.AuthenticatorAdapter; diff --git a/okhttp/src/main/java/com/squareup/okhttp/OkHttpClient.java b/okhttp/src/main/java/com/squareup/okhttp/OkHttpClient.java index f43fcb115..82242668b 100644 --- a/okhttp/src/main/java/com/squareup/okhttp/OkHttpClient.java +++ b/okhttp/src/main/java/com/squareup/okhttp/OkHttpClient.java @@ -17,6 +17,7 @@ package com.squareup.okhttp; import com.squareup.okhttp.internal.Internal; import com.squareup.okhttp.internal.InternalCache; +import com.squareup.okhttp.internal.RouteDatabase; import com.squareup.okhttp.internal.Util; import com.squareup.okhttp.internal.http.HttpEngine; import com.squareup.okhttp.internal.http.Transport; @@ -127,6 +128,10 @@ public final class OkHttpClient implements URLStreamHandlerFactory, Cloneable { @Override public void share(ConnectionPool connectionPool, Connection connection) { connectionPool.share(connection); } + + @Override public RouteDatabase routeDatabase(OkHttpClient client) { + return client.routeDatabase; + } }; } @@ -381,7 +386,7 @@ public final class OkHttpClient implements URLStreamHandlerFactory, Cloneable { return followSslRedirects; } - public RouteDatabase getRoutesDatabase() { + RouteDatabase getRoutesDatabase() { return routeDatabase; } diff --git a/okhttp/src/main/java/com/squareup/okhttp/internal/Internal.java b/okhttp/src/main/java/com/squareup/okhttp/internal/Internal.java index 97abbb4f6..7e42c6b76 100644 --- a/okhttp/src/main/java/com/squareup/okhttp/internal/Internal.java +++ b/okhttp/src/main/java/com/squareup/okhttp/internal/Internal.java @@ -70,4 +70,6 @@ public abstract class Internal { public abstract void recycle(ConnectionPool pool, Connection connection); public abstract void share(ConnectionPool connectionPool, Connection connection); + + public abstract RouteDatabase routeDatabase(OkHttpClient client); } diff --git a/okhttp/src/main/java/com/squareup/okhttp/RouteDatabase.java b/okhttp/src/main/java/com/squareup/okhttp/internal/RouteDatabase.java similarity index 95% rename from okhttp/src/main/java/com/squareup/okhttp/RouteDatabase.java rename to okhttp/src/main/java/com/squareup/okhttp/internal/RouteDatabase.java index 4177c0fb1..1625029c8 100644 --- a/okhttp/src/main/java/com/squareup/okhttp/RouteDatabase.java +++ b/okhttp/src/main/java/com/squareup/okhttp/internal/RouteDatabase.java @@ -13,8 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package com.squareup.okhttp; +package com.squareup.okhttp.internal; +import com.squareup.okhttp.Route; import java.util.LinkedHashSet; import java.util.Set; diff --git a/okhttp/src/main/java/com/squareup/okhttp/internal/http/HttpEngine.java b/okhttp/src/main/java/com/squareup/okhttp/internal/http/HttpEngine.java index fd74c5b8c..a3f4db744 100644 --- a/okhttp/src/main/java/com/squareup/okhttp/internal/http/HttpEngine.java +++ b/okhttp/src/main/java/com/squareup/okhttp/internal/http/HttpEngine.java @@ -260,7 +260,7 @@ public final class HttpEngine { client.getSocketFactory(), sslSocketFactory, hostnameVerifier, client.getAuthenticator(), client.getProxy(), client.getProtocols()); routeSelector = new RouteSelector(address, request.uri(), client.getProxySelector(), - client.getConnectionPool(), Dns.DEFAULT, client.getRoutesDatabase()); + client.getConnectionPool(), Dns.DEFAULT, Internal.instance.routeDatabase(client)); } connection = routeSelector.next(request.method()); @@ -272,7 +272,7 @@ public final class HttpEngine { if (Internal.instance.isSpdy(connection)) { Internal.instance.share(client.getConnectionPool(), connection); } - client.getRoutesDatabase().connected(connection.getRoute()); + Internal.instance.routeDatabase(client).connected(connection.getRoute()); } Internal.instance.setTimeouts(connection, client.getReadTimeout(), client.getWriteTimeout()); route = connection.getRoute(); diff --git a/okhttp/src/main/java/com/squareup/okhttp/internal/http/RouteSelector.java b/okhttp/src/main/java/com/squareup/okhttp/internal/http/RouteSelector.java index de33b0bc5..92aa445ae 100644 --- a/okhttp/src/main/java/com/squareup/okhttp/internal/http/RouteSelector.java +++ b/okhttp/src/main/java/com/squareup/okhttp/internal/http/RouteSelector.java @@ -19,7 +19,7 @@ import com.squareup.okhttp.Address; import com.squareup.okhttp.Connection; import com.squareup.okhttp.ConnectionPool; import com.squareup.okhttp.Route; -import com.squareup.okhttp.RouteDatabase; +import com.squareup.okhttp.internal.RouteDatabase; import com.squareup.okhttp.internal.Dns; import com.squareup.okhttp.internal.Internal; import java.io.IOException;