summaryrefslogtreecommitdiffstats
path: root/chrome/browser/autofill/personal_data_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/autofill/personal_data_manager.cc')
-rw-r--r--chrome/browser/autofill/personal_data_manager.cc95
1 files changed, 53 insertions, 42 deletions
diff --git a/chrome/browser/autofill/personal_data_manager.cc b/chrome/browser/autofill/personal_data_manager.cc
index 7ab1285..1bc4ded 100644
--- a/chrome/browser/autofill/personal_data_manager.cc
+++ b/chrome/browser/autofill/personal_data_manager.cc
@@ -25,6 +25,7 @@
#include "chrome/browser/sync/profile_sync_service_factory.h"
#include "chrome/browser/webdata/autofill_entry.h"
#include "chrome/browser/webdata/web_data_service.h"
+#include "chrome/browser/webdata/web_data_service_factory.h"
#include "chrome/common/chrome_notification_types.h"
#include "chrome/common/pref_names.h"
#include "content/public/browser/browser_thread.h"
@@ -170,10 +171,11 @@ void PersonalDataManager::OnWebDataServiceRequestDone(
ProfileSyncServiceFactory::GetInstance()->GetForProfile(profile_);
if (sync_service && (!sync_service->HasSyncSetupCompleted() ||
!profile_->GetPrefs()->GetBoolean(prefs::kSyncAutofill))) {
- WebDataService* wds =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (wds)
- wds->RemoveExpiredFormElements();
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_,
+ Profile::EXPLICIT_ACCESS);
+ if (web_data_service)
+ web_data_service->RemoveExpiredFormElements();
}
}
}
@@ -198,9 +200,9 @@ void PersonalDataManager::OnStateChanged() {
if (!profile_ || profile_->IsOffTheRecord())
return;
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service) {
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get()) {
NOTREACHED();
return;
}
@@ -226,12 +228,12 @@ void PersonalDataManager::Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) {
DCHECK_EQ(type, chrome::NOTIFICATION_AUTOFILL_MULTIPLE_CHANGED);
- WebDataService* web_data_service =
+ scoped_refptr<WebDataService> web_data_service =
content::Source<WebDataService>(source).ptr();
- DCHECK(web_data_service &&
- web_data_service ==
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS));
+ DCHECK(web_data_service.get() &&
+ web_data_service.get() == WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS).get());
Refresh();
}
@@ -364,8 +366,9 @@ void PersonalDataManager::AddProfile(const AutofillProfile& profile) {
if (FindByGUID<AutofillProfile>(web_profiles_, profile.guid()))
return;
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Don't add a duplicate.
@@ -391,8 +394,9 @@ void PersonalDataManager::UpdateProfile(const AutofillProfile& profile) {
return;
}
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Make the update.
@@ -409,8 +413,9 @@ void PersonalDataManager::RemoveProfile(const std::string& guid) {
if (!FindByGUID<AutofillProfile>(web_profiles_, guid))
return;
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Remove the profile.
@@ -440,8 +445,9 @@ void PersonalDataManager::AddCreditCard(const CreditCard& credit_card) {
if (FindByGUID<CreditCard>(credit_cards_, credit_card.guid()))
return;
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Don't add a duplicate.
@@ -467,8 +473,9 @@ void PersonalDataManager::UpdateCreditCard(const CreditCard& credit_card) {
return;
}
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Make the update.
@@ -485,8 +492,9 @@ void PersonalDataManager::RemoveCreditCard(const std::string& guid) {
if (!FindByGUID<CreditCard>(credit_cards_, guid))
return;
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Remove the credit card.
@@ -572,9 +580,9 @@ void PersonalDataManager::Init(Profile* profile) {
metric_logger_->LogIsAutofillEnabledAtStartup(IsAutofillEnabled());
// WebDataService may not be available in tests.
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service)
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get())
return;
LoadProfiles();
@@ -667,8 +675,9 @@ void PersonalDataManager::SetProfiles(std::vector<AutofillProfile>* profiles) {
address_of<AutofillProfile>);
AutofillProfile::AdjustInferredLabels(&profile_pointers);
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Any profiles that are not in the new profile list should be removed from
@@ -718,8 +727,9 @@ void PersonalDataManager::SetCreditCards(
std::mem_fun_ref(&CreditCard::IsEmpty)),
credit_cards->end());
- WebDataService* wds = profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!wds)
+ scoped_refptr<WebDataService> wds = WebDataServiceFactory::GetForProfile(
+ profile_, Profile::EXPLICIT_ACCESS);
+ if (!wds.get())
return;
// Any credit cards that are not in the new credit card list should be
@@ -757,9 +767,9 @@ void PersonalDataManager::SetCreditCards(
}
void PersonalDataManager::LoadProfiles() {
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service) {
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get()) {
NOTREACHED();
return;
}
@@ -777,9 +787,9 @@ void PersonalDataManager::LoadAuxiliaryProfiles() const {
#endif
void PersonalDataManager::LoadCreditCards() {
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service) {
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get()) {
NOTREACHED();
return;
}
@@ -828,9 +838,10 @@ void PersonalDataManager::ReceiveLoadedCreditCards(
void PersonalDataManager::CancelPendingQuery(WebDataService::Handle* handle) {
if (*handle) {
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service) {
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_,
+ Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get()) {
NOTREACHED();
return;
}
@@ -898,9 +909,9 @@ void PersonalDataManager::EmptyMigrationTrash() {
if (!profile_ || profile_->IsOffTheRecord())
return;
- WebDataService* web_data_service =
- profile_->GetWebDataService(Profile::EXPLICIT_ACCESS);
- if (!web_data_service) {
+ scoped_refptr<WebDataService> web_data_service =
+ WebDataServiceFactory::GetForProfile(profile_, Profile::EXPLICIT_ACCESS);
+ if (!web_data_service.get()) {
NOTREACHED();
return;
}