diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-16 18:58:29 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-11-16 18:58:29 +0000 |
commit | aa22b24e681201499f9dc82c3d62d66e682bf118 (patch) | |
tree | 0760db471972868a35219a2fd28a0a733cfac2d8 /net/http | |
parent | 66ad7faacf401592f814b73ec8d670a552f4c61e (diff) | |
download | chromium_src-aa22b24e681201499f9dc82c3d62d66e682bf118.zip chromium_src-aa22b24e681201499f9dc82c3d62d66e682bf118.tar.gz chromium_src-aa22b24e681201499f9dc82c3d62d66e682bf118.tar.bz2 |
base::Bind: Convert HostResolver::Resolve.
BUG=none
TEST=none
R=willchan@chromium.org
Review URL: http://codereview.chromium.org/8549004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110333 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/http')
-rw-r--r-- | net/http/http_auth_handler_negotiate.cc | 11 | ||||
-rw-r--r-- | net/http/http_auth_handler_negotiate.h | 1 | ||||
-rw-r--r-- | net/http/http_network_transaction_unittest.cc | 43 |
3 files changed, 30 insertions, 25 deletions
diff --git a/net/http/http_auth_handler_negotiate.cc b/net/http/http_auth_handler_negotiate.cc index 05604bd..814cecd 100644 --- a/net/http/http_auth_handler_negotiate.cc +++ b/net/http/http_auth_handler_negotiate.cc @@ -4,6 +4,8 @@ #include "net/http/http_auth_handler_negotiate.h" +#include "base/bind.h" +#include "base/bind_helpers.h" #include "base/logging.h" #include "base/string_util.h" #include "base/stringprintf.h" @@ -101,8 +103,6 @@ HttpAuthHandlerNegotiate::HttpAuthHandlerNegotiate( #endif disable_cname_lookup_(disable_cname_lookup), use_port_(use_port), - ALLOW_THIS_IN_INITIALIZER_LIST(io_callback_( - this, &HttpAuthHandlerNegotiate::OnIOComplete)), resolver_(resolver), already_called_(false), has_credentials_(false), @@ -293,8 +293,11 @@ int HttpAuthHandlerNegotiate::DoResolveCanonicalName() { HostResolver::RequestInfo info(HostPortPair(origin_.host(), 0)); info.set_host_resolver_flags(HOST_RESOLVER_CANONNAME); single_resolve_.reset(new SingleRequestHostResolver(resolver_)); - return single_resolve_->Resolve(info, &address_list_, &io_callback_, - net_log_); + return single_resolve_->Resolve( + info, &address_list_, + base::Bind(&HttpAuthHandlerNegotiate::OnIOComplete, + base::Unretained(this)), + net_log_); } int HttpAuthHandlerNegotiate::DoResolveCanonicalNameComplete(int rv) { diff --git a/net/http/http_auth_handler_negotiate.h b/net/http/http_auth_handler_negotiate.h index 2731f5f..868d88a 100644 --- a/net/http/http_auth_handler_negotiate.h +++ b/net/http/http_auth_handler_negotiate.h @@ -143,7 +143,6 @@ class NET_EXPORT_PRIVATE HttpAuthHandlerNegotiate : public HttpAuthHandler { AuthSystem auth_system_; bool disable_cname_lookup_; bool use_port_; - OldCompletionCallbackImpl<HttpAuthHandlerNegotiate> io_callback_; HostResolver* const resolver_; // Members which are needed for DNS lookup + SPN. diff --git a/net/http/http_network_transaction_unittest.cc b/net/http/http_network_transaction_unittest.cc index f5afd74..2af99c2 100644 --- a/net/http/http_network_transaction_unittest.cc +++ b/net/http/http_network_transaction_unittest.cc @@ -5813,10 +5813,11 @@ void BypassHostCacheOnRefreshHelper(int load_flags) { // Warm up the host cache so it has an entry for "www.google.com". AddressList addrlist; - TestOldCompletionCallback callback; + TestCompletionCallback callback; + TestOldCompletionCallback old_callback; int rv = session_deps.host_resolver->Resolve( HostResolver::RequestInfo(HostPortPair("www.google.com", 80)), &addrlist, - &callback, NULL, BoundNetLog()); + callback.callback(), NULL, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); rv = callback.WaitForResult(); EXPECT_EQ(OK, rv); @@ -5825,7 +5826,7 @@ void BypassHostCacheOnRefreshHelper(int load_flags) { // and confirming it completes synchronously. rv = session_deps.host_resolver->Resolve( HostResolver::RequestInfo(HostPortPair("www.google.com", 80)), &addrlist, - &callback, NULL, BoundNetLog()); + callback.callback(), NULL, BoundNetLog()); ASSERT_EQ(OK, rv); // Inject a failure the next time that "www.google.com" is resolved. This way @@ -5840,9 +5841,9 @@ void BypassHostCacheOnRefreshHelper(int load_flags) { session_deps.socket_factory.AddSocketDataProvider(&data); // Run the request. - rv = trans->Start(&request, &callback, BoundNetLog()); + rv = trans->Start(&request, &old_callback, BoundNetLog()); ASSERT_EQ(ERR_IO_PENDING, rv); - rv = callback.WaitForResult(); + rv = old_callback.WaitForResult(); // If we bypassed the cache, we would have gotten a failure while resolving // "www.google.com". @@ -8901,8 +8902,8 @@ void IPPoolingAddAlias(MockCachingHostResolver* host_resolver, // Resolve the host and port. AddressList addresses; HostResolver::RequestInfo info(host_port_pair); - TestOldCompletionCallback callback; - int rv = host_resolver->Resolve(info, &addresses, &callback, NULL, + TestCompletionCallback callback; + int rv = host_resolver->Resolve(info, &addresses, callback.callback(), NULL, BoundNetLog()); if (rv == ERR_IO_PENDING) rv = callback.WaitForResult(); @@ -8970,16 +8971,17 @@ TEST_F(HttpNetworkTransactionTest, UseIPConnectionPooling) { spdy_writes, arraysize(spdy_writes))); session_deps.socket_factory.AddSocketDataProvider(spdy_data); - TestOldCompletionCallback callback; + TestCompletionCallback callback; + TestOldCompletionCallback old_callback; HttpRequestInfo request1; request1.method = "GET"; request1.url = GURL("https://www.google.com/"); request1.load_flags = 0; HttpNetworkTransaction trans1(session); - int rv = trans1.Start(&request1, &callback, BoundNetLog()); + int rv = trans1.Start(&request1, &old_callback, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); - EXPECT_EQ(OK, callback.WaitForResult()); + EXPECT_EQ(OK, old_callback.WaitForResult()); const HttpResponseInfo* response = trans1.GetResponseInfo(); ASSERT_TRUE(response != NULL); @@ -8994,7 +8996,7 @@ TEST_F(HttpNetworkTransactionTest, UseIPConnectionPooling) { HostPortPair host_port("www.gmail.com", 443); HostResolver::RequestInfo resolve_info(host_port); AddressList ignored; - rv = host_resolver.Resolve(resolve_info, &ignored, &callback, NULL, + rv = host_resolver.Resolve(resolve_info, &ignored, callback.callback(), NULL, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); rv = callback.WaitForResult(); @@ -9012,9 +9014,9 @@ TEST_F(HttpNetworkTransactionTest, UseIPConnectionPooling) { request2.load_flags = 0; HttpNetworkTransaction trans2(session); - rv = trans2.Start(&request2, &callback, BoundNetLog()); + rv = trans2.Start(&request2, &old_callback, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); - EXPECT_EQ(OK, callback.WaitForResult()); + EXPECT_EQ(OK, old_callback.WaitForResult()); response = trans2.GetResponseInfo(); ASSERT_TRUE(response != NULL); @@ -9040,7 +9042,7 @@ class OneTimeCachingHostResolver : public net::HostResolver { // HostResolver methods: virtual int Resolve(const RequestInfo& info, AddressList* addresses, - OldCompletionCallback* callback, + const CompletionCallback& callback, RequestHandle* out_req, const BoundNetLog& net_log) OVERRIDE { return host_resolver_.Resolve( @@ -9123,16 +9125,17 @@ TEST_F(HttpNetworkTransactionTest, spdy_writes, arraysize(spdy_writes))); session_deps.socket_factory.AddSocketDataProvider(spdy_data); - TestOldCompletionCallback callback; + TestCompletionCallback callback; HttpRequestInfo request1; request1.method = "GET"; request1.url = GURL("https://www.google.com/"); request1.load_flags = 0; HttpNetworkTransaction trans1(session); - int rv = trans1.Start(&request1, &callback, BoundNetLog()); + TestOldCompletionCallback old_callback; + int rv = trans1.Start(&request1, &old_callback, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); - EXPECT_EQ(OK, callback.WaitForResult()); + EXPECT_EQ(OK, old_callback.WaitForResult()); const HttpResponseInfo* response = trans1.GetResponseInfo(); ASSERT_TRUE(response != NULL); @@ -9146,7 +9149,7 @@ TEST_F(HttpNetworkTransactionTest, // Preload cache entries into HostCache. HostResolver::RequestInfo resolve_info(HostPortPair("www.gmail.com", 443)); AddressList ignored; - rv = host_resolver.Resolve(resolve_info, &ignored, &callback, NULL, + rv = host_resolver.Resolve(resolve_info, &ignored, callback.callback(), NULL, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); rv = callback.WaitForResult(); @@ -9164,9 +9167,9 @@ TEST_F(HttpNetworkTransactionTest, IPPoolingAddAlias(host_resolver.GetMockHostResolver(), &pool_peer, "www.google.com", 443, "127.0.0.1"); - rv = trans2.Start(&request2, &callback, BoundNetLog()); + rv = trans2.Start(&request2, &old_callback, BoundNetLog()); EXPECT_EQ(ERR_IO_PENDING, rv); - EXPECT_EQ(OK, callback.WaitForResult()); + EXPECT_EQ(OK, old_callback.WaitForResult()); response = trans2.GetResponseInfo(); ASSERT_TRUE(response != NULL); |