Commit dda5b70c authored by Sigurd Schneider's avatar Sigurd Schneider Committed by Commit Bot

Make session available to handlers

Change-Id: I2a53835ae1beaf1128ab13af5a734fe83c15ab45
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2346670Reviewed-by: default avatarDmitry Gozman <dgozman@chromium.org>
Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
Cr-Commit-Position: refs/heads/master@{#799557}
parent 3ec08094
...@@ -127,6 +127,7 @@ void DevToolsSession::AddHandler( ...@@ -127,6 +127,7 @@ void DevToolsSession::AddHandler(
std::unique_ptr<protocol::DevToolsDomainHandler> handler) { std::unique_ptr<protocol::DevToolsDomainHandler> handler) {
DCHECK(agent_host_); DCHECK(agent_host_);
handler->Wire(dispatcher_.get()); handler->Wire(dispatcher_.get());
handler->SetSession(this);
handlers_[handler->name()] = std::move(handler); handlers_[handler->name()] = std::move(handler);
} }
......
...@@ -26,5 +26,17 @@ Response DevToolsDomainHandler::Disable() { ...@@ -26,5 +26,17 @@ Response DevToolsDomainHandler::Disable() {
return Response::Success(); return Response::Success();
} }
void DevToolsDomainHandler::SetSession(DevToolsSession* session) {
session_ = session;
}
const std::string& DevToolsDomainHandler::name() const {
return name_;
}
DevToolsSession* DevToolsDomainHandler::session() {
return session_;
}
} // namespace protocol } // namespace protocol
} // namespace content } // namespace content
...@@ -6,10 +6,12 @@ ...@@ -6,10 +6,12 @@
#define CONTENT_BROWSER_DEVTOOLS_PROTOCOL_DEVTOOLS_DOMAIN_HANDLER_H_ #define CONTENT_BROWSER_DEVTOOLS_PROTOCOL_DEVTOOLS_DOMAIN_HANDLER_H_
#include "content/browser/devtools/protocol/forward.h" #include "content/browser/devtools/protocol/forward.h"
#include "content/browser/devtools/shared_worker_devtools_agent_host.h"
namespace content { namespace content {
class RenderFrameHostImpl; class RenderFrameHostImpl;
class DevToolsSession;
namespace protocol { namespace protocol {
...@@ -21,12 +23,17 @@ class DevToolsDomainHandler { ...@@ -21,12 +23,17 @@ class DevToolsDomainHandler {
virtual void SetRenderer(int process_host_id, virtual void SetRenderer(int process_host_id,
RenderFrameHostImpl* frame_host); RenderFrameHostImpl* frame_host);
virtual void Wire(UberDispatcher* dispatcher); virtual void Wire(UberDispatcher* dispatcher);
void SetSession(DevToolsSession* session);
virtual Response Disable(); virtual Response Disable();
const std::string& name() const { return name_; } const std::string& name() const;
protected:
DevToolsSession* session();
private: private:
std::string name_; std::string name_;
DevToolsSession* session_;
DISALLOW_COPY_AND_ASSIGN(DevToolsDomainHandler); DISALLOW_COPY_AND_ASSIGN(DevToolsDomainHandler);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment