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

Side by Side Diff: chrome/browser/profiles/profile_io_data.h

Issue 7467012: Modifying prefetch to account for multi-profile. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 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 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_ 5 #ifndef CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_
6 #define CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_ 6 #define CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_
7 #pragma once 7 #pragma once
8 8
9 #include <set> 9 #include <set>
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 12 matching lines...) Expand all
23 class CommandLine; 23 class CommandLine;
24 class ChromeAppCacheService; 24 class ChromeAppCacheService;
25 class ChromeBlobStorageContext; 25 class ChromeBlobStorageContext;
26 class DesktopNotificationService; 26 class DesktopNotificationService;
27 class ExtensionInfoMap; 27 class ExtensionInfoMap;
28 class HostContentSettingsMap; 28 class HostContentSettingsMap;
29 class HostZoomMap; 29 class HostZoomMap;
30 class IOThread; 30 class IOThread;
31 class ProtocolHandlerRegistry; 31 class ProtocolHandlerRegistry;
32 32
33 namespace chrome_browser_net {
34 class Predictor;
35 }
36
33 namespace fileapi { 37 namespace fileapi {
34 class FileSystemContext; 38 class FileSystemContext;
35 } // namespace fileapi 39 } // namespace fileapi
36 40
37 namespace net { 41 namespace net {
38 class DnsCertProvenanceChecker; 42 class DnsCertProvenanceChecker;
39 class NetLog; 43 class NetLog;
40 class ProxyConfigService; 44 class ProxyConfigService;
41 class ProxyService; 45 class ProxyService;
42 class SSLConfigService; 46 class SSLConfigService;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 const std::string& app_id) const; 93 const std::string& app_id) const;
90 const content::ResourceContext& GetResourceContext() const; 94 const content::ResourceContext& GetResourceContext() const;
91 95
92 // These are useful when the Chrome layer is called from the content layer 96 // These are useful when the Chrome layer is called from the content layer
93 // with a content::ResourceContext, and they want access to Chrome data for 97 // with a content::ResourceContext, and they want access to Chrome data for
94 // that profile. 98 // that profile.
95 ExtensionInfoMap* GetExtensionInfoMap() const; 99 ExtensionInfoMap* GetExtensionInfoMap() const;
96 HostContentSettingsMap* GetHostContentSettingsMap() const; 100 HostContentSettingsMap* GetHostContentSettingsMap() const;
97 DesktopNotificationService* GetNotificationService() const; 101 DesktopNotificationService* GetNotificationService() const;
98 102
103 // These functions interact with the Predictor for the associated profile.
104 // The profile_io_data_ owns this predictor.
105 chrome_browser_net::Predictor* GetPredictor();
willchan no longer on Chromium 2011/07/21 12:10:53 This should move to the ProfileImplIOData class si
rpetterson 2011/08/10 02:24:46 Done.
106 void SetPredictor(chrome_browser_net::Predictor* predictor);
107
99 protected: 108 protected:
100 friend class base::RefCountedThreadSafe<ProfileIOData>; 109 friend class base::RefCountedThreadSafe<ProfileIOData>;
101 110
102 class RequestContext : public ChromeURLRequestContext { 111 class RequestContext : public ChromeURLRequestContext {
103 public: 112 public:
104 RequestContext(); 113 RequestContext();
105 virtual ~RequestContext(); 114 virtual ~RequestContext();
106 115
107 // Setter is used to transfer ownership of the ProfileIOData to the context. 116 // Setter is used to transfer ownership of the ProfileIOData to the context.
108 void set_profile_io_data(const ProfileIOData* profile_io_data) { 117 void set_profile_io_data(const ProfileIOData* profile_io_data) {
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 mutable DesktopNotificationService* notification_service_; 270 mutable DesktopNotificationService* notification_service_;
262 mutable base::WeakPtr<prerender::PrerenderManager> prerender_manager_; 271 mutable base::WeakPtr<prerender::PrerenderManager> prerender_manager_;
263 272
264 mutable ResourceContext resource_context_; 273 mutable ResourceContext resource_context_;
265 274
266 // These are only valid in between LazyInitialize() and their accessor being 275 // These are only valid in between LazyInitialize() and their accessor being
267 // called. 276 // called.
268 mutable scoped_refptr<RequestContext> main_request_context_; 277 mutable scoped_refptr<RequestContext> main_request_context_;
269 mutable scoped_refptr<RequestContext> extensions_request_context_; 278 mutable scoped_refptr<RequestContext> extensions_request_context_;
270 279
280 mutable scoped_ptr<chrome_browser_net::Predictor> predictor_;
281
271 DISALLOW_COPY_AND_ASSIGN(ProfileIOData); 282 DISALLOW_COPY_AND_ASSIGN(ProfileIOData);
272 }; 283 };
273 284
274 #endif // CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_ 285 #endif // CHROME_BROWSER_PROFILES_PROFILE_IO_DATA_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698