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

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

Issue 49753002: RAPPOR implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: CityHash Created 6 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
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 // 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_
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 namespace prerender { 71 namespace prerender {
72 class PrerenderTracker; 72 class PrerenderTracker;
73 } 73 }
74 74
75 namespace printing { 75 namespace printing {
76 class BackgroundPrintingManager; 76 class BackgroundPrintingManager;
77 class PrintJobManager; 77 class PrintJobManager;
78 class PrintPreviewDialogController; 78 class PrintPreviewDialogController;
79 } 79 }
80 80
81 namespace rappor {
82 class RapporService;
83 }
84
81 namespace safe_browsing { 85 namespace safe_browsing {
82 class ClientSideDetectionService; 86 class ClientSideDetectionService;
83 } 87 }
84 88
85 // NOT THREAD SAFE, call only from the main thread. 89 // NOT THREAD SAFE, call only from the main thread.
86 // These functions shouldn't return NULL unless otherwise noted. 90 // These functions shouldn't return NULL unless otherwise noted.
87 class BrowserProcess { 91 class BrowserProcess {
88 public: 92 public:
89 BrowserProcess(); 93 BrowserProcess();
90 virtual ~BrowserProcess(); 94 virtual ~BrowserProcess();
91 95
92 // Called when the ResourceDispatcherHost object is created by content. 96 // Called when the ResourceDispatcherHost object is created by content.
93 virtual void ResourceDispatcherHostCreated() = 0; 97 virtual void ResourceDispatcherHostCreated() = 0;
94 98
95 // Invoked when the user is logging out/shutting down. When logging off we may 99 // Invoked when the user is logging out/shutting down. When logging off we may
96 // not have enough time to do a normal shutdown. This method is invoked prior 100 // not have enough time to do a normal shutdown. This method is invoked prior
97 // to normal shutdown and saves any state that must be saved before we are 101 // to normal shutdown and saves any state that must be saved before we are
98 // continue shutdown. 102 // continue shutdown.
99 virtual void EndSession() = 0; 103 virtual void EndSession() = 0;
100 104
101 // Services: any of these getters may return NULL 105 // Services: any of these getters may return NULL
102 virtual MetricsService* metrics_service() = 0; 106 virtual MetricsService* metrics_service() = 0;
107 virtual rappor::RapporService* rappor_service() = 0;
103 virtual ProfileManager* profile_manager() = 0; 108 virtual ProfileManager* profile_manager() = 0;
104 virtual PrefService* local_state() = 0; 109 virtual PrefService* local_state() = 0;
105 virtual net::URLRequestContextGetter* system_request_context() = 0; 110 virtual net::URLRequestContextGetter* system_request_context() = 0;
106 virtual chrome_variations::VariationsService* variations_service() = 0; 111 virtual chrome_variations::VariationsService* variations_service() = 0;
107 112
108 virtual BrowserProcessPlatformPart* platform_part() = 0; 113 virtual BrowserProcessPlatformPart* platform_part() = 0;
109 114
110 virtual extensions::EventRouterForwarder* 115 virtual extensions::EventRouterForwarder*
111 extension_event_router_forwarder() = 0; 116 extension_event_router_forwarder() = 0;
112 117
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 virtual WebRtcLogUploader* webrtc_log_uploader() = 0; 228 virtual WebRtcLogUploader* webrtc_log_uploader() = 0;
224 #endif 229 #endif
225 230
226 private: 231 private:
227 DISALLOW_COPY_AND_ASSIGN(BrowserProcess); 232 DISALLOW_COPY_AND_ASSIGN(BrowserProcess);
228 }; 233 };
229 234
230 extern BrowserProcess* g_browser_process; 235 extern BrowserProcess* g_browser_process;
231 236
232 #endif // CHROME_BROWSER_BROWSER_PROCESS_H_ 237 #endif // CHROME_BROWSER_BROWSER_PROCESS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698