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/extensions/api/dial/dial_api_factory.h" 6 7 #include "chrome/browser/extensions/api/dial/dial_api.h" 8 #include "chrome/browser/extensions/extension_system_factory.h" 9 #include "components/browser_context_keyed_service/browser_context_dependency_manager.h" 10 11 namespace extensions { 12 13 // static 14 scoped_refptr<DialAPI> DialAPIFactory::GetForProfile(Profile* profile) { 15 return static_cast<DialAPI*>( 16 GetInstance()->GetServiceForBrowserContext(profile, true).get()); 17 } 18 19 // static 20 DialAPIFactory* DialAPIFactory::GetInstance() { 21 return Singleton<DialAPIFactory>::get(); 22 } 23 24 DialAPIFactory::DialAPIFactory() : RefcountedBrowserContextKeyedServiceFactory( 25 "DialAPI", BrowserContextDependencyManager::GetInstance()) { 26 DependsOn(ExtensionSystemFactory::GetInstance()); 27 } 28 29 DialAPIFactory::~DialAPIFactory() { 30 } 31 32 scoped_refptr<RefcountedBrowserContextKeyedService> 33 DialAPIFactory::BuildServiceInstanceFor( 34 content::BrowserContext* profile) const { 35 return scoped_refptr<DialAPI>(new DialAPI(static_cast<Profile*>(profile))); 36 } 37 38 bool DialAPIFactory::ServiceIsCreatedWithBrowserContext() const { 39 return true; 40 } 41 42 bool DialAPIFactory::ServiceIsNULLWhileTesting() const { 43 return true; 44 } 45 46 } // namespace extensions 47