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

Unified Diff: chrome/browser/sync/glue/autofill_profile_data_type_controller.cc

Issue 14103021: Use Observer to notify of WebDB load instead of callbacks (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix WIN builds Created 7 years, 8 months 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
Index: chrome/browser/sync/glue/autofill_profile_data_type_controller.cc
diff --git a/chrome/browser/sync/glue/autofill_profile_data_type_controller.cc b/chrome/browser/sync/glue/autofill_profile_data_type_controller.cc
index acf17e5f5fadb9b10816bad31680ffef1aad132a..d9069e5c25ac8aab351991ea14c7e1d50a2a856b 100644
--- a/chrome/browser/sync/glue/autofill_profile_data_type_controller.cc
+++ b/chrome/browser/sync/glue/autofill_profile_data_type_controller.cc
@@ -28,8 +28,7 @@ AutofillProfileDataTypeController::AutofillProfileDataTypeController(
: NonUIDataTypeController(profile_sync_factory,
profile,
sync_service),
- personal_data_(NULL),
- ALLOW_THIS_IN_INITIALIZER_LIST(scoped_observer_(this)) {}
+ personal_data_(NULL) {}
syncer::ModelType AutofillProfileDataTypeController::type() const {
return syncer::AUTOFILL_PROFILE;
@@ -42,8 +41,8 @@ syncer::ModelSafeGroup
void AutofillProfileDataTypeController::WebDatabaseLoaded() {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- if (scoped_observer_.IsObserving(web_data_service_.get()))
- scoped_observer_.Remove(web_data_service_.get());
+ if (web_data_service_)
+ web_data_service_->RemoveDBObserver(this);
OnModelLoaded();
}
@@ -60,7 +59,7 @@ void AutofillProfileDataTypeController::OnPersonalDataChanged() {
if (web_data_service_->IsDatabaseLoaded())
OnModelLoaded();
else
- scoped_observer_.Add(web_data_service_.get());
+ web_data_service_->AddDBObserver(this);
}
AutofillProfileDataTypeController::~AutofillProfileDataTypeController() {}
@@ -93,7 +92,7 @@ bool AutofillProfileDataTypeController::StartModels() {
if (web_data_service_->IsDatabaseLoaded())
return true;
- scoped_observer_.Add(web_data_service_.get());
+ web_data_service_->AddDBObserver(this);
return false;
}
@@ -101,8 +100,8 @@ void AutofillProfileDataTypeController::StopModels() {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DCHECK(state() == STOPPING || state() == NOT_RUNNING);
- if (scoped_observer_.IsObserving(web_data_service_.get()))
- scoped_observer_.Remove(web_data_service_.get());
+ if (web_data_service_)
+ web_data_service_->RemoveDBObserver(this);
personal_data_->RemoveObserver(this);
}
« no previous file with comments | « chrome/browser/sync/glue/autofill_profile_data_type_controller.h ('k') | chrome/browser/webdata/web_data_service_factory.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698