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

Unified Diff: chrome/browser/profiles/profile_io_data.cc

Issue 182993003: Add the ability for DevTools to wrap network transactions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/profiles/profile_io_data.h ('k') | chrome/browser/ui/app_list/test/fake_profile.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/profiles/profile_io_data.cc
diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc
index cf9b14cbe2e25490a8b995d4142c04f25c8cf8e3..3d95b8f95528f914f725aa6bab04e5fad20909f4 100644
--- a/chrome/browser/profiles/profile_io_data.cc
+++ b/chrome/browser/profiles/profile_io_data.cc
@@ -28,6 +28,8 @@
#include "chrome/browser/content_settings/host_content_settings_map.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry.h"
#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
+#include "chrome/browser/devtools/devtools_network_controller.h"
+#include "chrome/browser/devtools/devtools_network_transaction_factory.h"
#include "chrome/browser/download/download_service.h"
#include "chrome/browser/download/download_service_factory.h"
#include "chrome/browser/extensions/extension_resource_protocols.h"
@@ -1143,28 +1145,44 @@ void ProfileIOData::DestroyResourceContext() {
resource_context_.reset();
}
-void ProfileIOData::PopulateNetworkSessionParams(
+scoped_ptr<net::HttpCache> ProfileIOData::CreateMainHttpFactory(
const ProfileParams* profile_params,
- net::HttpNetworkSession::Params* params) const {
-
+ net::HttpCache::BackendFactory* main_backend) const {
+ net::HttpNetworkSession::Params params;
ChromeURLRequestContext* context = main_request_context();
IOThread* const io_thread = profile_params->io_thread;
- io_thread->InitializeNetworkSessionParams(params);
-
- params->host_resolver = context->host_resolver();
- params->cert_verifier = context->cert_verifier();
- params->server_bound_cert_service = context->server_bound_cert_service();
- params->transport_security_state = context->transport_security_state();
- params->cert_transparency_verifier = context->cert_transparency_verifier();
- params->proxy_service = context->proxy_service();
- params->ssl_session_cache_shard = GetSSLSessionCacheShard();
- params->ssl_config_service = context->ssl_config_service();
- params->http_auth_handler_factory = context->http_auth_handler_factory();
- params->network_delegate = network_delegate();
- params->http_server_properties = context->http_server_properties();
- params->net_log = context->net_log();
+ io_thread->InitializeNetworkSessionParams(&params);
+
+ params.host_resolver = context->host_resolver();
+ params.cert_verifier = context->cert_verifier();
+ params.server_bound_cert_service = context->server_bound_cert_service();
+ params.transport_security_state = context->transport_security_state();
+ params.cert_transparency_verifier = context->cert_transparency_verifier();
+ params.proxy_service = context->proxy_service();
+ params.ssl_session_cache_shard = GetSSLSessionCacheShard();
+ params.ssl_config_service = context->ssl_config_service();
+ params.http_auth_handler_factory = context->http_auth_handler_factory();
+ params.network_delegate = network_delegate();
+ params.http_server_properties = context->http_server_properties();
+ params.net_log = context->net_log();
+
+ network_controller_.reset(new DevToolsNetworkController());
+
+ net::HttpNetworkSession* session = new net::HttpNetworkSession(params);
+ return scoped_ptr<net::HttpCache>(new net::HttpCache(
+ new DevToolsNetworkTransactionFactory(network_controller_.get(), session),
+ context->net_log(), main_backend));
+}
+
+scoped_ptr<net::HttpCache> ProfileIOData::CreateHttpFactory(
+ net::HttpNetworkSession* shared_session,
+ net::HttpCache::BackendFactory* backend) const {
+ return scoped_ptr<net::HttpCache>(new net::HttpCache(
+ new DevToolsNetworkTransactionFactory(
+ network_controller_.get(), shared_session),
+ shared_session->net_log(), backend));
}
void ProfileIOData::SetCookieSettingsForTesting(
« no previous file with comments | « chrome/browser/profiles/profile_io_data.h ('k') | chrome/browser/ui/app_list/test/fake_profile.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698