• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "content/browser/devtools/worker_devtools_message_filter.h"
6 
7 #include "content/browser/devtools/worker_devtools_manager.h"
8 #include "content/common/devtools_messages.h"
9 #include "content/common/worker_messages.h"
10 
11 namespace content {
12 
WorkerDevToolsMessageFilter(int worker_process_host_id)13 WorkerDevToolsMessageFilter::WorkerDevToolsMessageFilter(
14     int worker_process_host_id)
15     : BrowserMessageFilter(DevToolsMsgStart),
16       worker_process_host_id_(worker_process_host_id),
17       current_routing_id_(0) {
18 }
19 
~WorkerDevToolsMessageFilter()20 WorkerDevToolsMessageFilter::~WorkerDevToolsMessageFilter() {
21 }
22 
OnMessageReceived(const IPC::Message & message)23 bool WorkerDevToolsMessageFilter::OnMessageReceived(
24     const IPC::Message& message) {
25   bool handled = true;
26   current_routing_id_ = message.routing_id();
27   IPC_BEGIN_MESSAGE_MAP(WorkerDevToolsMessageFilter, message)
28     IPC_MESSAGE_HANDLER(DevToolsClientMsg_DispatchOnInspectorFrontend,
29                         OnDispatchOnInspectorFrontend)
30     IPC_MESSAGE_HANDLER(DevToolsHostMsg_SaveAgentRuntimeState,
31                         OnSaveAgentRumtimeState)
32     IPC_MESSAGE_UNHANDLED(handled = false)
33   IPC_END_MESSAGE_MAP()
34   return handled;
35 }
36 
OnDispatchOnInspectorFrontend(const std::string & message)37 void WorkerDevToolsMessageFilter::OnDispatchOnInspectorFrontend(
38     const std::string& message) {
39   WorkerDevToolsManager::GetInstance()->ForwardToDevToolsClient(
40       worker_process_host_id_, current_routing_id_, message);
41 }
42 
OnSaveAgentRumtimeState(const std::string & state)43 void WorkerDevToolsMessageFilter::OnSaveAgentRumtimeState(
44     const std::string& state) {
45   WorkerDevToolsManager::GetInstance()->SaveAgentRuntimeState(
46       worker_process_host_id_, current_routing_id_, state);
47 }
48 
49 }  // namespace content
50