Chromium Code Reviews| Index: content/browser/devtools/protocol/target_handler.h |
| diff --git a/content/browser/devtools/protocol/target_handler.h b/content/browser/devtools/protocol/target_handler.h |
| index 6a0b02c649f95d93a509de7c98940fa8e6e0a47d..c7e29c9b104a72ea3b3ffcc56d5882295dd53855 100644 |
| --- a/content/browser/devtools/protocol/target_handler.h |
| +++ b/content/browser/devtools/protocol/target_handler.h |
| @@ -11,7 +11,6 @@ |
| #include "content/browser/devtools/protocol/devtools_domain_handler.h" |
| #include "content/browser/devtools/protocol/target.h" |
| #include "content/browser/devtools/service_worker_devtools_manager.h" |
| -#include "content/public/browser/devtools_agent_host_client.h" |
| #include "content/public/browser/devtools_agent_host_observer.h" |
| namespace content { |
| @@ -23,7 +22,6 @@ namespace protocol { |
| class TargetHandler : public DevToolsDomainHandler, |
| public Target::Backend, |
| - public DevToolsAgentHostClient, |
| public ServiceWorkerDevToolsManager::Observer, |
| public DevToolsAgentHostObserver { |
| public: |
| @@ -47,9 +45,9 @@ class TargetHandler : public DevToolsDomainHandler, |
| Response SetRemoteLocations( |
| std::unique_ptr<protocol::Array<Target::RemoteLocation>>) override; |
| Response AttachToTarget(const std::string& target_id, |
| - bool* out_success) override; |
| - Response DetachFromTarget(const std::string& target_id) override; |
| - Response SendMessageToTarget(const std::string& target_id, |
| + Maybe<std::string>* out_session_id) override; |
| + Response DetachFromTarget(const std::string& session_id) override; |
| + Response SendMessageToTarget(const std::string& session_id, |
| const std::string& message) override; |
| Response GetTargetInfo( |
| const std::string& target_id, |
| @@ -79,9 +77,11 @@ class TargetHandler : public DevToolsDomainHandler, |
| bool waiting_for_debugger); |
| void TargetCreatedInternal(DevToolsAgentHost* host); |
| void TargetDestroyedInternal(DevToolsAgentHost* host); |
| - bool AttachToTargetInternal(DevToolsAgentHost* host, |
| - bool waiting_for_debugger); |
| - void DetachFromTargetInternal(DevToolsAgentHost* host); |
| + std::string AttachToTargetInternal(DevToolsAgentHost* host, |
| + bool waiting_for_debugger, |
| + bool is_auto_attach); |
| + bool DetachFromSessionInternal(const std::string& session_id); |
| + bool IsAttachedToAgentHost(DevToolsAgentHost* agent_host); |
| // ServiceWorkerDevToolsManager::Observer implementation. |
| void WorkerCreated(ServiceWorkerDevToolsAgentHost* host) override; |
| @@ -97,11 +97,7 @@ class TargetHandler : public DevToolsDomainHandler, |
| void DevToolsAgentHostAttached(DevToolsAgentHost* agent_host) override; |
| void DevToolsAgentHostDetached(DevToolsAgentHost* agent_host) override; |
| - // DevToolsAgentHostClient implementation. |
| - void DispatchProtocolMessage(DevToolsAgentHost* agent_host, |
| - const std::string& message) override; |
| - void AgentHostClosed(DevToolsAgentHost* agent_host, |
| - bool replaced_with_another_client) override; |
| + class Session; |
| std::unique_ptr<Target::Frontend> frontend_; |
| bool discover_; |
| @@ -109,9 +105,11 @@ class TargetHandler : public DevToolsDomainHandler, |
| bool wait_for_debugger_on_start_; |
| bool attach_to_frames_; |
| RenderFrameHostImpl* render_frame_host_; |
| - HostsMap attached_hosts_; |
| + std::map<std::string, std::unique_ptr<Session>> attached_sessions_; |
| + HostsMap auto_attached_hosts_; |
|
caseq
2017/06/27 18:29:30
Does this have to be a map -- i.e. can it be a set
|
| std::set<GURL> frame_urls_; |
| RawHostsMap reported_hosts_; |
| + int last_session_id_ = 0; |
| DISALLOW_COPY_AND_ASSIGN(TargetHandler); |
| }; |