• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #include "chrome/browser/supervised_user/supervised_user_pref_mapping_service_factory.h"
6 
7 #include "chrome/browser/supervised_user/supervised_user_pref_mapping_service.h"
8 #include "chrome/browser/supervised_user/supervised_user_shared_settings_service_factory.h"
9 #include "components/keyed_service/content/browser_context_dependency_manager.h"
10 #include "components/user_prefs/user_prefs.h"
11 #include "content/public/browser/browser_context.h"
12 
13 // static
14 SupervisedUserPrefMappingService*
GetForBrowserContext(content::BrowserContext * profile)15 SupervisedUserPrefMappingServiceFactory::GetForBrowserContext(
16     content::BrowserContext* profile) {
17   return static_cast<SupervisedUserPrefMappingService*>(
18       GetInstance()->GetServiceForBrowserContext(profile, true));
19 }
20 
21 // static
22 SupervisedUserPrefMappingServiceFactory*
GetInstance()23 SupervisedUserPrefMappingServiceFactory::GetInstance() {
24   return Singleton<SupervisedUserPrefMappingServiceFactory>::get();
25 }
26 
27 SupervisedUserPrefMappingServiceFactory::
SupervisedUserPrefMappingServiceFactory()28     SupervisedUserPrefMappingServiceFactory()
29     : BrowserContextKeyedServiceFactory(
30           "SupervisedUserPrefMappingService",
31           BrowserContextDependencyManager::GetInstance()) {
32   DependsOn(SupervisedUserSharedSettingsServiceFactory::GetInstance());
33 }
34 
35 SupervisedUserPrefMappingServiceFactory::
~SupervisedUserPrefMappingServiceFactory()36     ~SupervisedUserPrefMappingServiceFactory() {}
37 
BuildServiceInstanceFor(content::BrowserContext * profile) const38 KeyedService* SupervisedUserPrefMappingServiceFactory::BuildServiceInstanceFor(
39     content::BrowserContext* profile) const {
40   return new SupervisedUserPrefMappingService(
41       user_prefs::UserPrefs::Get(profile),
42       SupervisedUserSharedSettingsServiceFactory::GetForBrowserContext(
43           profile));
44 }
45