summaryrefslogtreecommitdiffstats
path: root/chrome/browser/net
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-09 16:24:45 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-09 16:24:45 +0000
commit0983c7a0180c34abe1b0d305797e538c65fce6cc (patch)
tree91f81052ba1657bbe7174609d41271b9630cb0c8 /chrome/browser/net
parentbe7f2174ece293c452eb1226c33ea3784c5c7901 (diff)
downloadchromium_src-0983c7a0180c34abe1b0d305797e538c65fce6cc.zip
chromium_src-0983c7a0180c34abe1b0d305797e538c65fce6cc.tar.gz
chromium_src-0983c7a0180c34abe1b0d305797e538c65fce6cc.tar.bz2
Splits ChromeURLDataManager into 2 chunks:
. ChromeURLDataManager is no longer a singleton and is always used on the UI thread. ChromeURLDataManager is now profile specific (you get from the profile). . ChromeURLDataManagerBackend handles the URLRequests and the DataSources. ChromeURLDataManagerBackend is created by ChromeURLRequestContext. All DataSources are now profile specific. There were two that wanted to be global, but have been converted. BUG=52022 71868 TEST=none Review URL: http://codereview.chromium.org/6286131 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74292 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/net')
-rw-r--r--chrome/browser/net/chrome_url_request_context.cc8
-rw-r--r--chrome/browser/net/chrome_url_request_context.h4
2 files changed, 12 insertions, 0 deletions
diff --git a/chrome/browser/net/chrome_url_request_context.cc b/chrome/browser/net/chrome_url_request_context.cc
index e42ae2d..573ffdc 100644
--- a/chrome/browser/net/chrome_url_request_context.cc
+++ b/chrome/browser/net/chrome_url_request_context.cc
@@ -11,6 +11,7 @@
#include "base/string_util.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_thread.h"
+#include "chrome/browser/dom_ui/chrome_url_data_manager_backend.h"
#include "chrome/browser/extensions/extension_service.h"
#include "chrome/browser/extensions/user_script_master.h"
#include "chrome/browser/io_thread.h"
@@ -732,6 +733,13 @@ ChromeURLRequestContext::ChromeURLRequestContext()
CheckCurrentlyOnIOThread();
}
+ChromeURLDataManagerBackend*
+ ChromeURLRequestContext::GetChromeURLDataManagerBackend() {
+ if (!chrome_url_data_manager_backend_.get())
+ chrome_url_data_manager_backend_.reset(new ChromeURLDataManagerBackend());
+ return chrome_url_data_manager_backend_.get();
+}
+
ChromeURLRequestContext::~ChromeURLRequestContext() {
CheckCurrentlyOnIOThread();
diff --git a/chrome/browser/net/chrome_url_request_context.h b/chrome/browser/net/chrome_url_request_context.h
index 5d57b46..943b0fd 100644
--- a/chrome/browser/net/chrome_url_request_context.h
+++ b/chrome/browser/net/chrome_url_request_context.h
@@ -40,6 +40,7 @@ class DnsCertProvenanceChecker;
class NetworkDelegate;
}
+class ChromeURLDataManagerBackend;
class ChromeURLRequestContext;
class ChromeURLRequestContextFactory;
@@ -102,6 +103,8 @@ class ChromeURLRequestContext : public net::URLRequestContext {
return prerender_manager_.get();
}
+ ChromeURLDataManagerBackend* GetChromeURLDataManagerBackend();
+
protected:
virtual ~ChromeURLRequestContext();
@@ -191,6 +194,7 @@ class ChromeURLRequestContext : public net::URLRequestContext {
scoped_refptr<ExtensionInfoMap> extension_info_map_;
scoped_refptr<ExtensionIOEventRouter> extension_io_event_router_;
scoped_refptr<PrerenderManager> prerender_manager_;
+ scoped_ptr<ChromeURLDataManagerBackend> chrome_url_data_manager_backend_;
bool is_off_the_record_;