1 // Copyright (c) 2012 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/ui/tabs/pinned_tab_service_factory.h" 6 7 #include "chrome/browser/profiles/profile.h" 8 #include "chrome/browser/ui/tabs/pinned_tab_service.h" 9 #include "components/keyed_service/content/browser_context_dependency_manager.h" 10 11 // static 12 PinnedTabService* PinnedTabServiceFactory::GetForProfile( 13 Profile* profile) { 14 return static_cast<PinnedTabService*>( 15 GetInstance()->GetServiceForBrowserContext(profile, true)); 16 } 17 18 PinnedTabServiceFactory* PinnedTabServiceFactory::GetInstance() { 19 return Singleton<PinnedTabServiceFactory>::get(); 20 } 21 22 PinnedTabServiceFactory::PinnedTabServiceFactory() 23 : BrowserContextKeyedServiceFactory( 24 "PinnedTabService", 25 BrowserContextDependencyManager::GetInstance()) { 26 } 27 28 PinnedTabServiceFactory::~PinnedTabServiceFactory() { 29 } 30 31 KeyedService* PinnedTabServiceFactory::BuildServiceInstanceFor( 32 content::BrowserContext* profile) const { 33 return new PinnedTabService(static_cast<Profile*>(profile)); 34 } 35 36 bool PinnedTabServiceFactory::ServiceIsCreatedWithBrowserContext() const { 37 return true; 38 } 39 40 bool PinnedTabServiceFactory::ServiceIsNULLWhileTesting() const { 41 return true; 42 } 43