diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-18 23:42:51 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-18 23:42:51 +0000 |
commit | 4a6742a435bf60d73f6ae5533adc991d3bd32aa6 (patch) | |
tree | 3b2396390977bd64cbf360f5be5aa442d9b952f8 | |
parent | 5d1fa247ae57b8bba67dcc28a12e83dcad9b5d10 (diff) | |
download | chromium_src-4a6742a435bf60d73f6ae5533adc991d3bd32aa6.zip chromium_src-4a6742a435bf60d73f6ae5533adc991d3bd32aa6.tar.gz chromium_src-4a6742a435bf60d73f6ae5533adc991d3bd32aa6.tar.bz2 |
base::Bind: Convert BrowsingDataAppCacheHelper::StartFetching.
BUG=none
TEST=none
R=csilv@chromium.org
Review URL: http://codereview.chromium.org/8345015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106168 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | chrome/browser/browsing_data_appcache_helper.cc | 19 | ||||
-rw-r--r-- | chrome/browser/browsing_data_appcache_helper.h | 12 | ||||
-rw-r--r-- | chrome/browser/browsing_data_appcache_helper_unittest.cc | 10 | ||||
-rw-r--r-- | chrome/browser/cookies_tree_model.cc | 6 | ||||
-rw-r--r-- | chrome/browser/mock_browsing_data_appcache_helper.cc | 6 | ||||
-rw-r--r-- | chrome/browser/mock_browsing_data_appcache_helper.h | 6 |
6 files changed, 31 insertions, 28 deletions
diff --git a/chrome/browser/browsing_data_appcache_helper.cc b/chrome/browser/browsing_data_appcache_helper.cc index f7e7ae5..1b73255 100644 --- a/chrome/browser/browsing_data_appcache_helper.cc +++ b/chrome/browser/browsing_data_appcache_helper.cc @@ -18,13 +18,13 @@ BrowsingDataAppCacheHelper::BrowsingDataAppCacheHelper(Profile* profile) appcache_service_(profile->GetAppCacheService()) { } -void BrowsingDataAppCacheHelper::StartFetching(Callback0::Type* callback) { +void BrowsingDataAppCacheHelper::StartFetching(const base::Closure& callback) { if (BrowserThread::CurrentlyOn(BrowserThread::UI)) { DCHECK(!is_fetching_); - DCHECK(callback); + DCHECK_EQ(false, callback.is_null()); is_fetching_ = true; info_collection_ = new appcache::AppCacheInfoCollection; - completion_callback_.reset(callback); + completion_callback_ = callback; BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, NewRunnableMethod( this, &BrowsingDataAppCacheHelper::StartFetching, callback)); return; @@ -40,7 +40,7 @@ void BrowsingDataAppCacheHelper::StartFetching(Callback0::Type* callback) { void BrowsingDataAppCacheHelper::CancelNotification() { if (BrowserThread::CurrentlyOn(BrowserThread::UI)) { - completion_callback_.reset(); + completion_callback_.Reset(); BrowserThread::PostTask(BrowserThread::IO, FROM_HERE, NewRunnableMethod( this, &BrowsingDataAppCacheHelper::CancelNotification)); return; @@ -86,9 +86,9 @@ void BrowsingDataAppCacheHelper::OnFetchComplete(int rv) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); DCHECK(is_fetching_); is_fetching_ = false; - if (completion_callback_ != NULL) { - completion_callback_->Run(); - completion_callback_.reset(); + if (!completion_callback_.is_null()) { + completion_callback_.Run(); + completion_callback_.Reset(); } } @@ -135,9 +135,8 @@ bool CannedBrowsingDataAppCacheHelper::empty() const { } void CannedBrowsingDataAppCacheHelper::StartFetching( - Callback0::Type* completion_callback) { - completion_callback->Run(); - delete completion_callback; + const base::Closure& completion_callback) { + completion_callback.Run(); } CannedBrowsingDataAppCacheHelper::~CannedBrowsingDataAppCacheHelper() {} diff --git a/chrome/browser/browsing_data_appcache_helper.h b/chrome/browser/browsing_data_appcache_helper.h index 2a501e9..7f97b9c 100644 --- a/chrome/browser/browsing_data_appcache_helper.h +++ b/chrome/browser/browsing_data_appcache_helper.h @@ -6,8 +6,8 @@ #define CHROME_BROWSER_BROWSING_DATA_APPCACHE_HELPER_H_ #pragma once +#include "base/callback.h" #include "base/memory/scoped_ptr.h" -#include "base/task.h" #include "content/browser/appcache/chrome_appcache_service.h" #include "googleurl/src/gurl.h" @@ -20,7 +20,7 @@ class BrowsingDataAppCacheHelper public: explicit BrowsingDataAppCacheHelper(Profile* profile); - virtual void StartFetching(Callback0::Type* completion_callback); + virtual void StartFetching(const base::Closure& completion_callback); virtual void CancelNotification(); virtual void DeleteAppCacheGroup(const GURL& manifest_url); @@ -33,7 +33,7 @@ class BrowsingDataAppCacheHelper friend class base::RefCountedThreadSafe<BrowsingDataAppCacheHelper>; virtual ~BrowsingDataAppCacheHelper(); - scoped_ptr<Callback0::Type> completion_callback_; + base::Closure completion_callback_; scoped_refptr<appcache::AppCacheInfoCollection> info_collection_; private: @@ -56,7 +56,7 @@ class CannedBrowsingDataAppCacheHelper : public BrowsingDataAppCacheHelper { // Return a copy of the appcache helper. Only one consumer can use the // StartFetching method at a time, so we need to create a copy of the helper - // everytime we instantiate a cookies tree model for it. + // every time we instantiate a cookies tree model for it. CannedBrowsingDataAppCacheHelper* Clone(); // Add an appcache to the set of canned caches that is returned by this @@ -70,8 +70,8 @@ class CannedBrowsingDataAppCacheHelper : public BrowsingDataAppCacheHelper { bool empty() const; // BrowsingDataAppCacheHelper methods. - virtual void StartFetching(Callback0::Type* completion_callback); - virtual void CancelNotification() {} + virtual void StartFetching(const base::Closure& completion_callback) OVERRIDE; + virtual void CancelNotification() OVERRIDE {} private: virtual ~CannedBrowsingDataAppCacheHelper(); diff --git a/chrome/browser/browsing_data_appcache_helper_unittest.cc b/chrome/browser/browsing_data_appcache_helper_unittest.cc index 36d4478..80b4df7c 100644 --- a/chrome/browser/browsing_data_appcache_helper_unittest.cc +++ b/chrome/browser/browsing_data_appcache_helper_unittest.cc @@ -4,6 +4,8 @@ #include "chrome/browser/browsing_data_appcache_helper.h" +#include "base/bind.h" +#include "base/bind_helpers.h" #include "base/stl_util.h" #include "chrome/test/base/testing_profile.h" #include "testing/gtest/include/gtest/gtest.h" @@ -43,8 +45,8 @@ TEST_F(CannedBrowsingDataAppCacheHelperTest, SetInfo) { helper->AddAppCache(manifest3); TestCompletionCallback callback; - helper->StartFetching( - NewCallback(&callback, &TestCompletionCallback::callback)); + helper->StartFetching(base::Bind(&TestCompletionCallback::callback, + base::Unretained(&callback))); ASSERT_TRUE(callback.have_result()); std::map<GURL, appcache::AppCacheInfoVector>& collection = @@ -75,8 +77,8 @@ TEST_F(CannedBrowsingDataAppCacheHelperTest, Unique) { helper->AddAppCache(manifest); TestCompletionCallback callback; - helper->StartFetching( - NewCallback(&callback, &TestCompletionCallback::callback)); + helper->StartFetching(base::Bind(&TestCompletionCallback::callback, + base::Unretained(&callback))); ASSERT_TRUE(callback.have_result()); std::map<GURL, appcache::AppCacheInfoVector>& collection = diff --git a/chrome/browser/cookies_tree_model.cc b/chrome/browser/cookies_tree_model.cc index 4fb778a..163efb6 100644 --- a/chrome/browser/cookies_tree_model.cc +++ b/chrome/browser/cookies_tree_model.cc @@ -9,6 +9,7 @@ #include <vector> #include "base/bind.h" +#include "base/bind_helpers.h" #include "base/callback.h" #include "base/memory/linked_ptr.h" #include "base/string_util.h" @@ -642,8 +643,9 @@ CookiesTreeModel::CookiesTreeModel( // TODO(michaeln): when all of the ui impls have been updated, // make this a required parameter. if (appcache_helper_) { - appcache_helper_->StartFetching(NewCallback( - this, &CookiesTreeModel::OnAppCacheModelInfoLoaded)); + appcache_helper_->StartFetching( + base::Bind(&CookiesTreeModel::OnAppCacheModelInfoLoaded, + base::Unretained(this))); } if (indexed_db_helper_) { diff --git a/chrome/browser/mock_browsing_data_appcache_helper.cc b/chrome/browser/mock_browsing_data_appcache_helper.cc index 5fab6d0..6d1b6db 100644 --- a/chrome/browser/mock_browsing_data_appcache_helper.cc +++ b/chrome/browser/mock_browsing_data_appcache_helper.cc @@ -15,12 +15,12 @@ MockBrowsingDataAppCacheHelper::~MockBrowsingDataAppCacheHelper() { } void MockBrowsingDataAppCacheHelper::StartFetching( - Callback0::Type* completion_callback) { - completion_callback_.reset(completion_callback); + const base::Closure& completion_callback) { + completion_callback_ = completion_callback; } void MockBrowsingDataAppCacheHelper::CancelNotification() { - completion_callback_.reset(NULL); + completion_callback_.Reset(); } void MockBrowsingDataAppCacheHelper::DeleteAppCacheGroup( diff --git a/chrome/browser/mock_browsing_data_appcache_helper.h b/chrome/browser/mock_browsing_data_appcache_helper.h index c6119b8..0936262 100644 --- a/chrome/browser/mock_browsing_data_appcache_helper.h +++ b/chrome/browser/mock_browsing_data_appcache_helper.h @@ -14,9 +14,9 @@ class MockBrowsingDataAppCacheHelper public: explicit MockBrowsingDataAppCacheHelper(Profile* profile); - virtual void StartFetching(Callback0::Type* completion_callback); - virtual void CancelNotification(); - virtual void DeleteAppCacheGroup(const GURL& manifest_url); + virtual void StartFetching(const base::Closure& completion_callback) OVERRIDE; + virtual void CancelNotification() OVERRIDE; + virtual void DeleteAppCacheGroup(const GURL& manifest_url) OVERRIDE; private: virtual ~MockBrowsingDataAppCacheHelper(); |