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

Issue 1363723002: [Cronet] Create Builders, rename UrlRequestContext to CronetEngine (Closed)

Created:
5 years, 3 months ago by pauljensen
Modified:
5 years, 2 months ago
Reviewers:
mef, xunjieli
CC:
chromium-reviews, cbentzel+watch_chromium.org, Charles
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Cronet] Create Builders, rename UrlRequestContext to CronetEngine Non-functional refactoring of Cronet Java API to better match common Java API patterns. 1. Rename UrlRequestContext to CronetEngine 2. Rename UrlRequestContextConfig to CronetEngine.Builder 3. Break UrlRequest into: a. UrlRequest.Builder to allow configuring a request b. UrlRequest to control 4. CronetEngines are created with a new function called CronetEngine.Builder.build(). All occurrences of createContext have been changed to use this. 5. UrlRequests are created with a new function called UrlRequest.Builder.build(). All occurrences of createRequest have been changed to use this. All old APIs are still available to ease migration to the new APIs, though the renames (#1 and #2 above) are required. Also included is a fix to CronetBufferedOutputStream's UploadDataProvider.getLength() implementation where it didn't work after setConnected() was called. This fix is necessary to keep tests passing with this change. BUG=531538 Committed: https://crrev.com/6182d654df33116d7c4e4616c7b51d4e8b28d77f Cr-Commit-Position: refs/heads/master@{#352986}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Patch Set 7 : #

Total comments: 36

Patch Set 8 : address mef's comments #

Total comments: 9

Patch Set 9 : sync #

Patch Set 10 : switch to build() #

Patch Set 11 : null-check UrlRequest.Builder() #

Total comments: 6

Patch Set 12 : address Helen's comments #

Patch Set 13 : update sample #

Total comments: 6

Patch Set 14 : make old API work without renaming #

Total comments: 25

Patch Set 15 : fix up old API tests (mostly revert to old code) #

Patch Set 16 : address Misha's comments #

Total comments: 5

Patch Set 17 : remove dead variable #

Patch Set 18 : sync and address merge conflicts #

Patch Set 19 : update Ben's tests #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1352 lines, -1130 lines) Patch
M components/cronet.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 4 chunks +5 lines, -5 lines 0 comments Download
M components/cronet/README.md View 1 2 3 4 5 6 7 8 9 10 11 5 chunks +16 lines, -17 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/ChromiumUrlRequestContext.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +2 lines, -2 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/ChromiumUrlRequestFactory.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +2 lines, -3 lines 0 comments Download
A components/cronet/android/java/src/org/chromium/net/CronetEngine.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +563 lines, -0 lines 0 comments Download
A + components/cronet/android/java/src/org/chromium/net/CronetEngineBuilderList.template View 1 2 3 4 5 6 1 chunk +3 lines, -3 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/CronetLibraryLoader.java View 10 11 12 13 2 chunks +3 lines, -3 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/CronetUrlRequest.java View 1 2 1 chunk +5 lines, -5 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/CronetUrlRequestContext.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 5 chunks +9 lines, -11 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/HttpUrlConnectionUrlRequestFactory.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +2 lines, -3 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/HttpUrlRequestFactory.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +4 lines, -5 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/HttpUrlRequestFactoryConfig.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -1 line 0 comments Download
M components/cronet/android/java/src/org/chromium/net/UrlRequest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 5 chunks +208 lines, -34 lines 0 comments Download
D components/cronet/android/java/src/org/chromium/net/UrlRequestContext.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +0 lines, -222 lines 0 comments Download
D components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +11 lines, -326 lines 0 comments Download
D components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfigList.template View 1 chunk +0 lines, -14 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/UrlRequestListener.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +2 lines, -2 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/urlconnection/CronetBufferedOutputStream.java View 1 2 3 4 5 6 7 1 chunk +2 lines, -1 line 0 comments Download
M components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLConnection.java View 1 2 3 4 5 6 7 8 9 5 chunks +12 lines, -11 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/urlconnection/CronetHttpURLStreamHandler.java View 3 chunks +5 lines, -5 lines 0 comments Download
M components/cronet/android/java/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactory.java View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +8 lines, -13 lines 0 comments Download
M components/cronet/android/sample/src/org/chromium/cronet_sample_apk/CronetSampleActivity.java View 1 2 3 4 5 6 7 8 9 10 11 12 6 chunks +15 lines, -15 lines 0 comments Download
M components/cronet/android/test/javaperftests/src/org/chromium/net/CronetPerfTestActivity.java View 1 2 3 4 5 6 7 8 9 10 11 6 chunks +16 lines, -14 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/ContextInitTest.java View 1 2 3 10 11 12 13 14 1 chunk +3 lines, -3 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 37 chunks +152 lines, -160 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestTest.java View 1 2 3 4 5 6 7 8 9 10 11 47 chunks +206 lines, -169 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/GetStatusTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +4 lines, -3 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/HistogramManagerTest.java View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -3 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/QuicTest.java View 1 2 3 4 5 6 7 8 9 3 chunks +18 lines, -17 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/SdchTest.java View 1 2 3 4 5 6 7 8 9 8 chunks +19 lines, -19 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetHttpURLStreamHandlerTest.java View 1 2 3 5 chunks +7 lines, -4 lines 0 comments Download
M components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +6 lines, -4 lines 0 comments Download
M components/cronet/android/test/src/org/chromium/net/CronetTestActivity.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 8 chunks +39 lines, -32 lines 0 comments Download
M components/cronet/cronet_static.gypi View 1 chunk +1 line, -1 line 0 comments Download

Dependent Patchsets:

Messages

Total messages: 39 (6 generated)
pauljensen
Misha, PTAL. Feel free to defer the review to someone else if you like. Thank ...
5 years, 3 months ago (2015-09-24 23:26:13 UTC) #2
mef
https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode1 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:1: // Copyright 2014 The Chromium Authors. All rights reserved. ...
5 years, 2 months ago (2015-09-25 21:32:19 UTC) #3
pauljensen
https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode1 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:1: // Copyright 2014 The Chromium Authors. All rights reserved. ...
5 years, 2 months ago (2015-09-28 14:18:13 UTC) #4
xunjieli
driving by, just to make sure I understand the big picture. https://codereview.chromium.org/1363723002/diff/140001/components/cronet/README.md File components/cronet/README.md (right): ...
5 years, 2 months ago (2015-09-28 14:57:05 UTC) #6
mef
https://codereview.chromium.org/1363723002/diff/140001/components/cronet/README.md File components/cronet/README.md (right): https://codereview.chromium.org/1363723002/diff/140001/components/cronet/README.md#newcode72 components/cronet/README.md:72: CronetEngine engine = engineBuilder.build(getContext()); On 2015/09/28 14:57:05, xunjieli wrote: ...
5 years, 2 months ago (2015-09-28 16:31:38 UTC) #7
mef
https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/120001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode363 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:363: for (Pair<String, String> header : builder.mRequestHeaders) { On 2015/09/28 ...
5 years, 2 months ago (2015-09-28 17:13:37 UTC) #8
mef
https://codereview.chromium.org/1363723002/diff/140001/components/cronet/android/java/src/org/chromium/net/UrlRequest.java File components/cronet/android/java/src/org/chromium/net/UrlRequest.java (right): https://codereview.chromium.org/1363723002/diff/140001/components/cronet/android/java/src/org/chromium/net/UrlRequest.java#newcode39 components/cronet/android/java/src/org/chromium/net/UrlRequest.java:39: boolean mDisableCache; should this have an explicit default? https://codereview.chromium.org/1363723002/diff/140001/components/cronet/android/java/src/org/chromium/net/UrlRequest.java#newcode58 ...
5 years, 2 months ago (2015-09-28 17:25:57 UTC) #9
pauljensen
I updated UrlRequest.Builder and CronetEngine.Builder to both have build() functions with no arguments. This was ...
5 years, 2 months ago (2015-09-30 15:41:33 UTC) #11
xunjieli
Thanks. I like this change! https://codereview.chromium.org/1363723002/diff/200001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/200001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode33 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:33: * Default config enables ...
5 years, 2 months ago (2015-10-01 19:00:09 UTC) #13
pauljensen
https://codereview.chromium.org/1363723002/diff/200001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/200001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode33 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:33: * Default config enables SPDY, disables QUIC, SDCH and ...
5 years, 2 months ago (2015-10-01 23:42:59 UTC) #14
xunjieli
LGTM. thanks!
5 years, 2 months ago (2015-10-02 15:19:33 UTC) #15
mef
https://codereview.chromium.org/1363723002/diff/240001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/240001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode378 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:378: * @deprecated Use {@link #executeRequest}. This says 'use executeRequest', ...
5 years, 2 months ago (2015-10-02 16:02:27 UTC) #16
mef
Looks great! Changes to callers are simple and logical. https://codereview.chromium.org/1363723002/diff/260001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/260001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode215 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:215: ...
5 years, 2 months ago (2015-10-02 16:46:58 UTC) #17
pauljensen
https://codereview.chromium.org/1363723002/diff/240001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java File components/cronet/android/java/src/org/chromium/net/CronetEngine.java (right): https://codereview.chromium.org/1363723002/diff/240001/components/cronet/android/java/src/org/chromium/net/CronetEngine.java#newcode378 components/cronet/android/java/src/org/chromium/net/CronetEngine.java:378: * @deprecated Use {@link #executeRequest}. On 2015/10/02 16:02:27, mef ...
5 years, 2 months ago (2015-10-02 18:23:15 UTC) #18
pauljensen
Misha, awaiting your review.
5 years, 2 months ago (2015-10-02 23:12:00 UTC) #19
mef
On 2015/10/02 23:12:00, pauljensen wrote: > Misha, awaiting your review. Sorry, I ran out to ...
5 years, 2 months ago (2015-10-02 23:54:19 UTC) #20
pauljensen
On 2015/10/02 23:54:19, mef wrote: > On 2015/10/02 23:12:00, pauljensen wrote: > > Misha, awaiting ...
5 years, 2 months ago (2015-10-03 00:45:32 UTC) #21
mef
Looks good, but per our discussion, could we hold off on this until Ben lands ...
5 years, 2 months ago (2015-10-05 16:41:52 UTC) #22
pauljensen
https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java File components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java (right): https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java#newcode14 components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java:14: public class UrlRequestContextConfig extends CronetEngine.Builder { On 2015/10/05 16:41:52, ...
5 years, 2 months ago (2015-10-05 16:59:40 UTC) #23
mef
https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java File components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java (right): https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java#newcode14 components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java:14: public class UrlRequestContextConfig extends CronetEngine.Builder { On 2015/10/05 16:59:40, ...
5 years, 2 months ago (2015-10-05 17:18:48 UTC) #24
pauljensen
On 2015/10/05 17:18:48, mef wrote: > https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java > File > components/cronet/android/java/src/org/chromium/net/UrlRequestContextConfig.java > (right): > > ...
5 years, 2 months ago (2015-10-05 18:09:56 UTC) #25
mef
https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java File components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java (right): https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java#newcode20 components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java:20: CronetTestActivity activity = launchCronetTestApp(); FindBugs reported the following issues: ...
5 years, 2 months ago (2015-10-05 19:52:43 UTC) #26
pauljensen
https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java File components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java (right): https://codereview.chromium.org/1363723002/diff/300001/components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java#newcode20 components/cronet/android/test/javatests/src/org/chromium/net/urlconnection/CronetURLStreamHandlerFactoryTest.java:20: CronetTestActivity activity = launchCronetTestApp(); On 2015/10/05 19:52:43, mef wrote: ...
5 years, 2 months ago (2015-10-06 13:07:09 UTC) #27
pauljensen
Misha, awaiting your review. I'd like to land this sooner than later, now that Ben's ...
5 years, 2 months ago (2015-10-07 13:46:27 UTC) #28
mef
On 2015/10/07 13:46:27, pauljensen wrote: > Misha, awaiting your review. I'd like to land this ...
5 years, 2 months ago (2015-10-07 15:15:13 UTC) #29
mef
On 2015/10/07 13:46:27, pauljensen wrote: > Misha, awaiting your review. I'd like to land this ...
5 years, 2 months ago (2015-10-07 15:15:16 UTC) #30
pauljensen
On 2015/10/07 15:15:16, mef wrote: > On 2015/10/07 13:46:27, pauljensen wrote: > > Misha, awaiting ...
5 years, 2 months ago (2015-10-07 16:46:23 UTC) #31
pauljensen
On 2015/10/07 16:46:23, pauljensen wrote: > On 2015/10/07 15:15:16, mef wrote: > > On 2015/10/07 ...
5 years, 2 months ago (2015-10-07 17:34:14 UTC) #32
pauljensen
On 2015/10/07 17:34:14, pauljensen wrote: > Erm, *now* it's rebased and ready to go. (I ...
5 years, 2 months ago (2015-10-07 17:34:49 UTC) #33
mef
lgtm
5 years, 2 months ago (2015-10-07 20:30:13 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1363723002/360001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1363723002/360001
5 years, 2 months ago (2015-10-07 22:51:50 UTC) #37
commit-bot: I haz the power
Committed patchset #19 (id:360001)
5 years, 2 months ago (2015-10-08 00:25:12 UTC) #38
commit-bot: I haz the power
5 years, 2 months ago (2015-10-08 00:26:14 UTC) #39
Message was sent while issue was closed.
Patchset 19 (id:??) landed as
https://crrev.com/6182d654df33116d7c4e4616c7b51d4e8b28d77f
Cr-Commit-Position: refs/heads/master@{#352986}

Powered by Google App Engine
This is Rietveld 408576698