rlz: Add an implementation of PingServer() that uses chrome's net stack.
One can select an implementation via a gyp variable that defaults to wininet
on windows.
PingServer() currently has blocking semantics (it's already called on a thread
in chrome), so the chrome net implementation is that way too. However, when
chrome's net stack is used, an URLRequestContextGetter needs to be passed
to rlz explicitly. That's a bit fishy from an API perspective, but having a 2nd
DNS resolver, proxy cache, etc in chrome just for RLZ felt wrong.
Unfortunately, URLFetcher is currently in chrome's 'content' module, so this
adds a dependency on 'content'. akalin is moving it to 'net', and once that's
done only a dependency on 'net' is required. In the test code, I was careful
to not use BrowserThread, so that the test doesn't depend on 'content' either.
BUG=chromium:117741
TEST=run rlz_unittests on mac with a local server, observe request
Review URL: https://codereview.appspot.com/5864055
git-svn-id: http://rlz.googlecode.com/svn/trunk@107 10bc0f33-e4bf-9a86-80cf-af638054f0c4
8 files changed