OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/browser/devtools/embedded_worker_devtools_agent_host.h" | 5 #include "content/browser/devtools/embedded_worker_devtools_agent_host.h" |
6 | 6 |
| 7 #include "base/strings/utf_string_conversions.h" |
7 #include "content/browser/devtools/devtools_manager_impl.h" | 8 #include "content/browser/devtools/devtools_manager_impl.h" |
8 #include "content/browser/devtools/devtools_protocol.h" | 9 #include "content/browser/devtools/devtools_protocol.h" |
9 #include "content/browser/devtools/devtools_protocol_constants.h" | 10 #include "content/browser/devtools/devtools_protocol_constants.h" |
| 11 #include "content/browser/shared_worker/shared_worker_service_impl.h" |
10 #include "content/common/devtools_messages.h" | 12 #include "content/common/devtools_messages.h" |
11 #include "content/public/browser/browser_thread.h" | 13 #include "content/public/browser/browser_thread.h" |
12 #include "content/public/browser/render_process_host.h" | 14 #include "content/public/browser/render_process_host.h" |
13 | 15 |
14 namespace content { | 16 namespace content { |
15 | 17 |
16 EmbeddedWorkerDevToolsAgentHost::EmbeddedWorkerDevToolsAgentHost( | 18 EmbeddedWorkerDevToolsAgentHost::EmbeddedWorkerDevToolsAgentHost( |
17 WorkerId worker_id, | 19 WorkerId worker_id, |
18 const SharedWorkerInstance& shared_worker) | 20 const SharedWorkerInstance& shared_worker) |
19 : shared_worker_(new SharedWorkerInstance(shared_worker)), | 21 : shared_worker_(new SharedWorkerInstance(shared_worker)), |
(...skipping 11 matching lines...) Expand all Loading... |
31 worker_id_(worker_id) { | 33 worker_id_(worker_id) { |
32 if (debug_service_worker_on_start) | 34 if (debug_service_worker_on_start) |
33 state_ = WORKER_PAUSED_FOR_DEBUG_ON_START; | 35 state_ = WORKER_PAUSED_FOR_DEBUG_ON_START; |
34 WorkerCreated(); | 36 WorkerCreated(); |
35 } | 37 } |
36 | 38 |
37 bool EmbeddedWorkerDevToolsAgentHost::IsWorker() const { | 39 bool EmbeddedWorkerDevToolsAgentHost::IsWorker() const { |
38 return true; | 40 return true; |
39 } | 41 } |
40 | 42 |
| 43 std::string EmbeddedWorkerDevToolsAgentHost::GetType() { |
| 44 return shared_worker_ ? kTypeWorker : kTypeServiceWorker; |
| 45 } |
| 46 |
| 47 std::string EmbeddedWorkerDevToolsAgentHost::GetTitle() { |
| 48 return shared_worker_ ? base::UTF16ToUTF8(shared_worker_->name()) : ""; |
| 49 } |
| 50 |
| 51 GURL EmbeddedWorkerDevToolsAgentHost::GetURL() { |
| 52 return shared_worker_ ? shared_worker_->url() : GURL(); |
| 53 } |
| 54 |
| 55 bool EmbeddedWorkerDevToolsAgentHost::Activate() { |
| 56 return false; |
| 57 } |
| 58 |
| 59 bool EmbeddedWorkerDevToolsAgentHost::Close() { |
| 60 if (shared_worker_) { |
| 61 return SharedWorkerServiceImpl::GetInstance()->TerminateWorker( |
| 62 worker_id_.first, worker_id_.second); |
| 63 } |
| 64 return false; |
| 65 } |
| 66 |
41 void EmbeddedWorkerDevToolsAgentHost::SendMessageToAgent( | 67 void EmbeddedWorkerDevToolsAgentHost::SendMessageToAgent( |
42 IPC::Message* message_raw) { | 68 IPC::Message* message_raw) { |
43 scoped_ptr<IPC::Message> message(message_raw); | 69 scoped_ptr<IPC::Message> message(message_raw); |
44 if (state_ != WORKER_INSPECTED) | 70 if (state_ != WORKER_INSPECTED) |
45 return; | 71 return; |
46 if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first)) { | 72 if (RenderProcessHost* host = RenderProcessHost::FromID(worker_id_.first)) { |
47 message->set_routing_id(worker_id_.second); | 73 message->set_routing_id(worker_id_.second); |
48 host->Send(message.release()); | 74 host->Send(message.release()); |
49 } | 75 } |
50 } | 76 } |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 DevToolsManagerImpl::GetInstance()->DispatchOnInspectorFrontend( | 176 DevToolsManagerImpl::GetInstance()->DispatchOnInspectorFrontend( |
151 this, message); | 177 this, message); |
152 } | 178 } |
153 | 179 |
154 void EmbeddedWorkerDevToolsAgentHost::OnSaveAgentRuntimeState( | 180 void EmbeddedWorkerDevToolsAgentHost::OnSaveAgentRuntimeState( |
155 const std::string& state) { | 181 const std::string& state) { |
156 saved_agent_state_ = state; | 182 saved_agent_state_ = state; |
157 } | 183 } |
158 | 184 |
159 } // namespace content | 185 } // namespace content |
OLD | NEW |