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

Side by Side Diff: chrome/browser/browser_process.h

Issue 6292017: Extended: Add "system" URLRequestContext (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Next iteration Created 9 years, 10 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 // This interface is for managing the global services of the application. Each 5 // This interface is for managing the global services of the application. Each
6 // service is lazily created when requested the first time. The service getters 6 // service is lazily created when requested the first time. The service getters
7 // will return NULL if the service is not available, so callers must check for 7 // will return NULL if the service is not available, so callers must check for
8 // this condition. 8 // this condition.
9 9
10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_H_ 10 #ifndef CHROME_BROWSER_BROWSER_PROCESS_H_
11 #define CHROME_BROWSER_BROWSER_PROCESS_H_ 11 #define CHROME_BROWSER_BROWSER_PROCESS_H_
12 #pragma once 12 #pragma once
13 13
14 #include <string> 14 #include <string>
15 #include <vector> 15 #include <vector>
16 16
17 #include "base/basictypes.h" 17 #include "base/basictypes.h"
18 #include "base/ref_counted.h"
18 #include "ipc/ipc_message.h" 19 #include "ipc/ipc_message.h"
19 20
20 class AutomationProviderList; 21 class AutomationProviderList;
21 22
22 namespace safe_browsing { 23 namespace safe_browsing {
23 class ClientSideDetectionService; 24 class ClientSideDetectionService;
24 } 25 }
25 26
26 class ChromeNetLog; 27 class ChromeNetLog;
27 class DevToolsManager; 28 class DevToolsManager;
28 class DownloadRequestLimiter; 29 class DownloadRequestLimiter;
29 class DownloadStatusUpdater; 30 class DownloadStatusUpdater;
30 class GoogleURLTracker; 31 class GoogleURLTracker;
31 class IconManager; 32 class IconManager;
32 class IntranetRedirectDetector; 33 class IntranetRedirectDetector;
33 class IOThread; 34 class IOThread;
34 class MetricsService; 35 class MetricsService;
35 class NotificationUIManager; 36 class NotificationUIManager;
37 class PrefProxyConfigTracker;
36 class PrefService; 38 class PrefService;
37 class ProfileManager; 39 class ProfileManager;
38 class ResourceDispatcherHost; 40 class ResourceDispatcherHost;
39 class SidebarManager; 41 class SidebarManager;
40 class TabCloseableStateWatcher; 42 class TabCloseableStateWatcher;
41 class ThumbnailGenerator; 43 class ThumbnailGenerator;
44 class URLRequestContextGetter;
42 45
43 namespace base { 46 namespace base {
44 class Thread; 47 class Thread;
45 class WaitableEvent; 48 class WaitableEvent;
46 } 49 }
47 50
51 #if defined(OS_CHROMEOS)
52 namespace chromeos {
53 class ProxyConfigServiceImpl;
54 }
55 #endif // defined(OS_CHROMEOS)
56
48 namespace printing { 57 namespace printing {
49 class PrintJobManager; 58 class PrintJobManager;
50 class PrintPreviewTabController; 59 class PrintPreviewTabController;
51 } 60 }
52 61
53 namespace policy { 62 namespace policy {
54 class ConfigurationPolicyProviderKeeper; 63 class ConfigurationPolicyProviderKeeper;
55 } 64 }
56 65
57 namespace ui { 66 namespace ui {
(...skipping 15 matching lines...) Expand all
73 82
74 // Services: any of these getters may return NULL 83 // Services: any of these getters may return NULL
75 virtual ResourceDispatcherHost* resource_dispatcher_host() = 0; 84 virtual ResourceDispatcherHost* resource_dispatcher_host() = 0;
76 85
77 virtual MetricsService* metrics_service() = 0; 86 virtual MetricsService* metrics_service() = 0;
78 virtual ProfileManager* profile_manager() = 0; 87 virtual ProfileManager* profile_manager() = 0;
79 virtual PrefService* local_state() = 0; 88 virtual PrefService* local_state() = 0;
80 virtual DevToolsManager* devtools_manager() = 0; 89 virtual DevToolsManager* devtools_manager() = 0;
81 virtual SidebarManager* sidebar_manager() = 0; 90 virtual SidebarManager* sidebar_manager() = 0;
82 virtual ui::Clipboard* clipboard() = 0; 91 virtual ui::Clipboard* clipboard() = 0;
92 virtual PrefProxyConfigTracker* pref_proxy_config_tracker() = 0;
93 virtual scoped_refptr<URLRequestContextGetter> system_request_context() = 0;
94
95 #if defined(OS_CHROMEOS)
96 // Returns ChromeOS's ProxyConfigServiceImpl, creating if not yet created.
97 virtual chromeos::ProxyConfigServiceImpl*
98 chromeos_proxy_config_service_impl() = 0;
99 #endif // defined(OS_CHROMEOS)
83 100
84 // Returns the manager for desktop notifications. 101 // Returns the manager for desktop notifications.
85 virtual NotificationUIManager* notification_ui_manager() = 0; 102 virtual NotificationUIManager* notification_ui_manager() = 0;
86 103
87 // Returns the thread that we perform I/O coordination on (network requests, 104 // Returns the thread that we perform I/O coordination on (network requests,
88 // communication with renderers, etc. 105 // communication with renderers, etc.
89 // NOTE: You should ONLY use this to pass to IPC or other objects which must 106 // NOTE: You should ONLY use this to pass to IPC or other objects which must
90 // need a MessageLoop*. If you just want to post a task, use 107 // need a MessageLoop*. If you just want to post a task, use
91 // BrowserThread::PostTask (or other variants) as they take care of checking 108 // BrowserThread::PostTask (or other variants) as they take care of checking
92 // that a thread is still alive, race conditions, lifetime differences etc. 109 // that a thread is still alive, race conditions, lifetime differences etc.
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 226
210 // Used for testing plugin data removal at shutdown. 227 // Used for testing plugin data removal at shutdown.
211 std::string plugin_data_remover_mime_type_; 228 std::string plugin_data_remover_mime_type_;
212 229
213 DISALLOW_COPY_AND_ASSIGN(BrowserProcess); 230 DISALLOW_COPY_AND_ASSIGN(BrowserProcess);
214 }; 231 };
215 232
216 extern BrowserProcess* g_browser_process; 233 extern BrowserProcess* g_browser_process;
217 234
218 #endif // CHROME_BROWSER_BROWSER_PROCESS_H_ 235 #endif // CHROME_BROWSER_BROWSER_PROCESS_H_
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/browser_process_impl.h » ('j') | chrome/browser/browser_process_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698