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 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 20 WorkerDevToolsMessageFilter::~WorkerDevToolsMessageFilter() { 21 } 22 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 37 void WorkerDevToolsMessageFilter::OnDispatchOnInspectorFrontend( 38 const std::string& message) { 39 WorkerDevToolsManager::GetInstance()->ForwardToDevToolsClient( 40 worker_process_host_id_, current_routing_id_, message); 41 } 42 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