summaryrefslogtreecommitdiffstats
path: root/chromecast/browser
diff options
context:
space:
mode:
authordgozman <dgozman@chromium.org>2015-04-20 08:45:46 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-20 15:45:59 +0000
commit102fee9bf48795fced65a8a817a5f62e054e1fc6 (patch)
tree1ad92bd0086fe998507a033187e25503c052da32 /chromecast/browser
parente936869562e01bd1f1d36797641922d9753e580f (diff)
downloadchromium_src-102fee9bf48795fced65a8a817a5f62e054e1fc6.zip
chromium_src-102fee9bf48795fced65a8a817a5f62e054e1fc6.tar.gz
chromium_src-102fee9bf48795fced65a8a817a5f62e054e1fc6.tar.bz2
Componentize devtools_http_handler.
This moves DevToolsHttpHandler into it's own component. It still depends on content::DevToolsTarget, which will be moved to devtools_discovery component next. BUG=476496 Review URL: https://codereview.chromium.org/1089413002 Cr-Commit-Position: refs/heads/master@{#325849}
Diffstat (limited to 'chromecast/browser')
-rw-r--r--chromecast/browser/DEPS1
-rw-r--r--chromecast/browser/devtools/cast_dev_tools_delegate.cc9
-rw-r--r--chromecast/browser/devtools/cast_dev_tools_delegate.h10
-rw-r--r--chromecast/browser/devtools/remote_debugging_server.cc28
-rw-r--r--chromecast/browser/devtools/remote_debugging_server.h10
5 files changed, 34 insertions, 24 deletions
diff --git a/chromecast/browser/DEPS b/chromecast/browser/DEPS
index 6998b2b..e91498e 100644
--- a/chromecast/browser/DEPS
+++ b/chromecast/browser/DEPS
@@ -4,6 +4,7 @@ include_rules = [
"+cc/base/switches.h",
"+chromecast",
"+components/crash",
+ "+components/devtools_http_handler",
"+components/network_hints/browser",
"+content/public/browser",
"+gin/v8_initializer.h",
diff --git a/chromecast/browser/devtools/cast_dev_tools_delegate.cc b/chromecast/browser/devtools/cast_dev_tools_delegate.cc
index 727b47a..d5bbf17 100644
--- a/chromecast/browser/devtools/cast_dev_tools_delegate.cc
+++ b/chromecast/browser/devtools/cast_dev_tools_delegate.cc
@@ -98,12 +98,9 @@ std::string CastDevToolsDelegate::GetDiscoveryPageHTML() {
#endif // defined(OS_ANDROID)
}
-bool CastDevToolsDelegate::BundlesFrontendResources() {
- return false;
-}
-
-base::FilePath CastDevToolsDelegate::GetDebugFrontendDir() {
- return base::FilePath();
+std::string CastDevToolsDelegate::GetFrontendResource(
+ const std::string& path) {
+ return std::string();
}
// CastDevToolsManagerDelegate -----------------------------------------------
diff --git a/chromecast/browser/devtools/cast_dev_tools_delegate.h b/chromecast/browser/devtools/cast_dev_tools_delegate.h
index 809667b..38fbfcb 100644
--- a/chromecast/browser/devtools/cast_dev_tools_delegate.h
+++ b/chromecast/browser/devtools/cast_dev_tools_delegate.h
@@ -5,7 +5,7 @@
#ifndef CHROMECAST_BROWSER_DEVTOOLS_CAST_DEV_TOOLS_DELEGATE_H_
#define CHROMECAST_BROWSER_DEVTOOLS_CAST_DEV_TOOLS_DELEGATE_H_
-#include "content/public/browser/devtools_http_handler_delegate.h"
+#include "components/devtools_http_handler/devtools_http_handler_delegate.h"
#include "content/public/browser/devtools_manager_delegate.h"
#include "net/socket/stream_listen_socket.h"
@@ -20,15 +20,15 @@ class BrowserContext;
namespace chromecast {
namespace shell {
-class CastDevToolsDelegate : public content::DevToolsHttpHandlerDelegate {
+class CastDevToolsDelegate :
+ public devtools_http_handler::DevToolsHttpHandlerDelegate {
public:
CastDevToolsDelegate();
~CastDevToolsDelegate() override;
- // DevToolsHttpHandlerDelegate implementation.
+ // devtools_http_handler::DevToolsHttpHandlerDelegate implementation.
std::string GetDiscoveryPageHTML() override;
- bool BundlesFrontendResources() override;
- base::FilePath GetDebugFrontendDir() override;
+ std::string GetFrontendResource(const std::string& path) override;
private:
DISALLOW_COPY_AND_ASSIGN(CastDevToolsDelegate);
diff --git a/chromecast/browser/devtools/remote_debugging_server.cc b/chromecast/browser/devtools/remote_debugging_server.cc
index 29aa7d8..3b78e38b 100644
--- a/chromecast/browser/devtools/remote_debugging_server.cc
+++ b/chromecast/browser/devtools/remote_debugging_server.cc
@@ -11,10 +11,11 @@
#include "base/strings/stringprintf.h"
#include "chromecast/browser/cast_browser_process.h"
#include "chromecast/browser/devtools/cast_dev_tools_delegate.h"
+#include "chromecast/common/cast_content_client.h"
#include "chromecast/common/pref_names.h"
+#include "components/devtools_http_handler/devtools_http_handler.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_thread.h"
-#include "content/public/browser/devtools_http_handler.h"
#include "content/public/common/content_switches.h"
#include "content/public/common/user_agent.h"
#include "net/base/net_errors.h"
@@ -25,6 +26,8 @@
#include "net/socket/unix_domain_server_socket_posix.h"
#endif // defined(OS_ANDROID)
+using devtools_http_handler::DevToolsHttpHandler;
+
namespace chromecast {
namespace shell {
@@ -38,13 +41,13 @@ const int kBackLog = 10;
#if defined(OS_ANDROID)
class UnixDomainServerSocketFactory
- : public content::DevToolsHttpHandler::ServerSocketFactory {
+ : public DevToolsHttpHandler::ServerSocketFactory {
public:
explicit UnixDomainServerSocketFactory(const std::string& socket_name)
: socket_name_(socket_name) {}
private:
- // content::DevToolsHttpHandler::ServerSocketFactory.
+ // devtools_http_handler::DevToolsHttpHandler::ServerSocketFactory.
scoped_ptr<net::ServerSocket> CreateForHttpServer() override {
scoped_ptr<net::ServerSocket> socket(
new net::UnixDomainServerSocket(
@@ -62,14 +65,14 @@ class UnixDomainServerSocketFactory
};
#else
class TCPServerSocketFactory
- : public content::DevToolsHttpHandler::ServerSocketFactory {
+ : public DevToolsHttpHandler::ServerSocketFactory {
public:
TCPServerSocketFactory(const std::string& address, uint16 port)
: address_(address), port_(port) {
}
private:
- // content::DevToolsHttpHandler::ServerSocketFactory.
+ // devtools_http_handler::DevToolsHttpHandler::ServerSocketFactory.
scoped_ptr<net::ServerSocket> CreateForHttpServer() override {
scoped_ptr<net::ServerSocket> socket(
new net::TCPServerSocket(nullptr, net::NetLog::Source()));
@@ -86,7 +89,7 @@ class TCPServerSocketFactory
};
#endif
-scoped_ptr<content::DevToolsHttpHandler::ServerSocketFactory>
+scoped_ptr<DevToolsHttpHandler::ServerSocketFactory>
CreateSocketFactory(uint16 port) {
#if defined(OS_ANDROID)
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
@@ -95,10 +98,10 @@ CreateSocketFactory(uint16 port) {
socket_name = command_line->GetSwitchValueASCII(
switches::kRemoteDebuggingSocketName);
}
- return scoped_ptr<content::DevToolsHttpHandler::ServerSocketFactory>(
+ return scoped_ptr<DevToolsHttpHandler::ServerSocketFactory>(
new UnixDomainServerSocketFactory(socket_name));
#else
- return scoped_ptr<content::DevToolsHttpHandler::ServerSocketFactory>(
+ return scoped_ptr<DevToolsHttpHandler::ServerSocketFactory>(
new TCPServerSocketFactory("0.0.0.0", port));
#endif
}
@@ -145,11 +148,16 @@ void RemoteDebuggingServer::OnPortChanged() {
port_ = new_port;
if (port_ > 0) {
- devtools_http_handler_.reset(content::DevToolsHttpHandler::Start(
+ manager_delegate_.reset(new CastDevToolsManagerDelegate());
+ devtools_http_handler_.reset(new DevToolsHttpHandler(
CreateSocketFactory(port_),
GetFrontendUrl(),
new CastDevToolsDelegate(),
- base::FilePath()));
+ manager_delegate_.get(),
+ base::FilePath(),
+ base::FilePath(),
+ std::string(),
+ GetUserAgent()));
LOG(INFO) << "Devtools started: port=" << port_;
}
}
diff --git a/chromecast/browser/devtools/remote_debugging_server.h b/chromecast/browser/devtools/remote_debugging_server.h
index ed662f8..2d9e48e 100644
--- a/chromecast/browser/devtools/remote_debugging_server.h
+++ b/chromecast/browser/devtools/remote_debugging_server.h
@@ -8,13 +8,15 @@
#include "base/memory/scoped_ptr.h"
#include "base/prefs/pref_member.h"
-namespace content {
+namespace devtools_http_handler {
class DevToolsHttpHandler;
-} // namespace content
+}
namespace chromecast {
namespace shell {
+class CastDevToolsManagerDelegate;
+
class RemoteDebuggingServer {
public:
RemoteDebuggingServer();
@@ -28,7 +30,9 @@ class RemoteDebuggingServer {
// on device startup.
bool ShouldStartImmediately();
- scoped_ptr<content::DevToolsHttpHandler> devtools_http_handler_;
+ // TODO(dgozman): remove once devtools_discovery component is extracted.
+ scoped_ptr<CastDevToolsManagerDelegate> manager_delegate_;
+ scoped_ptr<devtools_http_handler::DevToolsHttpHandler> devtools_http_handler_;
IntegerPrefMember pref_port_;
uint16 port_;