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

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

Issue 586143002: Initial implementation of Cronet Async API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sync Created 6 years, 2 months 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; 5 package org.chromium.net;
6 6
7 import org.json.JSONArray; 7 import org.json.JSONArray;
8 import org.json.JSONException; 8 import org.json.JSONException;
9 import org.json.JSONObject; 9 import org.json.JSONObject;
10 10
11 /** 11 /**
12 * A config for HttpUrlRequestFactory, which allows runtime configuration of 12 * A config for HttpUrlRequestFactory, which allows runtime configuration of
13 * HttpUrlRequestFactory. 13 * HttpUrlRequestFactory.
14 */ 14 */
15 public class HttpUrlRequestFactoryConfig { 15 public class HttpUrlRequestFactoryConfig {
16 16
17 /** 17 /**
18 * Default config enables SPDY, QUIC, in memory http cache. 18 * Default config enables SPDY, QUIC, in memory http cache.
19 */ 19 */
20 public HttpUrlRequestFactoryConfig() { 20 public HttpUrlRequestFactoryConfig() {
21 enableLegacyMode(false); 21 enableLegacyMode(false);
22 enableQUIC(false); 22 enableQUIC(false);
23 enableSPDY(true); 23 enableSPDY(true);
24 enableHttpCache(HttpCache.IN_MEMORY, 100 * 1024); 24 enableHttpCache(HttpCache.IN_MEMORY, 100 * 1024);
25 } 25 }
26 26
27 /** 27 /**
28 * Override the name of the native library backing cronet.
29 */
30 public HttpUrlRequestFactoryConfig setLibraryName(String libName) {
31 return putString(UrlRequestContextConfig.NATIVE_LIBRARY_NAME, libName);
32 }
33
34 /**
35 * Create config from json serialized using @toString. 28 * Create config from json serialized using @toString.
36 */ 29 */
37 public HttpUrlRequestFactoryConfig(String json) throws JSONException { 30 public HttpUrlRequestFactoryConfig(String json) throws JSONException {
38 mConfig = new JSONObject(json); 31 mConfig = new JSONObject(json);
39 } 32 }
40 33
41 /** 34 /**
42 * Boolean, use HttpUrlRequest-based implementation if true. All other 35 * Boolean, use HttpUrlRequest-based implementation if true. All other
43 * keys are not applicable. 36 * keys are not applicable.
44 */ 37 */
45 public HttpUrlRequestFactoryConfig enableLegacyMode(boolean value) { 38 public HttpUrlRequestFactoryConfig enableLegacyMode(boolean value) {
46 return putBoolean(UrlRequestContextConfig.ENABLE_LEGACY_MODE, value); 39 return putBoolean(UrlRequestContextConfig.ENABLE_LEGACY_MODE, value);
47 } 40 }
48 41
49 boolean legacyMode() { 42 boolean legacyMode() {
50 return mConfig.optBoolean(UrlRequestContextConfig.ENABLE_LEGACY_MODE); 43 return mConfig.optBoolean(UrlRequestContextConfig.ENABLE_LEGACY_MODE);
51 } 44 }
52 45
46 /**
47 * Override the user-agent header for all requests.
48 */
49 public HttpUrlRequestFactoryConfig setUserAgent(String userAgent) {
50 return putString(UrlRequestContextConfig.USER_AGENT, userAgent);
51 }
52
53 String userAgent() {
54 return mConfig.optString(UrlRequestContextConfig.USER_AGENT);
55 }
56
57 /**
58 * Override the name of the native library backing cronet.
59 */
60 public HttpUrlRequestFactoryConfig setLibraryName(String libName) {
61 return putString(UrlRequestContextConfig.NATIVE_LIBRARY_NAME, libName);
62 }
63
53 /** 64 /**
54 * Boolean, enable QUIC if true. 65 * Boolean, enable QUIC if true.
55 */ 66 */
56 public HttpUrlRequestFactoryConfig enableQUIC(boolean value) { 67 public HttpUrlRequestFactoryConfig enableQUIC(boolean value) {
57 return putBoolean(UrlRequestContextConfig.ENABLE_QUIC, value); 68 return putBoolean(UrlRequestContextConfig.ENABLE_QUIC, value);
58 } 69 }
59 70
60 /** 71 /**
61 * Boolean, enable SPDY if true. 72 * Boolean, enable SPDY if true.
62 */ 73 */
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
172 try { 183 try {
173 mConfig.put(key, value); 184 mConfig.put(key, value);
174 } catch (JSONException e) { 185 } catch (JSONException e) {
175 // Intentionally do nothing. 186 // Intentionally do nothing.
176 } 187 }
177 return this; 188 return this;
178 } 189 }
179 190
180 private JSONObject mConfig = new JSONObject(); 191 private JSONObject mConfig = new JSONObject();
181 } 192 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698