Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(49)

Side by Side Diff: chrome/browser/devtools/remote_debugging_server.cc

Issue 497223003: Revert of Replace StreamListenSocket with StreamSocket in HttpServer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/devtools/remote_debugging_server.h" 5 #include "chrome/browser/devtools/remote_debugging_server.h"
6 6
7 #include "base/path_service.h" 7 #include "base/path_service.h"
8 #include "chrome/browser/devtools/browser_list_tabcontents_provider.h" 8 #include "chrome/browser/devtools/browser_list_tabcontents_provider.h"
9 #include "chrome/browser/ui/webui/devtools_ui.h" 9 #include "chrome/browser/ui/webui/devtools_ui.h"
10 #include "chrome/common/chrome_paths.h" 10 #include "chrome/common/chrome_paths.h"
11 #include "content/public/browser/devtools_http_handler.h" 11 #include "content/public/browser/devtools_http_handler.h"
12 #include "net/socket/tcp_server_socket.h" 12 #include "net/socket/tcp_listen_socket.h"
13
14 namespace {
15
16 class TCPServerSocketFactory
17 : public content::DevToolsHttpHandler::ServerSocketFactory {
18 public:
19 TCPServerSocketFactory(const std::string& address, int port, int backlog)
20 : content::DevToolsHttpHandler::ServerSocketFactory(
21 address, port, backlog) {}
22
23 private:
24 // content::DevToolsHttpHandler::ServerSocketFactory.
25 virtual scoped_ptr<net::ServerSocket> Create() const OVERRIDE {
26 return scoped_ptr<net::ServerSocket>(
27 new net::TCPServerSocket(NULL, net::NetLog::Source()));
28 }
29
30 DISALLOW_COPY_AND_ASSIGN(TCPServerSocketFactory);
31 };
32
33 } // namespace
34 13
35 RemoteDebuggingServer::RemoteDebuggingServer( 14 RemoteDebuggingServer::RemoteDebuggingServer(
36 chrome::HostDesktopType host_desktop_type, 15 chrome::HostDesktopType host_desktop_type,
37 const std::string& ip, 16 const std::string& ip,
38 int port) { 17 int port) {
39 base::FilePath output_dir; 18 base::FilePath output_dir;
40 if (!port) { 19 if (!port) {
41 // The client requested an ephemeral port. Must write the selected 20 // The client requested an ephemeral port. Must write the selected
42 // port to a well-known location in the profile directory to 21 // port to a well-known location in the profile directory to
43 // bootstrap the connection process. 22 // bootstrap the connection process.
44 bool result = PathService::Get(chrome::DIR_USER_DATA, &output_dir); 23 bool result = PathService::Get(chrome::DIR_USER_DATA, &output_dir);
45 DCHECK(result); 24 DCHECK(result);
46 } 25 }
47 26
48 scoped_ptr<content::DevToolsHttpHandler::ServerSocketFactory> factory(
49 new TCPServerSocketFactory(ip, port, 1));
50 devtools_http_handler_ = content::DevToolsHttpHandler::Start( 27 devtools_http_handler_ = content::DevToolsHttpHandler::Start(
51 factory.Pass(), 28 new net::TCPListenSocketFactory(ip, port),
52 "", 29 "",
53 new BrowserListTabContentsProvider(host_desktop_type), 30 new BrowserListTabContentsProvider(host_desktop_type),
54 output_dir); 31 output_dir);
55 } 32 }
56 33
57 RemoteDebuggingServer::~RemoteDebuggingServer() { 34 RemoteDebuggingServer::~RemoteDebuggingServer() {
58 devtools_http_handler_->Stop(); 35 devtools_http_handler_->Stop();
59 } 36 }
OLDNEW
« no previous file with comments | « chrome/browser/devtools/device/android_web_socket.cc ('k') | chrome/test/chromedriver/net/net_util_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698