| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/protocol/browser_handler.h" | 5 #include "content/browser/devtools/protocol/browser_handler.h" |
| 6 | 6 |
| 7 namespace content { | 7 namespace content { |
| 8 namespace devtools { | 8 namespace devtools { |
| 9 namespace browser { | 9 namespace browser { |
| 10 | 10 |
| 11 namespace { |
| 12 const char kTargetTypeWebContents[] = "web_contents"; |
| 13 const char kTargetTypeFrame[] = "frame"; |
| 14 const char kTargetTypeSharedWorker[] = "shared_worker"; |
| 15 const char kTargetTypeServiceWorker[] = "service_worker"; |
| 16 const char kTargetTypeServiceOther[] = "other"; |
| 17 } |
| 18 |
| 11 using Response = DevToolsProtocolClient::Response; | 19 using Response = DevToolsProtocolClient::Response; |
| 12 | 20 |
| 13 BrowserHandler::BrowserHandler() { | 21 BrowserHandler::BrowserHandler() { |
| 14 } | 22 } |
| 15 | 23 |
| 16 BrowserHandler::~BrowserHandler() { | 24 BrowserHandler::~BrowserHandler() { |
| 17 } | 25 } |
| 18 | 26 |
| 19 void BrowserHandler::SetClient(std::unique_ptr<Client> client) { | 27 void BrowserHandler::SetClient(std::unique_ptr<Client> client) { |
| 20 client_.swap(client); | 28 client_.swap(client); |
| 21 } | 29 } |
| 22 | 30 |
| 31 static std::string GetTypeString(DevToolsAgentHost* agent_host) { |
| 32 switch (agent_host->GetType()) { |
| 33 case DevToolsAgentHost::TYPE_WEB_CONTENTS: |
| 34 return kTargetTypeWebContents; |
| 35 case DevToolsAgentHost::TYPE_FRAME: |
| 36 return kTargetTypeFrame; |
| 37 case DevToolsAgentHost::TYPE_SHARED_WORKER: |
| 38 return kTargetTypeSharedWorker; |
| 39 case DevToolsAgentHost::TYPE_SERVICE_WORKER: |
| 40 return kTargetTypeServiceWorker; |
| 41 default: |
| 42 return kTargetTypeServiceOther; |
| 43 } |
| 44 } |
| 45 |
| 23 Response BrowserHandler::CreateBrowserContext(std::string* out_context_id) { | 46 Response BrowserHandler::CreateBrowserContext(std::string* out_context_id) { |
| 24 // For layering reasons this needs to be handled by | 47 // For layering reasons this needs to be handled by |
| 25 // DevToolsManagerDelegate::HandleCommand. | 48 // DevToolsManagerDelegate::HandleCommand. |
| 26 return Response::ServerError("Not supported"); | 49 return Response::ServerError("Not supported"); |
| 27 } | 50 } |
| 28 | 51 |
| 29 Response BrowserHandler::DisposeBrowserContext(const std::string& context_id, | 52 Response BrowserHandler::DisposeBrowserContext(const std::string& context_id, |
| 30 bool* out_success) { | 53 bool* out_success) { |
| 31 // For layering reasons this needs to be handled by | 54 // For layering reasons this needs to be handled by |
| 32 // DevToolsManagerDelegate::HandleCommand. | 55 // DevToolsManagerDelegate::HandleCommand. |
| (...skipping 21 matching lines...) Expand all Loading... |
| 54 } | 77 } |
| 55 | 78 |
| 56 Response BrowserHandler::GetTargets(TargetInfos* infos) { | 79 Response BrowserHandler::GetTargets(TargetInfos* infos) { |
| 57 DevToolsAgentHost::List agents = DevToolsAgentHost::GetOrCreateAll(); | 80 DevToolsAgentHost::List agents = DevToolsAgentHost::GetOrCreateAll(); |
| 58 for (DevToolsAgentHost::List::iterator it = agents.begin(); | 81 for (DevToolsAgentHost::List::iterator it = agents.begin(); |
| 59 it != agents.end(); ++it) { | 82 it != agents.end(); ++it) { |
| 60 DevToolsAgentHost* agent_host = (*it).get(); | 83 DevToolsAgentHost* agent_host = (*it).get(); |
| 61 scoped_refptr<devtools::browser::TargetInfo> info = | 84 scoped_refptr<devtools::browser::TargetInfo> info = |
| 62 devtools::browser::TargetInfo::Create()-> | 85 devtools::browser::TargetInfo::Create()-> |
| 63 set_target_id(agent_host->GetId())-> | 86 set_target_id(agent_host->GetId())-> |
| 64 set_type(agent_host->GetType())-> | 87 set_type(GetTypeString(agent_host))-> |
| 65 set_title(agent_host->GetTitle())-> | 88 set_title(agent_host->GetTitle())-> |
| 66 set_url(agent_host->GetURL().spec()); | 89 set_url(agent_host->GetURL().spec()); |
| 67 infos->push_back(info); | 90 infos->push_back(info); |
| 68 } | 91 } |
| 69 return Response::OK(); | 92 return Response::OK(); |
| 70 } | 93 } |
| 71 | 94 |
| 72 Response BrowserHandler::Attach(const std::string& targetId) { | 95 Response BrowserHandler::Attach(const std::string& targetId) { |
| 73 scoped_refptr<DevToolsAgentHost> agent_host = | 96 scoped_refptr<DevToolsAgentHost> agent_host = |
| 74 DevToolsAgentHost::GetForId(targetId); | 97 DevToolsAgentHost::GetForId(targetId); |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 set_message(message)); | 129 set_message(message)); |
| 107 } | 130 } |
| 108 | 131 |
| 109 void BrowserHandler::AgentHostClosed(DevToolsAgentHost* agent_host, | 132 void BrowserHandler::AgentHostClosed(DevToolsAgentHost* agent_host, |
| 110 bool replaced_with_another_client) { | 133 bool replaced_with_another_client) { |
| 111 } | 134 } |
| 112 | 135 |
| 113 } // namespace browser | 136 } // namespace browser |
| 114 } // namespace devtools | 137 } // namespace devtools |
| 115 } // namespace content | 138 } // namespace content |
| OLD | NEW |