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 "chrome/browser/devtools/device/usb/usb_device_provider.h" | 5 #include "chrome/browser/devtools/device/usb/usb_device_provider.h" |
6 | 6 |
7 #include "base/strings/stringprintf.h" | 7 #include "base/strings/stringprintf.h" |
8 #include "chrome/browser/devtools/device/adb/adb_device_info_query.h" | 8 #include "chrome/browser/devtools/device/adb/adb_device_info_query.h" |
9 #include "chrome/browser/devtools/device/usb/android_rsa.h" | 9 #include "chrome/browser/devtools/device/usb/android_rsa.h" |
10 #include "chrome/browser/devtools/device/usb/android_usb_device.h" | 10 #include "chrome/browser/devtools/device/usb/android_usb_device.h" |
(...skipping 19 matching lines...) Expand all Loading... |
30 const UsbDeviceProvider::CommandCallback& callback, | 30 const UsbDeviceProvider::CommandCallback& callback, |
31 int result) { | 31 int result) { |
32 if (result <= 0) { | 32 if (result <= 0) { |
33 callback.Run(result, result == 0 ? data : std::string()); | 33 callback.Run(result, result == 0 ? data : std::string()); |
34 delete socket; | 34 delete socket; |
35 return; | 35 return; |
36 } | 36 } |
37 | 37 |
38 std::string new_data = data + std::string(buffer->data(), result); | 38 std::string new_data = data + std::string(buffer->data(), result); |
39 result = | 39 result = |
40 socket->Read(buffer, | 40 socket->Read(buffer.get(), |
41 kBufferSize, | 41 kBufferSize, |
42 base::Bind(&OnRead, socket, buffer, new_data, callback)); | 42 base::Bind(&OnRead, socket, buffer, new_data, callback)); |
43 if (result != net::ERR_IO_PENDING) | 43 if (result != net::ERR_IO_PENDING) |
44 OnRead(socket, buffer, new_data, callback, result); | 44 OnRead(socket, buffer, new_data, callback, result); |
45 } | 45 } |
46 | 46 |
47 void OpenedForCommand(const UsbDeviceProvider::CommandCallback& callback, | 47 void OpenedForCommand(const UsbDeviceProvider::CommandCallback& callback, |
48 net::StreamSocket* socket, | 48 net::StreamSocket* socket, |
49 int result) { | 49 int result) { |
50 if (result != net::OK) { | 50 if (result != net::OK) { |
51 callback.Run(result, std::string()); | 51 callback.Run(result, std::string()); |
52 return; | 52 return; |
53 } | 53 } |
54 scoped_refptr<net::IOBuffer> buffer = new net::IOBuffer(kBufferSize); | 54 scoped_refptr<net::IOBuffer> buffer = new net::IOBuffer(kBufferSize); |
55 result = socket->Read( | 55 result = socket->Read( |
56 buffer, | 56 buffer.get(), |
57 kBufferSize, | 57 kBufferSize, |
58 base::Bind(&OnRead, socket, buffer, std::string(), callback)); | 58 base::Bind(&OnRead, socket, buffer, std::string(), callback)); |
59 if (result != net::ERR_IO_PENDING) | 59 if (result != net::ERR_IO_PENDING) |
60 OnRead(socket, buffer, std::string(), callback, result); | 60 OnRead(socket, buffer, std::string(), callback, result); |
61 } | 61 } |
62 | 62 |
63 void RunCommand(scoped_refptr<AndroidUsbDevice> device, | 63 void RunCommand(scoped_refptr<AndroidUsbDevice> device, |
64 const std::string& command, | 64 const std::string& command, |
65 const UsbDeviceProvider::CommandCallback& callback) { | 65 const UsbDeviceProvider::CommandCallback& callback) { |
66 net::StreamSocket* socket = device->CreateSocket(command); | 66 net::StreamSocket* socket = device->CreateSocket(command); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 device_map_.clear(); | 135 device_map_.clear(); |
136 for (AndroidUsbDevices::const_iterator it = devices.begin(); | 136 for (AndroidUsbDevices::const_iterator it = devices.begin(); |
137 it != devices.end(); ++it) { | 137 it != devices.end(); ++it) { |
138 result.push_back((*it)->serial()); | 138 result.push_back((*it)->serial()); |
139 device_map_[(*it)->serial()] = *it; | 139 device_map_[(*it)->serial()] = *it; |
140 (*it)->InitOnCallerThread(); | 140 (*it)->InitOnCallerThread(); |
141 } | 141 } |
142 callback.Run(result); | 142 callback.Run(result); |
143 } | 143 } |
144 | 144 |
OLD | NEW |