Refactoring of SessionService into a component part 3.
[chromium-blink-merge.git] / content / child / shared_worker_devtools_agent.h
bloba2d028e7d4ec51d3e355c70a3d069c1a0a1d4cfc
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.
5 #ifndef CONTENT_CHILD_SHARED_WORKER_DEVTOOLS_AGENT_H_
6 #define CONTENT_CHILD_SHARED_WORKER_DEVTOOLS_AGENT_H_
8 #include <string>
10 #include "base/basictypes.h"
12 namespace IPC {
13 class Message;
16 namespace blink {
17 class WebSharedWorker;
18 class WebString;
21 namespace content {
23 class SharedWorkerDevToolsAgent {
24 public:
25 SharedWorkerDevToolsAgent(int route_id, blink::WebSharedWorker*);
26 ~SharedWorkerDevToolsAgent();
28 // Called on the Worker thread.
29 bool OnMessageReceived(const IPC::Message& message);
30 void SendDevToolsMessage(const blink::WebString&);
31 void SaveDevToolsAgentState(const blink::WebString& state);
33 private:
34 void OnAttach(const std::string& host_id);
35 void OnReattach(const std::string& host_id, const std::string& state);
36 void OnDetach();
37 void OnDispatchOnInspectorBackend(const std::string& message);
39 bool Send(IPC::Message* message);
40 const int route_id_;
41 blink::WebSharedWorker* webworker_;
43 DISALLOW_COPY_AND_ASSIGN(SharedWorkerDevToolsAgent);
46 } // namespace content
48 #endif // CONTENT_CHILD_SHARED_WORKER_DEVTOOLS_AGENT_H_