OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 class gathers state related to a single user profile. | 5 // This class gathers state related to a single user profile. |
6 | 6 |
7 #ifndef CHROME_BROWSER_PROFILE_H__ | 7 #ifndef CHROME_BROWSER_PROFILE_H__ |
8 #define CHROME_BROWSER_PROFILE_H__ | 8 #define CHROME_BROWSER_PROFILE_H__ |
9 | 9 |
10 #include <set> | 10 #include <set> |
11 #include <string> | 11 #include <string> |
12 | 12 |
13 #include "base/basictypes.h" | 13 #include "base/basictypes.h" |
14 #include "base/ref_counted.h" | 14 #include "base/ref_counted.h" |
15 #include "base/scoped_ptr.h" | 15 #include "base/scoped_ptr.h" |
16 #include "base/task.h" | 16 #include "base/task.h" |
17 #include "base/timer.h" | 17 #include "base/timer.h" |
18 #ifdef CHROME_PERSONALIZATION | 18 #ifdef CHROME_PERSONALIZATION |
19 #include "chrome/personalization/personalization.h" | 19 #include "chrome/personalization/personalization.h" |
20 #endif | 20 #endif |
21 #include "chrome/common/notification_service.h" | 21 #include "chrome/common/notification_service.h" |
22 #include "chrome/common/pref_names.h" | 22 #include "chrome/common/pref_names.h" |
23 #include "chrome/common/pref_service.h" | 23 #include "chrome/common/pref_service.h" |
24 | 24 |
25 class BookmarkModel; | 25 class BookmarkModel; |
26 class ChromeURLRequestContext; | 26 class ChromeURLRequestContext; |
27 class DownloadManager; | 27 class DownloadManager; |
28 class ExtensionsService; | 28 class ExtensionsService; |
29 class GreasemonkeyMaster; | |
30 class HistoryService; | 29 class HistoryService; |
31 class NavigationController; | 30 class NavigationController; |
32 class PrefService; | 31 class PrefService; |
33 class SessionService; | 32 class SessionService; |
34 class SpellChecker; | 33 class SpellChecker; |
35 class TabRestoreService; | 34 class TabRestoreService; |
36 class TemplateURLFetcher; | 35 class TemplateURLFetcher; |
37 class TemplateURLModel; | 36 class TemplateURLModel; |
38 class URLRequestContext; | 37 class URLRequestContext; |
| 38 class UserScriptMaster; |
39 class VisitedLinkMaster; | 39 class VisitedLinkMaster; |
40 class WebDataService; | 40 class WebDataService; |
41 | 41 |
42 class Profile { | 42 class Profile { |
43 public: | 43 public: |
44 | 44 |
45 // Profile services are accessed with the following parameter. This parameter | 45 // Profile services are accessed with the following parameter. This parameter |
46 // defines what the caller plans to do with the service. | 46 // defines what the caller plans to do with the service. |
47 // The caller is responsible for not performing any operation that would | 47 // The caller is responsible for not performing any operation that would |
48 // result in persistent implicit records while using an OffTheRecord profile. | 48 // result in persistent implicit records while using an OffTheRecord profile. |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 | 102 |
103 // Retrieves a pointer to the VisitedLinkMaster associated with this | 103 // Retrieves a pointer to the VisitedLinkMaster associated with this |
104 // profile. The VisitedLinkMaster is lazily created the first time | 104 // profile. The VisitedLinkMaster is lazily created the first time |
105 // that this method is called. | 105 // that this method is called. |
106 virtual VisitedLinkMaster* GetVisitedLinkMaster() = 0; | 106 virtual VisitedLinkMaster* GetVisitedLinkMaster() = 0; |
107 | 107 |
108 // Retrieves a pointer to the ExtensionsService associated with this | 108 // Retrieves a pointer to the ExtensionsService associated with this |
109 // profile. The ExtensionsService is created at startup. | 109 // profile. The ExtensionsService is created at startup. |
110 virtual ExtensionsService* GetExtensionsService() = 0; | 110 virtual ExtensionsService* GetExtensionsService() = 0; |
111 | 111 |
112 // Retrieves a pointer to the GreasemonkeyMaster associated with this | 112 // Retrieves a pointer to the UserScriptMaster associated with this |
113 // profile. The GreasemonkeyMaster is lazily created the first time | 113 // profile. The UserScriptMaster is lazily created the first time |
114 // that this method is called. | 114 // that this method is called. |
115 virtual GreasemonkeyMaster* GetGreasemonkeyMaster() = 0; | 115 virtual UserScriptMaster* GetUserScriptMaster() = 0; |
116 | 116 |
117 // Retrieves a pointer to the HistoryService associated with this | 117 // Retrieves a pointer to the HistoryService associated with this |
118 // profile. The HistoryService is lazily created the first time | 118 // profile. The HistoryService is lazily created the first time |
119 // that this method is called. | 119 // that this method is called. |
120 // Although HistoryService is refcounted, this will not addref, and callers | 120 // Although HistoryService is refcounted, this will not addref, and callers |
121 // do not need to do any reference counting as long as they keep the pointer | 121 // do not need to do any reference counting as long as they keep the pointer |
122 // only for the local scope (which they should do anyway since the browser | 122 // only for the local scope (which they should do anyway since the browser |
123 // process may decide to shut down). | 123 // process may decide to shut down). |
124 // | 124 // |
125 // |access| defines what the caller plans to do with the service. See | 125 // |access| defines what the caller plans to do with the service. See |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
253 public NotificationObserver { | 253 public NotificationObserver { |
254 public: | 254 public: |
255 virtual ~ProfileImpl(); | 255 virtual ~ProfileImpl(); |
256 | 256 |
257 // Profile implementation. | 257 // Profile implementation. |
258 virtual std::wstring GetPath(); | 258 virtual std::wstring GetPath(); |
259 virtual bool IsOffTheRecord(); | 259 virtual bool IsOffTheRecord(); |
260 virtual Profile* GetOffTheRecordProfile(); | 260 virtual Profile* GetOffTheRecordProfile(); |
261 virtual Profile* GetOriginalProfile(); | 261 virtual Profile* GetOriginalProfile(); |
262 virtual VisitedLinkMaster* GetVisitedLinkMaster(); | 262 virtual VisitedLinkMaster* GetVisitedLinkMaster(); |
263 virtual GreasemonkeyMaster* GetGreasemonkeyMaster(); | 263 virtual UserScriptMaster* GetUserScriptMaster(); |
264 virtual ExtensionsService* GetExtensionsService(); | 264 virtual ExtensionsService* GetExtensionsService(); |
265 virtual HistoryService* GetHistoryService(ServiceAccessType sat); | 265 virtual HistoryService* GetHistoryService(ServiceAccessType sat); |
266 virtual WebDataService* GetWebDataService(ServiceAccessType sat); | 266 virtual WebDataService* GetWebDataService(ServiceAccessType sat); |
267 virtual PrefService* GetPrefs(); | 267 virtual PrefService* GetPrefs(); |
268 virtual TemplateURLModel* GetTemplateURLModel(); | 268 virtual TemplateURLModel* GetTemplateURLModel(); |
269 virtual TemplateURLFetcher* GetTemplateURLFetcher(); | 269 virtual TemplateURLFetcher* GetTemplateURLFetcher(); |
270 virtual DownloadManager* GetDownloadManager(); | 270 virtual DownloadManager* GetDownloadManager(); |
271 virtual bool HasCreatedDownloadManager() const; | 271 virtual bool HasCreatedDownloadManager() const; |
272 virtual URLRequestContext* GetRequestContext(); | 272 virtual URLRequestContext* GetRequestContext(); |
273 virtual SessionService* GetSessionService(); | 273 virtual SessionService* GetSessionService(); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 // NOTE: This is being currently called in the UI thread, which is OK as long | 314 // NOTE: This is being currently called in the UI thread, which is OK as long |
315 // as the spellchecker object is USED in the IO thread. | 315 // as the spellchecker object is USED in the IO thread. |
316 // The |need_to_broadcast| parameter tells it whether to broadcast the new | 316 // The |need_to_broadcast| parameter tells it whether to broadcast the new |
317 // spellchecker to the resource message filters. | 317 // spellchecker to the resource message filters. |
318 void InitializeSpellChecker(bool need_to_broadcast); | 318 void InitializeSpellChecker(bool need_to_broadcast); |
319 | 319 |
320 std::wstring path_; | 320 std::wstring path_; |
321 bool off_the_record_; | 321 bool off_the_record_; |
322 scoped_ptr<VisitedLinkMaster> visited_link_master_; | 322 scoped_ptr<VisitedLinkMaster> visited_link_master_; |
323 scoped_refptr<ExtensionsService> extensions_service_; | 323 scoped_refptr<ExtensionsService> extensions_service_; |
324 scoped_refptr<GreasemonkeyMaster> greasemonkey_master_; | 324 scoped_refptr<UserScriptMaster> user_script_master_; |
325 scoped_ptr<PrefService> prefs_; | 325 scoped_ptr<PrefService> prefs_; |
326 scoped_ptr<TemplateURLFetcher> template_url_fetcher_; | 326 scoped_ptr<TemplateURLFetcher> template_url_fetcher_; |
327 scoped_ptr<TemplateURLModel> template_url_model_; | 327 scoped_ptr<TemplateURLModel> template_url_model_; |
328 scoped_ptr<BookmarkModel> bookmark_bar_model_; | 328 scoped_ptr<BookmarkModel> bookmark_bar_model_; |
329 | 329 |
330 #ifdef CHROME_PERSONALIZATION | 330 #ifdef CHROME_PERSONALIZATION |
331 scoped_ptr<ProfilePersonalization> personalization_; | 331 scoped_ptr<ProfilePersonalization> personalization_; |
332 #endif | 332 #endif |
333 | 333 |
334 ChromeURLRequestContext* request_context_; | 334 ChromeURLRequestContext* request_context_; |
(...skipping 30 matching lines...) Expand all Loading... |
365 | 365 |
366 // This struct is used to pass the spellchecker object through the notification | 366 // This struct is used to pass the spellchecker object through the notification |
367 // NOTIFY_SPELLCHECKER_REINITIALIZED. This is used as the details for the | 367 // NOTIFY_SPELLCHECKER_REINITIALIZED. This is used as the details for the |
368 // notification service. | 368 // notification service. |
369 struct SpellcheckerReinitializedDetails { | 369 struct SpellcheckerReinitializedDetails { |
370 scoped_refptr<SpellChecker> spellchecker; | 370 scoped_refptr<SpellChecker> spellchecker; |
371 }; | 371 }; |
372 | 372 |
373 #endif // CHROME_BROWSER_PROFILE_H__ | 373 #endif // CHROME_BROWSER_PROFILE_H__ |
374 | 374 |
OLD | NEW |