Index: components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java |
diff --git a/components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java b/components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java |
index 7cdabde2cbeedb1146889c530901f0ca1fa571b8..703aa9938444174bf9464a750f9792af5751d1b6 100644 |
--- a/components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java |
+++ b/components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java |
@@ -17,7 +17,13 @@ import org.chromium.base.annotations.CalledByNative; |
import org.chromium.base.annotations.JNINamespace; |
import org.chromium.base.annotations.NativeClassQualifiedName; |
import org.chromium.base.annotations.UsedByReflection; |
+import org.chromium.net.urlconnection.CronetHttpURLConnection; |
+import org.chromium.net.urlconnection.CronetURLStreamHandlerFactory; |
+import java.net.Proxy; |
+import java.net.URL; |
+import java.net.URLConnection; |
+import java.net.URLStreamHandlerFactory; |
import java.util.concurrent.Executor; |
import java.util.concurrent.RejectedExecutionException; |
import java.util.concurrent.atomic.AtomicInteger; |
@@ -254,6 +260,28 @@ class CronetUrlRequestContext extends CronetEngine { |
} |
} |
+ @Override |
+ public URLConnection openConnection(URL url) { |
+ return openConnection(url, Proxy.NO_PROXY); |
+ } |
+ |
+ @Override |
+ public URLConnection openConnection(URL url, Proxy proxy) { |
+ if (proxy.type() != Proxy.Type.DIRECT) { |
+ throw new UnsupportedOperationException(); |
+ } |
+ String protocol = url.getProtocol(); |
+ if ("http".equals(protocol) || "https".equals(protocol)) { |
+ return new CronetHttpURLConnection(url, this); |
+ } |
+ throw new UnsupportedOperationException("Unexpected protocol:" + protocol); |
+ } |
+ |
+ @Override |
+ public URLStreamHandlerFactory createURLStreamHandlerFactory() { |
+ return new CronetURLStreamHandlerFactory(this); |
+ } |
+ |
/** |
* Mark request as started to prevent shutdown when there are active |
* requests. |