OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/profile_resetter/automatic_profile_resetter_factory.h" | 5 #include "chrome/browser/profile_resetter/triggered_profile_resetter_factory.h" |
6 | 6 |
7 #include "base/memory/singleton.h" | 7 #include "base/memory/singleton.h" |
8 #include "base/prefs/pref_registry_simple.h" | 8 #include "base/prefs/pref_registry_simple.h" |
9 #include "chrome/browser/profile_resetter/automatic_profile_resetter.h" | 9 #include "chrome/browser/profile_resetter/triggered_profile_resetter.h" |
10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
11 #include "chrome/browser/search_engines/template_url_service_factory.h" | 11 #include "chrome/browser/search_engines/template_url_service_factory.h" |
12 #include "chrome/browser/ui/global_error/global_error_service_factory.h" | 12 #include "chrome/browser/ui/global_error/global_error_service_factory.h" |
13 #include "chrome/common/pref_names.h" | 13 #include "chrome/common/pref_names.h" |
14 #include "components/keyed_service/content/browser_context_dependency_manager.h" | 14 #include "components/keyed_service/content/browser_context_dependency_manager.h" |
15 #include "components/pref_registry/pref_registry_syncable.h" | 15 #include "components/pref_registry/pref_registry_syncable.h" |
16 #include "content/public/browser/browser_context.h" | 16 #include "content/public/browser/browser_context.h" |
17 | 17 |
18 // static | 18 // static |
19 AutomaticProfileResetter* AutomaticProfileResetterFactory::GetForBrowserContext( | 19 TriggeredProfileResetter* TriggeredProfileResetterFactory::GetForBrowserContext( |
20 content::BrowserContext* context) { | 20 content::BrowserContext* context) { |
21 return static_cast<AutomaticProfileResetter*>( | 21 return static_cast<TriggeredProfileResetter*>( |
22 GetInstance()->GetServiceForBrowserContext(context, true)); | 22 GetInstance()->GetServiceForBrowserContext(context, true)); |
23 } | 23 } |
24 | 24 |
25 // static | 25 // static |
26 AutomaticProfileResetterFactory* | 26 TriggeredProfileResetterFactory* |
27 AutomaticProfileResetterFactory::GetInstance() { | 27 TriggeredProfileResetterFactory::GetInstance() { |
28 return Singleton<AutomaticProfileResetterFactory>::get(); | 28 return Singleton<TriggeredProfileResetterFactory>::get(); |
grt (UTC plus 2)
2015/09/04 18:35:48
do you really need Singleton here? if GetInstance
robertshield
2015/09/04 20:27:18
https://code.google.com/p/chromium/codesearch#chro
| |
29 } | 29 } |
30 | 30 |
31 // static | 31 // static |
32 void AutomaticProfileResetterFactory::RegisterPrefs( | 32 void TriggeredProfileResetterFactory::RegisterPrefs( |
33 PrefRegistrySimple* registry) { | 33 PrefRegistrySimple* registry) { |
34 registry->RegisterDictionaryPref( | 34 registry->RegisterDictionaryPref( |
35 prefs::kProfileResetPromptMementosInLocalState); | 35 prefs::kProfileResetPromptMementosInLocalState); |
grt (UTC plus 2)
2015/09/04 18:35:48
was this accidentally copy-n-pasted from Automatic
robertshield
2015/09/04 20:27:18
ugh, yes. cleaned up.
| |
36 } | 36 } |
37 | 37 |
38 AutomaticProfileResetterFactory::AutomaticProfileResetterFactory() | 38 // static |
39 void TriggeredProfileResetterFactory::SetGlobalTestingFactory( | |
40 TestingFactoryFunction testing_factory) { | |
41 GetInstance()->testing_factory_function_ = testing_factory; | |
42 } | |
43 | |
44 TriggeredProfileResetterFactory::TriggeredProfileResetterFactory() | |
39 : BrowserContextKeyedServiceFactory( | 45 : BrowserContextKeyedServiceFactory( |
40 "AutomaticProfileResetter", | 46 "TriggeredProfileResetter", |
41 BrowserContextDependencyManager::GetInstance()) { | 47 BrowserContextDependencyManager::GetInstance()) { |
42 DependsOn(TemplateURLServiceFactory::GetInstance()); | 48 DependsOn(TemplateURLServiceFactory::GetInstance()); |
43 DependsOn(GlobalErrorServiceFactory::GetInstance()); | 49 DependsOn(GlobalErrorServiceFactory::GetInstance()); |
grt (UTC plus 2)
2015/09/04 18:35:48
another copy-n-paste for these two?
robertshield
2015/09/04 20:27:18
ditto.
| |
44 } | 50 } |
45 | 51 |
46 AutomaticProfileResetterFactory::~AutomaticProfileResetterFactory() {} | 52 TriggeredProfileResetterFactory::~TriggeredProfileResetterFactory() {} |
47 | 53 |
48 KeyedService* AutomaticProfileResetterFactory::BuildServiceInstanceFor( | 54 KeyedService* TriggeredProfileResetterFactory::BuildServiceInstanceFor( |
49 content::BrowserContext* context) const { | 55 content::BrowserContext* context) const { |
56 if (testing_factory_function_) | |
57 return testing_factory_function_(context).release(); | |
58 | |
50 Profile* profile = Profile::FromBrowserContext(context); | 59 Profile* profile = Profile::FromBrowserContext(context); |
51 AutomaticProfileResetter* service = new AutomaticProfileResetter(profile); | 60 TriggeredProfileResetter* service = new TriggeredProfileResetter(profile); |
52 service->Initialize(); | |
53 service->Activate(); | 61 service->Activate(); |
54 return service; | 62 return service; |
55 } | 63 } |
56 | 64 |
57 void AutomaticProfileResetterFactory::RegisterProfilePrefs( | 65 void TriggeredProfileResetterFactory::RegisterProfilePrefs( |
58 user_prefs::PrefRegistrySyncable* registry) { | 66 user_prefs::PrefRegistrySyncable* registry) { |
59 registry->RegisterStringPref(prefs::kProfileResetPromptMementoInProfilePrefs, | 67 #if defined(OS_WIN) |
60 ""); | 68 registry->RegisterInt64Pref(prefs::kLastProfileResetTimestamp, 0L); |
69 #endif | |
61 } | 70 } |
62 | 71 |
63 bool AutomaticProfileResetterFactory:: | 72 bool TriggeredProfileResetterFactory::ServiceIsCreatedWithBrowserContext() |
64 ServiceIsCreatedWithBrowserContext() const { | 73 const { |
65 return true; | 74 return true; |
66 } | 75 } |
67 | |
68 bool AutomaticProfileResetterFactory::ServiceIsNULLWhileTesting() const { | |
69 return true; | |
70 } | |
OLD | NEW |