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

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

Issue 6056007: net: Add namespace net to the remaining files under url_request directory. (Closed)
Patch Set: chromeos fixes Created 9 years, 11 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) 2006-2008 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_CHROME_PLUGIN_BROWSING_CONTEXT_H_ 5 #ifndef CHROME_BROWSER_CHROME_PLUGIN_BROWSING_CONTEXT_H_
6 #define CHROME_BROWSER_CHROME_PLUGIN_BROWSING_CONTEXT_H_ 6 #define CHROME_BROWSER_CHROME_PLUGIN_BROWSING_CONTEXT_H_
7 #pragma once 7 #pragma once
8 8
9 #include <map> 9 #include <map>
10 10
11 #include "base/id_map.h" 11 #include "base/id_map.h"
12 #include "chrome/common/chrome_plugin_api.h" 12 #include "chrome/common/chrome_plugin_api.h"
13 #include "chrome/common/notification_observer.h" 13 #include "chrome/common/notification_observer.h"
14 #include "chrome/common/notification_registrar.h" 14 #include "chrome/common/notification_registrar.h"
15 15
16 namespace net {
16 class URLRequestContext; 17 class URLRequestContext;
18 } // namespace net
17 19
18 // This class manages the mapping between CPBrowsingContexts and 20 // This class manages the mapping between CPBrowsingContexts and
19 // URLRequestContexts. It observes when URLRequestContexts go away, and 21 // URLRequestContexts. It observes when URLRequestContexts go away, and
20 // invalidates the corresponding CPBrowsingContexts. CPBrowsingContexts can be 22 // invalidates the corresponding CPBrowsingContexts. CPBrowsingContexts can be
21 // associated with other data as well, so there can be multiple ones referring 23 // associated with other data as well, so there can be multiple ones referring
22 // to a given URLRequestContext. 24 // to a given URLRequestContext.
23 // Note: This class should be used on the IO thread only. 25 // Note: This class should be used on the IO thread only.
24 class CPBrowsingContextManager : public NotificationObserver { 26 class CPBrowsingContextManager : public NotificationObserver {
25 public: 27 public:
26 static CPBrowsingContextManager* GetInstance(); 28 static CPBrowsingContextManager* GetInstance();
27 29
28 // Note: don't call these directly - use Instance() above. They are public 30 // Note: don't call these directly - use Instance() above. They are public
29 // so Singleton can access them. 31 // so Singleton can access them.
30 CPBrowsingContextManager(); 32 CPBrowsingContextManager();
31 ~CPBrowsingContextManager(); 33 ~CPBrowsingContextManager();
32 34
33 // Generate a new unique CPBrowsingContext ID from the given 35 // Generate a new unique CPBrowsingContext ID from the given
34 // URLRequestContext. Multiple CPBrowsingContexts can map to the same 36 // URLRequestContext. Multiple CPBrowsingContexts can map to the same
35 // URLRequestContext. 37 // URLRequestContext.
36 CPBrowsingContext Allocate(URLRequestContext* context); 38 CPBrowsingContext Allocate(net::URLRequestContext* context);
37 39
38 // Return the URLRequestContext that this CPBrowsingContext refers to, or NULL 40 // Return the URLRequestContext that this CPBrowsingContext refers to, or NULL
39 // if not found. 41 // if not found.
40 URLRequestContext* ToURLRequestContext(CPBrowsingContext id); 42 net::URLRequestContext* ToURLRequestContext(CPBrowsingContext id);
41 43
42 // Return a CPBrowsingContext ID that corresponds to the given 44 // Return a CPBrowsingContext ID that corresponds to the given
43 // URLRequestContext. This function differs from Allocate in that calling 45 // URLRequestContext. This function differs from Allocate in that calling
44 // this multiple times with the same argument gives the same ID. 46 // this multiple times with the same argument gives the same ID.
45 CPBrowsingContext Lookup(URLRequestContext* context); 47 CPBrowsingContext Lookup(net::URLRequestContext* context);
46 48
47 private: 49 private:
48 // NotificationObserver 50 // NotificationObserver
49 virtual void Observe(NotificationType type, 51 virtual void Observe(NotificationType type,
50 const NotificationSource& source, 52 const NotificationSource& source,
51 const NotificationDetails& details); 53 const NotificationDetails& details);
52 54
53 typedef IDMap<URLRequestContext> Map; 55 typedef IDMap<net::URLRequestContext> Map;
54 typedef std::map<URLRequestContext*, CPBrowsingContext> ReverseMap; 56 typedef std::map<net::URLRequestContext*, CPBrowsingContext> ReverseMap;
55 57
56 NotificationRegistrar registrar_; 58 NotificationRegistrar registrar_;
57 59
58 Map map_; // map of CPBrowsingContext -> URLRequestContext 60 Map map_; // map of CPBrowsingContext -> URLRequestContext
59 ReverseMap reverse_map_; // map of URLRequestContext -> CPBrowsingContext 61 ReverseMap reverse_map_; // map of URLRequestContext -> CPBrowsingContext
60 }; 62 };
61 63
62 #endif // CHROME_BROWSER_CHROME_PLUGIN_BROWSING_CONTEXT_H_ 64 #endif // CHROME_BROWSER_CHROME_PLUGIN_BROWSING_CONTEXT_H_
OLDNEW
« no previous file with comments | « chrome/browser/automation/url_request_automation_job.h ('k') | chrome/browser/chrome_plugin_browsing_context.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698