OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/command_line.h" | 5 #include "base/command_line.h" |
6 #include "base/prefs/pref_service.h" | 6 #include "base/prefs/pref_service.h" |
7 #include "components/keyed_service/content/browser_context_dependency_manager.h" | 7 #include "components/keyed_service/content/browser_context_dependency_manager.h" |
8 #include "content/public/browser/browser_context.h" | 8 #include "content/public/browser/browser_context.h" |
9 #include "extensions/browser/extension_pref_value_map.h" | 9 #include "extensions/browser/extension_pref_value_map.h" |
10 #include "extensions/browser/extension_pref_value_map_factory.h" | 10 #include "extensions/browser/extension_pref_value_map_factory.h" |
(...skipping 12 matching lines...) Expand all Loading... |
23 } | 23 } |
24 | 24 |
25 // static | 25 // static |
26 ExtensionPrefsFactory* ExtensionPrefsFactory::GetInstance() { | 26 ExtensionPrefsFactory* ExtensionPrefsFactory::GetInstance() { |
27 return Singleton<ExtensionPrefsFactory>::get(); | 27 return Singleton<ExtensionPrefsFactory>::get(); |
28 } | 28 } |
29 | 29 |
30 void ExtensionPrefsFactory::SetInstanceForTesting( | 30 void ExtensionPrefsFactory::SetInstanceForTesting( |
31 content::BrowserContext* context, | 31 content::BrowserContext* context, |
32 scoped_ptr<ExtensionPrefs> prefs) { | 32 scoped_ptr<ExtensionPrefs> prefs) { |
| 33 Disassociate(context); |
33 Associate(context, prefs.Pass()); | 34 Associate(context, prefs.Pass()); |
34 } | 35 } |
35 | 36 |
36 ExtensionPrefsFactory::ExtensionPrefsFactory() | 37 ExtensionPrefsFactory::ExtensionPrefsFactory() |
37 : BrowserContextKeyedServiceFactory( | 38 : BrowserContextKeyedServiceFactory( |
38 "ExtensionPrefs", | 39 "ExtensionPrefs", |
39 BrowserContextDependencyManager::GetInstance()) { | 40 BrowserContextDependencyManager::GetInstance()) { |
40 } | 41 } |
41 | 42 |
42 ExtensionPrefsFactory::~ExtensionPrefsFactory() { | 43 ExtensionPrefsFactory::~ExtensionPrefsFactory() { |
43 } | 44 } |
44 | 45 |
45 KeyedService* ExtensionPrefsFactory::BuildServiceInstanceFor( | 46 KeyedService* ExtensionPrefsFactory::BuildServiceInstanceFor( |
46 content::BrowserContext* context) const { | 47 content::BrowserContext* context) const { |
47 ExtensionsBrowserClient* client = ExtensionsBrowserClient::Get(); | 48 ExtensionsBrowserClient* client = ExtensionsBrowserClient::Get(); |
48 std::vector<ExtensionPrefsObserver*> prefs_observers; | 49 std::vector<ExtensionPrefsObserver*> prefs_observers; |
49 client->GetEarlyExtensionPrefsObservers(context, &prefs_observers); | 50 client->GetEarlyExtensionPrefsObservers(context, &prefs_observers); |
50 return ExtensionPrefs::Create( | 51 return ExtensionPrefs::Create( |
51 client->GetPrefServiceForContext(context), | 52 context, client->GetPrefServiceForContext(context), |
52 context->GetPath().AppendASCII(extensions::kInstallDirectoryName), | 53 context->GetPath().AppendASCII(extensions::kInstallDirectoryName), |
53 ExtensionPrefValueMapFactory::GetForBrowserContext(context), | 54 ExtensionPrefValueMapFactory::GetForBrowserContext(context), |
54 client->CreateAppSorting(context).Pass(), | |
55 client->AreExtensionsDisabled(*base::CommandLine::ForCurrentProcess(), | 55 client->AreExtensionsDisabled(*base::CommandLine::ForCurrentProcess(), |
56 context), | 56 context), |
57 prefs_observers); | 57 prefs_observers); |
58 } | 58 } |
59 | 59 |
60 content::BrowserContext* ExtensionPrefsFactory::GetBrowserContextToUse( | 60 content::BrowserContext* ExtensionPrefsFactory::GetBrowserContextToUse( |
61 content::BrowserContext* context) const { | 61 content::BrowserContext* context) const { |
62 return ExtensionsBrowserClient::Get()->GetOriginalContext(context); | 62 return ExtensionsBrowserClient::Get()->GetOriginalContext(context); |
63 } | 63 } |
64 | 64 |
65 } // namespace extensions | 65 } // namespace extensions |
OLD | NEW |