Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(317)

Side by Side Diff: chrome/browser/media/router/media_router_factory.cc

Issue 2294973002: Create MediaRouterActionController and MediaRouterUIService (Closed)
Patch Set: Modify BUILD.gn files, rebase Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "chrome/browser/media/router/media_router_factory.h" 5 #include "chrome/browser/media/router/media_router_factory.h"
6 6
7 #include "build/build_config.h" 7 #include "build/build_config.h"
8 #include "chrome/browser/profiles/incognito_helpers.h" 8 #include "chrome/browser/profiles/incognito_helpers.h"
9 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
10 #include "components/keyed_service/content/browser_context_dependency_manager.h" 10 #include "components/keyed_service/content/browser_context_dependency_manager.h"
(...skipping 20 matching lines...) Expand all
31 // static 31 // static
32 MediaRouter* MediaRouterFactory::GetApiForBrowserContext( 32 MediaRouter* MediaRouterFactory::GetApiForBrowserContext(
33 BrowserContext* context) { 33 BrowserContext* context) {
34 DCHECK(context); 34 DCHECK(context);
35 // GetServiceForBrowserContext returns a KeyedService hence the static_cast<> 35 // GetServiceForBrowserContext returns a KeyedService hence the static_cast<>
36 // to return a pointer to MediaRouter. 36 // to return a pointer to MediaRouter.
37 return static_cast<MediaRouter*>( 37 return static_cast<MediaRouter*>(
38 service_factory.Get().GetServiceForBrowserContext(context, true)); 38 service_factory.Get().GetServiceForBrowserContext(context, true));
39 } 39 }
40 40
41 // static
42 MediaRouterFactory* MediaRouterFactory::GetInstance() {
43 return &service_factory.Get();
44 }
45
41 void MediaRouterFactory::BrowserContextShutdown( 46 void MediaRouterFactory::BrowserContextShutdown(
42 content::BrowserContext* context) { 47 content::BrowserContext* context) {
43 if (context->IsOffTheRecord()) { 48 if (context->IsOffTheRecord()) {
44 MediaRouter* router = 49 MediaRouter* router =
45 static_cast<MediaRouter*>(GetServiceForBrowserContext(context, false)); 50 static_cast<MediaRouter*>(GetServiceForBrowserContext(context, false));
46 if (router) 51 if (router)
47 router->OnIncognitoProfileShutdown(); 52 router->OnIncognitoProfileShutdown();
48 } 53 }
49 BrowserContextKeyedServiceFactory::BrowserContextShutdown(context); 54 BrowserContextKeyedServiceFactory::BrowserContextShutdown(context);
50 } 55 }
51 56
52 MediaRouterFactory::MediaRouterFactory() 57 MediaRouterFactory::MediaRouterFactory()
53 : BrowserContextKeyedServiceFactory( 58 : BrowserContextKeyedServiceFactory(
54 "MediaRouter", 59 "MediaRouter",
55 BrowserContextDependencyManager::GetInstance()) { 60 BrowserContextDependencyManager::GetInstance()) {
56 #if !defined(OS_ANDROID) 61 #if !defined(OS_ANDROID)
57 // On desktop platforms, MediaRouter depends on ProcessManager. 62 // On desktop platforms, MediaRouter depends on ProcessManager.
58 DependsOn(extensions::ProcessManagerFactory::GetInstance()); 63 DependsOn(extensions::ProcessManagerFactory::GetInstance());
59 #endif 64 #endif
60 } 65 }
61 66
62 MediaRouterFactory::~MediaRouterFactory() { 67 MediaRouterFactory::~MediaRouterFactory() {
63 } 68 }
64 69
65 // static
66 MediaRouterFactory* MediaRouterFactory::GetMediaRouterFactoryForTest() {
67 return &service_factory.Get();
68 }
69
70 content::BrowserContext* MediaRouterFactory::GetBrowserContextToUse( 70 content::BrowserContext* MediaRouterFactory::GetBrowserContextToUse(
71 content::BrowserContext* context) const { 71 content::BrowserContext* context) const {
72 return chrome::GetBrowserContextRedirectedInIncognito(context); 72 return chrome::GetBrowserContextRedirectedInIncognito(context);
73 } 73 }
74 74
75 KeyedService* MediaRouterFactory::BuildServiceInstanceFor( 75 KeyedService* MediaRouterFactory::BuildServiceInstanceFor(
76 BrowserContext* context) const { 76 BrowserContext* context) const {
77 MediaRouterBase* media_router = nullptr; 77 MediaRouterBase* media_router = nullptr;
78 #if defined(OS_ANDROID) 78 #if defined(OS_ANDROID)
79 media_router = new MediaRouterAndroid(context); 79 media_router = new MediaRouterAndroid(context);
80 #else 80 #else
81 media_router = 81 media_router =
82 new MediaRouterMojoImpl(extensions::ProcessManager::Get(context)); 82 new MediaRouterMojoImpl(extensions::ProcessManager::Get(context));
83 #endif 83 #endif
84 media_router->Initialize(); 84 media_router->Initialize();
85 return media_router; 85 return media_router;
86 } 86 }
87 87
88 } // namespace media_router 88 } // namespace media_router
OLDNEW
« no previous file with comments | « chrome/browser/media/router/media_router_factory.h ('k') | chrome/browser/media/router/media_router_factory_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698