Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(165)

Side by Side Diff: components/cronet/android/java/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactory.java

Issue 2339223002: Cronet API Refactoring (Closed)
Patch Set: Rebase & Conflict Resolution Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.net.urlconnection; 5 package org.chromium.net.urlconnection;
6 6
7 import org.chromium.net.CronetEngine; 7 import org.chromium.net.CronetEngine;
8 import org.chromium.net.impl.CronetEngineBase;
8 9
9 import java.net.URLStreamHandler; 10 import java.net.URLStreamHandler;
10 import java.net.URLStreamHandlerFactory; 11 import java.net.URLStreamHandlerFactory;
11 12
12 /** 13 /**
13 * An implementation of {@link URLStreamHandlerFactory} to handle HTTP and HTTPS 14 * An implementation of {@link URLStreamHandlerFactory} to handle HTTP and HTTPS
14 * traffic. An instance of this class can be installed via 15 * traffic. An instance of this class can be installed via
15 * {@link java.net.URL#setURLStreamHandlerFactory} thus using Cronet by default for all requests 16 * {@link java.net.URL#setURLStreamHandlerFactory} thus using Cronet by default for all requests
16 * created via {@link java.net.URL#openConnection}. 17 * created via {@link java.net.URL#openConnection}.
17 * <p> 18 * <p>
(...skipping 15 matching lines...) Expand all
33 * javax.net.ssl.HttpsURLConnection#setDefaultHostnameVerifier(javax.net.ssl .HostnameVerifier) 34 * javax.net.ssl.HttpsURLConnection#setDefaultHostnameVerifier(javax.net.ssl .HostnameVerifier)
34 * HttpsURLConnection.setDefaultHostnameVerifier(javax.net.ssl.HostnameVerif ier)}</li> 35 * HttpsURLConnection.setDefaultHostnameVerifier(javax.net.ssl.HostnameVerif ier)}</li>
35 * <li>the HTTPS socket factory installed via {@link 36 * <li>the HTTPS socket factory installed via {@link
36 * javax.net.ssl.HttpsURLConnection#setDefaultSSLSocketFactory(javax.net.ssl .SSLSocketFactory) 37 * javax.net.ssl.HttpsURLConnection#setDefaultSSLSocketFactory(javax.net.ssl .SSLSocketFactory)
37 * HttpsURLConnection.setDefaultSSLSocketFactory(javax.net.ssl.SSLSocketFact ory)}</li> 38 * HttpsURLConnection.setDefaultSSLSocketFactory(javax.net.ssl.SSLSocketFact ory)}</li>
38 * </ul> 39 * </ul>
39 * 40 *
40 * {@hide} 41 * {@hide}
41 */ 42 */
42 public class CronetURLStreamHandlerFactory implements URLStreamHandlerFactory { 43 public class CronetURLStreamHandlerFactory implements URLStreamHandlerFactory {
43 private final CronetEngine mCronetEngine; 44 private final CronetEngineBase mCronetEngine;
44 45
45 /** 46 /**
46 * Creates a {@link CronetURLStreamHandlerFactory} to handle HTTP and HTTPS 47 * Creates a {@link CronetURLStreamHandlerFactory} to handle HTTP and HTTPS
47 * traffic. 48 * traffic.
48 * @param cronetEngine the {@link CronetEngine} to be used. 49 * @param cronetEngine the {@link CronetEngine} to be used.
49 * @throws NullPointerException if config is null. 50 * @throws NullPointerException if config is null.
50 */ 51 */
51 public CronetURLStreamHandlerFactory(CronetEngine cronetEngine) { 52 public CronetURLStreamHandlerFactory(CronetEngineBase cronetEngine) {
52 if (cronetEngine == null) { 53 if (cronetEngine == null) {
53 throw new NullPointerException("CronetEngine is null."); 54 throw new NullPointerException("CronetEngine is null.");
54 } 55 }
55 mCronetEngine = cronetEngine; 56 mCronetEngine = cronetEngine;
56 } 57 }
57 58
58 /** 59 /**
59 * Returns a {@link CronetHttpURLStreamHandler} for HTTP and HTTPS, and 60 * Returns a {@link CronetHttpURLStreamHandler} for HTTP and HTTPS, and
60 * {@code null} for other protocols. 61 * {@code null} for other protocols.
61 */ 62 */
62 @Override 63 @Override
63 public URLStreamHandler createURLStreamHandler(String protocol) { 64 public URLStreamHandler createURLStreamHandler(String protocol) {
64 if ("http".equals(protocol) || "https".equals(protocol)) { 65 if ("http".equals(protocol) || "https".equals(protocol)) {
65 return new CronetHttpURLStreamHandler(mCronetEngine); 66 return new CronetHttpURLStreamHandler(mCronetEngine);
66 } 67 }
67 return null; 68 return null;
68 } 69 }
69 } 70 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698