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); |
}; |