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

Unified Diff: net/proxy/proxy_script_decider.cc

Issue 8985012: base::Bind: Convert net/proxy. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: One more include. Created 9 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/proxy/proxy_script_decider.h ('k') | net/proxy/proxy_script_decider_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/proxy/proxy_script_decider.cc
diff --git a/net/proxy/proxy_script_decider.cc b/net/proxy/proxy_script_decider.cc
index e3f4857becb3b0907e79975b74b8a11eacb456bc..a247fbbb62e0a74257ea98932ac4128e7ad3400a 100644
--- a/net/proxy/proxy_script_decider.cc
+++ b/net/proxy/proxy_script_decider.cc
@@ -4,6 +4,8 @@
#include "net/proxy/proxy_script_decider.h"
+#include "base/bind.h"
+#include "base/bind_helpers.h"
#include "base/compiler_specific.h"
#include "base/format_macros.h"
#include "base/logging.h"
@@ -49,9 +51,6 @@ ProxyScriptDecider::ProxyScriptDecider(
NetLog* net_log)
: proxy_script_fetcher_(proxy_script_fetcher),
dhcp_proxy_script_fetcher_(dhcp_proxy_script_fetcher),
- ALLOW_THIS_IN_INITIALIZER_LIST(io_callback_(
- this, &ProxyScriptDecider::OnIOCompletion)),
- user_callback_(NULL),
current_pac_source_index_(0u),
pac_mandatory_(false),
next_state_(STATE_NONE),
@@ -65,12 +64,11 @@ ProxyScriptDecider::~ProxyScriptDecider() {
Cancel();
}
-int ProxyScriptDecider::Start(const ProxyConfig& config,
- const base::TimeDelta wait_delay,
- bool fetch_pac_bytes,
- OldCompletionCallback* callback) {
+int ProxyScriptDecider::Start(
+ const ProxyConfig& config, const base::TimeDelta wait_delay,
+ bool fetch_pac_bytes, const CompletionCallback& callback) {
DCHECK_EQ(STATE_NONE, next_state_);
- DCHECK(callback);
+ DCHECK(!callback.is_null());
DCHECK(config.HasAutomaticSettings());
net_log_.BeginEvent(NetLog::TYPE_PROXY_SCRIPT_DECIDER, NULL);
@@ -91,7 +89,7 @@ int ProxyScriptDecider::Start(const ProxyConfig& config,
int rv = DoLoop(OK);
if (rv == ERR_IO_PENDING)
- user_callback_ = callback;
+ callback_ = callback;
else
DidComplete();
@@ -174,8 +172,8 @@ int ProxyScriptDecider::DoLoop(int result) {
void ProxyScriptDecider::DoCallback(int result) {
DCHECK_NE(ERR_IO_PENDING, result);
- DCHECK(user_callback_);
- user_callback_->Run(result);
+ DCHECK(!callback_.is_null());
+ callback_.Run(result);
}
int ProxyScriptDecider::DoWait() {
@@ -223,7 +221,9 @@ int ProxyScriptDecider::DoFetchPacScript() {
return ERR_UNEXPECTED;
}
- return dhcp_proxy_script_fetcher_->Fetch(&pac_script_, &io_callback_);
+ return dhcp_proxy_script_fetcher_->Fetch(
+ &pac_script_, base::Bind(&ProxyScriptDecider::OnIOCompletion,
+ base::Unretained(this)));
}
if (!proxy_script_fetcher_) {
@@ -232,7 +232,8 @@ int ProxyScriptDecider::DoFetchPacScript() {
}
return proxy_script_fetcher_->Fetch(
- effective_pac_url, &pac_script_, &io_callback_);
+ effective_pac_url, &pac_script_,
+ base::Bind(&ProxyScriptDecider::OnIOCompletion, base::Unretained(this)));
}
int ProxyScriptDecider::DoFetchPacScriptComplete(int result) {
« no previous file with comments | « net/proxy/proxy_script_decider.h ('k') | net/proxy/proxy_script_decider_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698