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

Side by Side Diff: chrome/browser/prerender/prerender_manager_factory.cc

Issue 15517005: Remove references to Profile from browser_context_keyed_service. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase & style Created 7 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 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/prerender/prerender_manager_factory.h" 5 #include "chrome/browser/prerender/prerender_manager_factory.h"
6 6
7 #include "chrome/browser/browser_process.h" 7 #include "chrome/browser/browser_process.h"
8 #include "chrome/browser/extensions/extension_system_factory.h" 8 #include "chrome/browser/extensions/extension_system_factory.h"
9 #include "chrome/browser/history/history_service_factory.h" 9 #include "chrome/browser/history/history_service_factory.h"
10 #include "chrome/browser/predictors/predictor_database_factory.h" 10 #include "chrome/browser/predictors/predictor_database_factory.h"
11 #include "chrome/browser/prerender/prerender_manager.h" 11 #include "chrome/browser/prerender/prerender_manager.h"
12 #include "chrome/browser/profiles/incognito_helpers.h" 12 #include "chrome/browser/profiles/incognito_helpers.h"
13 #include "chrome/browser/profiles/profile.h" 13 #include "chrome/browser/profiles/profile.h"
14 #include "components/browser_context_keyed_service/browser_context_dependency_ma nager.h" 14 #include "components/browser_context_keyed_service/browser_context_dependency_ma nager.h"
15 15
16 #if defined(OS_CHROMEOS) 16 #if defined(OS_CHROMEOS)
17 #include "chrome/browser/chromeos/cros/cros_library.h" 17 #include "chrome/browser/chromeos/cros/cros_library.h"
18 #include "chrome/browser/chromeos/prerender_condition_network.h" 18 #include "chrome/browser/chromeos/prerender_condition_network.h"
19 #endif 19 #endif
20 20
21 namespace prerender { 21 namespace prerender {
22 22
23 // static 23 // static
24 PrerenderManager* PrerenderManagerFactory::GetForProfile( 24 PrerenderManager* PrerenderManagerFactory::GetForProfile(
25 Profile* profile) { 25 Profile* profile) {
26 if (!PrerenderManager::IsPrerenderingPossible()) 26 if (!PrerenderManager::IsPrerenderingPossible())
27 return NULL; 27 return NULL;
28 return static_cast<PrerenderManager*>( 28 return static_cast<PrerenderManager*>(
29 GetInstance()->GetServiceForProfile(profile, true)); 29 GetInstance()->GetServiceForBrowserContext(profile, true));
30 } 30 }
31 31
32 // static 32 // static
33 PrerenderManagerFactory* PrerenderManagerFactory::GetInstance() { 33 PrerenderManagerFactory* PrerenderManagerFactory::GetInstance() {
34 return Singleton<PrerenderManagerFactory>::get(); 34 return Singleton<PrerenderManagerFactory>::get();
35 } 35 }
36 36
37 PrerenderManagerFactory::PrerenderManagerFactory() 37 PrerenderManagerFactory::PrerenderManagerFactory()
38 : ProfileKeyedServiceFactory("PrerenderManager", 38 : BrowserContextKeyedServiceFactory(
39 ProfileDependencyManager::GetInstance()) { 39 "PrerenderManager",
40 BrowserContextDependencyManager::GetInstance()) {
40 DependsOn(extensions::ExtensionSystemFactory::GetInstance()); 41 DependsOn(extensions::ExtensionSystemFactory::GetInstance());
41 // PrerenderLocalPredictor observers the history visit DB. 42 // PrerenderLocalPredictor observers the history visit DB.
42 DependsOn(HistoryServiceFactory::GetInstance()); 43 DependsOn(HistoryServiceFactory::GetInstance());
43 DependsOn(predictors::PredictorDatabaseFactory::GetInstance()); 44 DependsOn(predictors::PredictorDatabaseFactory::GetInstance());
44 } 45 }
45 46
46 PrerenderManagerFactory::~PrerenderManagerFactory() { 47 PrerenderManagerFactory::~PrerenderManagerFactory() {
47 } 48 }
48 49
49 ProfileKeyedService* PrerenderManagerFactory::BuildServiceInstanceFor( 50 BrowserContextKeyedService* PrerenderManagerFactory::BuildServiceInstanceFor(
50 content::BrowserContext* profile) const { 51 content::BrowserContext* profile) const {
51 CHECK(g_browser_process->prerender_tracker()); 52 CHECK(g_browser_process->prerender_tracker());
52 PrerenderManager* prerender_manager = new PrerenderManager( 53 PrerenderManager* prerender_manager = new PrerenderManager(
53 static_cast<Profile*>(profile), g_browser_process->prerender_tracker()); 54 static_cast<Profile*>(profile), g_browser_process->prerender_tracker());
54 #if defined(OS_CHROMEOS) 55 #if defined(OS_CHROMEOS)
55 if (chromeos::CrosLibrary::Get()) { 56 if (chromeos::CrosLibrary::Get()) {
56 prerender_manager->AddCondition( 57 prerender_manager->AddCondition(
57 new chromeos::PrerenderConditionNetwork( 58 new chromeos::PrerenderConditionNetwork(
58 chromeos::CrosLibrary::Get()->GetNetworkLibrary())); 59 chromeos::CrosLibrary::Get()->GetNetworkLibrary()));
59 } 60 }
60 #endif 61 #endif
61 return prerender_manager; 62 return prerender_manager;
62 } 63 }
63 64
64 content::BrowserContext* PrerenderManagerFactory::GetBrowserContextToUse( 65 content::BrowserContext* PrerenderManagerFactory::GetBrowserContextToUse(
65 content::BrowserContext* context) const { 66 content::BrowserContext* context) const {
66 return chrome::GetBrowserContextOwnInstanceInIncognito(context); 67 return chrome::GetBrowserContextOwnInstanceInIncognito(context);
67 } 68 }
68 69
69 } // namespace prerender 70 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698