OLD | NEW |
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 // When each service is created, we set a flag indicating this. At this point, | 5 // When each service is created, we set a flag indicating this. At this point, |
6 // the service initialization could fail or succeed. This allows us to remember | 6 // the service initialization could fail or succeed. This allows us to remember |
7 // if we tried to create a service, and not try creating it over and over if | 7 // if we tried to create a service, and not try creating it over and over if |
8 // the creation failed. | 8 // the creation failed. |
9 | 9 |
10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ | 10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ |
(...skipping 23 matching lines...) Expand all Loading... |
34 | 34 |
35 namespace base { | 35 namespace base { |
36 class SequencedTaskRunner; | 36 class SequencedTaskRunner; |
37 } | 37 } |
38 | 38 |
39 namespace policy { | 39 namespace policy { |
40 class BrowserPolicyConnector; | 40 class BrowserPolicyConnector; |
41 class PolicyService; | 41 class PolicyService; |
42 }; | 42 }; |
43 | 43 |
| 44 #if defined(OS_WIN) && defined(USE_AURA) |
| 45 class MetroViewerProcessHost; |
| 46 #endif |
| 47 |
44 #if defined(OS_MACOSX) | 48 #if defined(OS_MACOSX) |
45 class AppShimHostManager; | 49 class AppShimHostManager; |
46 #endif | 50 #endif |
47 | 51 |
48 // Real implementation of BrowserProcess that creates and returns the services. | 52 // Real implementation of BrowserProcess that creates and returns the services. |
49 class BrowserProcessImpl : public BrowserProcess, | 53 class BrowserProcessImpl : public BrowserProcess, |
50 public base::NonThreadSafe { | 54 public base::NonThreadSafe { |
51 public: | 55 public: |
52 // |local_state_task_runner| must be a shutdown-blocking task runner. | 56 // |local_state_task_runner| must be a shutdown-blocking task runner. |
53 BrowserProcessImpl(base::SequencedTaskRunner* local_state_task_runner, | 57 BrowserProcessImpl(base::SequencedTaskRunner* local_state_task_runner, |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
121 #endif | 125 #endif |
122 | 126 |
123 virtual ChromeNetLog* net_log() OVERRIDE; | 127 virtual ChromeNetLog* net_log() OVERRIDE; |
124 virtual prerender::PrerenderTracker* prerender_tracker() OVERRIDE; | 128 virtual prerender::PrerenderTracker* prerender_tracker() OVERRIDE; |
125 virtual ComponentUpdateService* component_updater() OVERRIDE; | 129 virtual ComponentUpdateService* component_updater() OVERRIDE; |
126 virtual CRLSetFetcher* crl_set_fetcher() OVERRIDE; | 130 virtual CRLSetFetcher* crl_set_fetcher() OVERRIDE; |
127 virtual PnaclComponentInstaller* pnacl_component_installer() OVERRIDE; | 131 virtual PnaclComponentInstaller* pnacl_component_installer() OVERRIDE; |
128 virtual BookmarkPromptController* bookmark_prompt_controller() OVERRIDE; | 132 virtual BookmarkPromptController* bookmark_prompt_controller() OVERRIDE; |
129 virtual chrome::MediaFileSystemRegistry* | 133 virtual chrome::MediaFileSystemRegistry* |
130 media_file_system_registry() OVERRIDE; | 134 media_file_system_registry() OVERRIDE; |
| 135 virtual void PlatformSpecificCommandLineProcessing( |
| 136 const CommandLine& command_line) OVERRIDE; |
131 virtual bool created_local_state() const OVERRIDE; | 137 virtual bool created_local_state() const OVERRIDE; |
| 138 #if defined(OS_WIN) && defined(USE_AURA) |
| 139 virtual void OnMetroViewerProcessTerminated() OVERRIDE; |
| 140 #endif |
132 | 141 |
133 static void RegisterPrefs(PrefRegistrySimple* registry); | 142 static void RegisterPrefs(PrefRegistrySimple* registry); |
134 | 143 |
135 private: | 144 private: |
136 void CreateMetricsService(); | 145 void CreateMetricsService(); |
137 void CreateWatchdogThread(); | 146 void CreateWatchdogThread(); |
138 void CreateProfileManager(); | 147 void CreateProfileManager(); |
139 void CreateLocalState(); | 148 void CreateLocalState(); |
140 void CreateViewedPageTracker(); | 149 void CreateViewedPageTracker(); |
141 void CreateIconManager(); | 150 void CreateIconManager(); |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
276 // to concerns over integrity of data shared between profiles, | 285 // to concerns over integrity of data shared between profiles, |
277 // but some users of component updater only install per-user. | 286 // but some users of component updater only install per-user. |
278 scoped_ptr<ComponentUpdateService> component_updater_; | 287 scoped_ptr<ComponentUpdateService> component_updater_; |
279 scoped_refptr<CRLSetFetcher> crl_set_fetcher_; | 288 scoped_refptr<CRLSetFetcher> crl_set_fetcher_; |
280 scoped_ptr<PnaclComponentInstaller> pnacl_component_installer_; | 289 scoped_ptr<PnaclComponentInstaller> pnacl_component_installer_; |
281 | 290 |
282 #if defined(ENABLE_PLUGIN_INSTALLATION) | 291 #if defined(ENABLE_PLUGIN_INSTALLATION) |
283 scoped_refptr<PluginsResourceService> plugins_resource_service_; | 292 scoped_refptr<PluginsResourceService> plugins_resource_service_; |
284 #endif | 293 #endif |
285 | 294 |
| 295 #if defined(OS_WIN) && defined(USE_AURA) |
| 296 void PerformInitForWindowsAura(const CommandLine& command_line); |
| 297 |
| 298 // Hosts the channel for the Windows 8 metro viewer process which runs in |
| 299 // the ASH environment. |
| 300 scoped_ptr<MetroViewerProcessHost> metro_viewer_process_host_; |
| 301 #endif |
| 302 |
286 #if defined(OS_MACOSX) | 303 #if defined(OS_MACOSX) |
287 // Hosts the IPC channel factory that App Shims connect to on Mac. | 304 // Hosts the IPC channel factory that App Shims connect to on Mac. |
288 scoped_ptr<AppShimHostManager> app_shim_host_manager_; | 305 scoped_ptr<AppShimHostManager> app_shim_host_manager_; |
289 #endif | 306 #endif |
290 | 307 |
291 scoped_ptr<BrowserProcessPlatformPart> platform_part_; | 308 scoped_ptr<BrowserProcessPlatformPart> platform_part_; |
292 | 309 |
293 // TODO(eroman): Remove this when done debugging 113031. This tracks | 310 // TODO(eroman): Remove this when done debugging 113031. This tracks |
294 // the callstack which released the final module reference count. | 311 // the callstack which released the final module reference count. |
295 base::debug::StackTrace release_last_reference_callstack_; | 312 base::debug::StackTrace release_last_reference_callstack_; |
296 | 313 |
297 DISALLOW_COPY_AND_ASSIGN(BrowserProcessImpl); | 314 DISALLOW_COPY_AND_ASSIGN(BrowserProcessImpl); |
298 }; | 315 }; |
299 | 316 |
300 #endif // CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ | 317 #endif // CHROME_BROWSER_BROWSER_PROCESS_IMPL_H_ |
OLD | NEW |