1 // Copyright 2014 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 #ifndef CONTENT_RENDERER_SERVICE_WORKER_EMBEDDED_WORKER_DEVTOOLS_AGENT_H_ 6 #define CONTENT_RENDERER_SERVICE_WORKER_EMBEDDED_WORKER_DEVTOOLS_AGENT_H_ 7 8 #include <string> 9 10 #include "base/basictypes.h" 11 #include "ipc/ipc_listener.h" 12 13 namespace IPC { 14 class Message; 15 } 16 17 namespace blink { 18 class WebEmbeddedWorker; 19 class WebString; 20 } 21 22 namespace content { 23 24 class EmbeddedWorkerDevToolsAgent : public IPC::Listener { 25 public: 26 EmbeddedWorkerDevToolsAgent(blink::WebEmbeddedWorker* webworker, 27 int route_id); 28 virtual ~EmbeddedWorkerDevToolsAgent(); 29 30 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 31 32 private: 33 void OnAttach(const std::string& host_id); 34 void OnReattach(const std::string& host_id, const std::string& state); 35 void OnDetach(); 36 void OnDispatchOnInspectorBackend(const std::string& message); 37 void OnResumeWorkerContext(); 38 39 blink::WebEmbeddedWorker* webworker_; 40 int route_id_; 41 42 DISALLOW_COPY_AND_ASSIGN(EmbeddedWorkerDevToolsAgent); 43 }; 44 45 } // namespace content 46 47 #endif // CONTENT_RENDERER_SERVICE_WORKER_EMBEDDED_WORKER_DEVTOOLS_AGENT_H_ 48