| Index: content/browser/devtools/browser_devtools_agent_host.cc
|
| diff --git a/content/browser/devtools/browser_devtools_agent_host.cc b/content/browser/devtools/browser_devtools_agent_host.cc
|
| index 86d8eecf6668a0a4686abc7a092fce7729e1602a..0d04330f8604b68031c7b6c36ac89be0d2e05e4e 100644
|
| --- a/content/browser/devtools/browser_devtools_agent_host.cc
|
| +++ b/content/browser/devtools/browser_devtools_agent_host.cc
|
| @@ -12,6 +12,7 @@
|
| #include "content/browser/devtools/protocol/memory_handler.h"
|
| #include "content/browser/devtools/protocol/protocol.h"
|
| #include "content/browser/devtools/protocol/system_info_handler.h"
|
| +#include "content/browser/devtools/protocol/target_handler.h"
|
| #include "content/browser/devtools/protocol/tethering_handler.h"
|
| #include "content/browser/devtools/protocol/tracing_handler.h"
|
| #include "content/browser/frame_host/frame_tree_node.h"
|
| @@ -21,15 +22,23 @@ namespace content {
|
| scoped_refptr<DevToolsAgentHost> DevToolsAgentHost::CreateForBrowser(
|
| scoped_refptr<base::SingleThreadTaskRunner> tethering_task_runner,
|
| const CreateServerSocketCallback& socket_callback) {
|
| - return new BrowserDevToolsAgentHost(tethering_task_runner, socket_callback);
|
| + return new BrowserDevToolsAgentHost(
|
| + tethering_task_runner, socket_callback, false);
|
| +}
|
| +
|
| +scoped_refptr<DevToolsAgentHost> DevToolsAgentHost::CreateForDiscovery() {
|
| + CreateServerSocketCallback null_callback;
|
| + return new BrowserDevToolsAgentHost(nullptr, null_callback, true);
|
| }
|
|
|
| BrowserDevToolsAgentHost::BrowserDevToolsAgentHost(
|
| scoped_refptr<base::SingleThreadTaskRunner> tethering_task_runner,
|
| - const CreateServerSocketCallback& socket_callback)
|
| + const CreateServerSocketCallback& socket_callback,
|
| + bool only_discovery)
|
| : DevToolsAgentHostImpl(base::GenerateGUID()),
|
| tethering_task_runner_(tethering_task_runner),
|
| - socket_callback_(socket_callback) {
|
| + socket_callback_(socket_callback),
|
| + only_discovery_(only_discovery) {
|
| NotifyCreated();
|
| }
|
|
|
| @@ -37,6 +46,11 @@ BrowserDevToolsAgentHost::~BrowserDevToolsAgentHost() {
|
| }
|
|
|
| void BrowserDevToolsAgentHost::AttachSession(DevToolsSession* session) {
|
| + if (only_discovery_) {
|
| + session->AddHandler(base::WrapUnique(new protocol::TargetHandler()));
|
| + return;
|
| + }
|
| +
|
| session->AddHandler(base::WrapUnique(new protocol::IOHandler(
|
| GetIOContext())));
|
| session->AddHandler(base::WrapUnique(new protocol::MemoryHandler()));
|
| @@ -80,7 +94,7 @@ bool BrowserDevToolsAgentHost::DispatchProtocolMessage(
|
| const std::string& message) {
|
| int call_id;
|
| std::string method;
|
| - session->Dispatch(message, false, &call_id, &method);
|
| + session->Dispatch(message, &call_id, &method);
|
| return true;
|
| }
|
|
|
|
|