| Index: content/browser/devtools/protocol/network_handler.h
|
| diff --git a/content/browser/devtools/protocol/network_handler.h b/content/browser/devtools/protocol/network_handler.h
|
| index 32409ffc906d2d49e92e0505468a64c8bd800d6d..d177483a22107a110e4ff016ed739b86ff742c89 100644
|
| --- a/content/browser/devtools/protocol/network_handler.h
|
| +++ b/content/browser/devtools/protocol/network_handler.h
|
| @@ -8,14 +8,20 @@
|
| #include <memory>
|
|
|
| #include "base/macros.h"
|
| +#include "base/synchronization/lock.h"
|
| #include "content/browser/devtools/protocol/devtools_domain_handler.h"
|
| #include "content/browser/devtools/protocol/network.h"
|
| #include "net/base/net_errors.h"
|
| #include "net/cookies/canonical_cookie.h"
|
|
|
| +namespace net {
|
| +class URLRequest;
|
| +} // namespace net
|
| +
|
| namespace content {
|
|
|
| class DevToolsSession;
|
| +class DevToolsURLInterceptorRequestJob;
|
| class RenderFrameHostImpl;
|
| struct BeginNavigationParams;
|
| struct CommonNavigationParams;
|
| @@ -64,6 +70,19 @@ class NetworkHandler : public DevToolsDomainHandler,
|
| Response SetUserAgentOverride(const std::string& user_agent) override;
|
| Response CanEmulateNetworkConditions(bool* result) override;
|
|
|
| + DispatchResponse EnableFetchInterception(bool enabled) override;
|
| + DispatchResponse AllowRequest(const String& intercept_id) override;
|
| + DispatchResponse BlockRequest(const String& intercept_id,
|
| + const std::string& error_reason) override;
|
| + DispatchResponse ModifyRequest(
|
| + const String& intercept_id,
|
| + Maybe<String> url,
|
| + Maybe<String> method,
|
| + Maybe<String> post_data,
|
| + Maybe<protocol::Network::Headers> headers) override;
|
| + DispatchResponse MockResponse(const String& intercept_id,
|
| + const String& raw_response) override;
|
| +
|
| void NavigationPreloadRequestSent(int worker_version_id,
|
| const std::string& request_id,
|
| const ResourceRequest& request);
|
| @@ -79,14 +98,31 @@ class NetworkHandler : public DevToolsDomainHandler,
|
| net::Error error_code);
|
|
|
| bool enabled() const { return enabled_; }
|
| + bool interception_enabled() const;
|
| std::string UserAgentOverride() const;
|
|
|
| + Network::Frontend* frontend() const { return frontend_.get(); }
|
| +
|
| + void RegisterURLInterceptor(const std::string& intercept_id,
|
| + DevToolsURLInterceptorRequestJob* interceptor);
|
| +
|
| + void UnregisterURLInterceptor(const std::string& intercept_id,
|
| + DevToolsURLInterceptorRequestJob* interceptor);
|
| +
|
| + static std::unique_ptr<Network::Request> CreateRequestFromURLRequest(
|
| + const net::URLRequest* request);
|
| +
|
| private:
|
| std::unique_ptr<Network::Frontend> frontend_;
|
| RenderFrameHostImpl* host_;
|
| bool enabled_;
|
| std::string user_agent_;
|
|
|
| + mutable base::Lock interception_lock_; // Protects members below
|
| + std::unordered_map<std::string, DevToolsURLInterceptorRequestJob*>
|
| + interceptor_map_;
|
| + bool interception_enabled_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(NetworkHandler);
|
| };
|
|
|
|
|