1f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 2f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// found in the LICENSE file. 4f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 5f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "chrome/browser/supervised_user/supervised_user_sync_service_factory.h" 6f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 7f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "chrome/browser/profiles/profile.h" 8f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "chrome/browser/supervised_user/supervised_user_sync_service.h" 9f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "components/keyed_service/content/browser_context_dependency_manager.h" 10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 11f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// static 12f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SupervisedUserSyncService* SupervisedUserSyncServiceFactory::GetForProfile( 13f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) Profile* profile) { 14f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) return static_cast<SupervisedUserSyncService*>( 15f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) GetInstance()->GetServiceForBrowserContext(profile, true)); 16f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 17f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 18f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)// static 19f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SupervisedUserSyncServiceFactory* 20f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SupervisedUserSyncServiceFactory::GetInstance() { 21f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) return Singleton<SupervisedUserSyncServiceFactory>::get(); 22f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 23f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 24f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SupervisedUserSyncServiceFactory::SupervisedUserSyncServiceFactory() 25f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) : BrowserContextKeyedServiceFactory( 26f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) "SupervisedUserSyncService", 27f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) BrowserContextDependencyManager::GetInstance()) { 28f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 29f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 30f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)SupervisedUserSyncServiceFactory::~SupervisedUserSyncServiceFactory() {} 31f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) 32f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)KeyedService* SupervisedUserSyncServiceFactory::BuildServiceInstanceFor( 33f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) content::BrowserContext* profile) const { 34f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) return new SupervisedUserSyncService( 35f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles) static_cast<Profile*>(profile)->GetPrefs()); 36f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)} 37