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

Issue 5205002: AU: Manual proxy support (Closed)

Created:
10 years, 1 month ago by adlr
Modified:
9 years ago
Reviewers:
petkov
CC:
chromium-os-reviews_chromium.org, petkov, adlr
Visibility:
Public.

Description

AU: Manual proxy support Utilize the ChromeProxyResolver to resolve proxies in our network requests. This means the following changes: - HttpFetcher classes take a ProxyResolver* in their ctor. Also, a few useful functions in HttpFetcher to allow subclasses to iterate through the proxies. - LibcurlHttpFetcher support for using the ProxyResolver. It will attempt to use each proxy in the order specified. If any data comes in from any proxy, it won't continue down the list and will continue to use that proxy for its lifetime. - UpdateAttempter can choose, for a given update session, whether or not to use the ChromeProxyResolver or DirectProxyResolver. For now, the logic is: for automatic checks, 80% of the time use ChromeProxyResolver, 20% DirectProxyResolver. For manual checks, the first 19 manual checks in a row use Chrome, then once it uses Direct, then starts over again. The idea is that the updater doesn't necessarily trust Chrome, so some requests should skip it. If a manual check is performed, the user likely wants her proxy settings honored, so use them, but don't allow frequent manual checks to starve out usage of the DirectProxyResolver. - Updates to tests BUG=3167 TEST=unittests, tested on device Committed: http://chrome-svn/viewvc/chromeos?view=rev&revision=4516810

Patch Set 1 #

Total comments: 47

Patch Set 2 : fixes for review #

Total comments: 6

Patch Set 3 : vector->deque for API between httpfetcher/proxy resolver #

Patch Set 4 : fix flakey unittest #

Patch Set 5 : missed one fix for review #

Unified diffs Side-by-side diffs Delta from patch set Stats (+282 lines, -73 lines) Patch
M SConstruct View 1 chunk +1 line, -0 lines 0 comments Download
M chrome_proxy_resolver.h View 3 chunks +4 lines, -5 lines 0 comments Download
M chrome_proxy_resolver.cc View 2 chunks +2 lines, -2 lines 0 comments Download
M chrome_proxy_resolver_unittest.cc View 3 chunks +4 lines, -4 lines 0 comments Download
M download_action_unittest.cc View 4 chunks +8 lines, -4 lines 0 comments Download
M filesystem_copier_action_unittest.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M http_fetcher.h View 1 2 3 4 4 chunks +31 lines, -8 lines 0 comments Download
A http_fetcher.cc View 1 chunk +31 lines, -0 lines 0 comments Download
M http_fetcher_unittest.cc View 1 2 7 chunks +23 lines, -9 lines 0 comments Download
M libcurl_http_fetcher.h View 1 3 chunks +8 lines, -2 lines 0 comments Download
M libcurl_http_fetcher.cc View 1 2 3 4 5 chunks +42 lines, -0 lines 0 comments Download
M main.cc View 2 chunks +4 lines, -1 line 0 comments Download
M mock_http_fetcher.h View 2 chunks +8 lines, -3 lines 0 comments Download
M multi_http_fetcher.h View 1 2 5 chunks +16 lines, -4 lines 0 comments Download
M omaha_request_action_unittest.cc View 6 chunks +12 lines, -6 lines 0 comments Download
M proxy_resolver.h View 1 2 3 chunks +4 lines, -3 lines 0 comments Download
M proxy_resolver.cc View 1 chunk +2 lines, -2 lines 0 comments Download
M update_attempter.h View 1 4 chunks +26 lines, -2 lines 0 comments Download
M update_attempter.cc View 1 10 chunks +39 lines, -10 lines 0 comments Download
M update_attempter_mock.h View 1 1 chunk +6 lines, -3 lines 0 comments Download
M update_attempter_unittest.cc View 3 chunks +4 lines, -2 lines 0 comments Download
M update_check_scheduler.cc View 1 chunk +1 line, -1 line 0 comments Download
M update_check_scheduler_unittest.cc View 2 chunks +2 lines, -2 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
adlr
10 years, 1 month ago (2010-11-19 02:23:06 UTC) #1
petkov
http://codereview.chromium.org/5205002/diff/1/http_fetcher.h File http_fetcher.h (right): http://codereview.chromium.org/5205002/diff/1/http_fetcher.h#newcode13 http_fetcher.h:13: #include <base/basictypes.h> sort http://codereview.chromium.org/5205002/diff/1/http_fetcher.h#newcode31 http_fetcher.h:31: explicit HttpFetcher(ProxyResolver* proxy_resolver) a ...
10 years, 1 month ago (2010-11-19 05:37:15 UTC) #2
petkov
http://codereview.chromium.org/5205002/diff/1/multi_http_fetcher.h File multi_http_fetcher.h (right): http://codereview.chromium.org/5205002/diff/1/multi_http_fetcher.h#newcode23 multi_http_fetcher.h:23: template<typename BaseHttpFetcher> On 2010/11/19 05:37:15, petkov wrote: > Longer ...
10 years, 1 month ago (2010-11-19 17:10:04 UTC) #3
adlr
PTAL. thanks! http://codereview.chromium.org/5205002/diff/1/http_fetcher.h File http_fetcher.h (right): http://codereview.chromium.org/5205002/diff/1/http_fetcher.h#newcode13 http_fetcher.h:13: #include <base/basictypes.h> On 2010/11/19 05:37:15, petkov wrote: ...
10 years, 1 month ago (2010-11-20 02:52:29 UTC) #4
petkov
A few more nits. The major issue is that you're missing a file, I think. ...
10 years, 1 month ago (2010-11-22 17:49:00 UTC) #5
adlr
I addressed all the comments in the review server and replied to the others below: ...
10 years, 1 month ago (2010-11-22 18:50:15 UTC) #6
adlr
publishing the comments http://codereview.chromium.org/5205002/diff/11001/SConstruct File SConstruct (right): http://codereview.chromium.org/5205002/diff/11001/SConstruct#newcode256 SConstruct:256: http_fetcher.cc On 2010/11/22 17:49:00, petkov wrote: ...
10 years, 1 month ago (2010-11-22 18:54:45 UTC) #7
petkov
10 years, 1 month ago (2010-11-22 18:56:41 UTC) #8
LGTM

Powered by Google App Engine
This is Rietveld 408576698