Index: chrome/browser/devtools/device/port_forwarding_controller.cc |
diff --git a/chrome/browser/devtools/device/port_forwarding_controller.cc b/chrome/browser/devtools/device/port_forwarding_controller.cc |
index 0bc9c17530a4b7f74f3cf4af4cb2c41783a84de3..979c2c34024fa8e6bc82a16074bd3b8cc03834f3 100644 |
--- a/chrome/browser/devtools/device/port_forwarding_controller.cc |
+++ b/chrome/browser/devtools/device/port_forwarding_controller.cc |
@@ -252,11 +252,11 @@ FindBestBrowserForTethering( |
} // namespace |
class PortForwardingController::Connection |
- : public DevToolsAndroidBridge::AndroidWebSocket::Delegate { |
+ : public AndroidDeviceManager::AndroidWebSocket::Delegate { |
public: |
Connection(Registry* registry, |
- scoped_refptr<DevToolsAndroidBridge::RemoteDevice> device, |
- scoped_refptr<DevToolsAndroidBridge::RemoteBrowser> browser, |
+ scoped_refptr<AndroidDeviceManager::Device> device, |
+ const std::string& socket, |
const ForwardingMap& forwarding_map); |
virtual ~Connection(); |
@@ -295,9 +295,8 @@ class PortForwardingController::Connection |
virtual void OnSocketClosed() OVERRIDE; |
PortForwardingController::Registry* registry_; |
- scoped_refptr<DevToolsAndroidBridge::RemoteDevice> device_; |
- scoped_refptr<DevToolsAndroidBridge::RemoteBrowser> browser_; |
- scoped_ptr<DevToolsAndroidBridge::AndroidWebSocket> web_socket_; |
+ scoped_refptr<AndroidDeviceManager::Device> device_; |
+ scoped_ptr<AndroidDeviceManager::AndroidWebSocket> web_socket_; |
int command_id_; |
bool connected_; |
ForwardingMap forwarding_map_; |
@@ -310,12 +309,11 @@ class PortForwardingController::Connection |
PortForwardingController::Connection::Connection( |
Registry* registry, |
- scoped_refptr<DevToolsAndroidBridge::RemoteDevice> device, |
- scoped_refptr<DevToolsAndroidBridge::RemoteBrowser> browser, |
+ scoped_refptr<AndroidDeviceManager::Device> device, |
+ const std::string& socket, |
const ForwardingMap& forwarding_map) |
: registry_(registry), |
device_(device), |
- browser_(browser), |
command_id_(0), |
connected_(false), |
forwarding_map_(forwarding_map), |
@@ -323,7 +321,7 @@ PortForwardingController::Connection::Connection( |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
(*registry_)[device_->serial()] = this; |
web_socket_.reset( |
- browser->CreateWebSocket(kDevToolsRemoteBrowserTarget, this)); |
+ device_->CreateWebSocket(socket, kDevToolsRemoteBrowserTarget, this)); |
} |
PortForwardingController::Connection::~Connection() { |
@@ -532,25 +530,30 @@ PortForwardingController::~PortForwardingController() {} |
PortForwardingController::DevicesStatus |
PortForwardingController::DeviceListChanged( |
- const DevToolsAndroidBridge::RemoteDevices& devices) { |
+ const DevToolsAndroidBridge::DeviceMap& device_map, |
+ const DevToolsAndroidBridge::RemoteDevices& remote_devices) { |
DevicesStatus status; |
if (forwarding_map_.empty()) |
return status; |
for (DevToolsAndroidBridge::RemoteDevices::const_iterator it = |
- devices.begin(); it != devices.end(); ++it) { |
- scoped_refptr<DevToolsAndroidBridge::RemoteDevice> device = *it; |
- if (!device->is_connected()) |
+ remote_devices.begin(); it != remote_devices.end(); ++it) { |
+ scoped_refptr<DevToolsAndroidBridge::RemoteDevice> remote_device = *it; |
+ if (!remote_device->is_connected()) |
continue; |
- Registry::iterator rit = registry_.find(device->serial()); |
+ Registry::iterator rit = registry_.find(remote_device->serial()); |
if (rit == registry_.end()) { |
scoped_refptr<DevToolsAndroidBridge::RemoteBrowser> browser = |
- FindBestBrowserForTethering(device->browsers()); |
+ FindBestBrowserForTethering(remote_device->browsers()); |
if (browser.get()) { |
- new Connection(®istry_, device, browser, forwarding_map_); |
+ DevToolsAndroidBridge::DeviceMap::const_iterator it = |
+ device_map.find(remote_device->serial()); |
+ DCHECK(it != device_map.end()); |
+ new Connection(®istry_, it->second, browser->socket(), |
+ forwarding_map_); |
} |
} else { |
- status[device->serial()] = (*rit).second->GetPortStatusMap(); |
+ status[remote_device->serial()] = (*rit).second->GetPortStatusMap(); |
} |
} |