summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/browser/devtools/device/tcp_device_provider.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/browser/devtools/device/tcp_device_provider.cc')
-rw-r--r--chromium/chrome/browser/devtools/device/tcp_device_provider.cc35
1 files changed, 18 insertions, 17 deletions
diff --git a/chromium/chrome/browser/devtools/device/tcp_device_provider.cc b/chromium/chrome/browser/devtools/device/tcp_device_provider.cc
index 49f340aae90..394538ff6cc 100644
--- a/chromium/chrome/browser/devtools/device/tcp_device_provider.cc
+++ b/chromium/chrome/browser/devtools/device/tcp_device_provider.cc
@@ -18,7 +18,7 @@
#include "chrome/browser/devtools/device/adb/adb_client_socket.h"
#include "chrome/browser/net/system_network_context_manager.h"
#include "content/public/browser/browser_task_traits.h"
-#include "mojo/public/cpp/bindings/binding.h"
+#include "mojo/public/cpp/bindings/receiver.h"
#include "net/base/completion_repeating_callback.h"
#include "net/base/net_errors.h"
#include "net/log/net_log_source.h"
@@ -41,17 +41,16 @@ static void RunSocketCallback(
class ResolveHostAndOpenSocket final : public network::ResolveHostClientBase {
public:
- ResolveHostAndOpenSocket(const net::HostPortPair& address,
- const AdbClientSocket::SocketCallback& callback,
- network::mojom::HostResolverPtr* host_resolver)
- : callback_(callback), binding_(this) {
- network::mojom::ResolveHostClientPtr client_ptr;
- binding_.Bind(mojo::MakeRequest(&client_ptr));
- binding_.set_connection_error_handler(
+ ResolveHostAndOpenSocket(
+ const net::HostPortPair& address,
+ const AdbClientSocket::SocketCallback& callback,
+ mojo::Remote<network::mojom::HostResolver>* host_resolver)
+ : callback_(callback) {
+ (*host_resolver)
+ ->ResolveHost(address, nullptr, receiver_.BindNewPipeAndPassRemote());
+ receiver_.set_disconnect_handler(
base::BindOnce(&ResolveHostAndOpenSocket::OnComplete,
base::Unretained(this), net::ERR_FAILED, base::nullopt));
-
- (*host_resolver)->ResolveHost(address, nullptr, std::move(client_ptr));
}
private:
@@ -77,7 +76,7 @@ class ResolveHostAndOpenSocket final : public network::ResolveHostClientBase {
}
AdbClientSocket::SocketCallback callback_;
- mojo::Binding<network::mojom::ResolveHostClient> binding_;
+ mojo::Receiver<network::mojom::ResolveHostClient> receiver_{this};
};
} // namespace
@@ -157,16 +156,18 @@ TCPDeviceProvider::~TCPDeviceProvider() {
}
void TCPDeviceProvider::InitializeHostResolver() {
- base::PostTask(FROM_HERE, {content::BrowserThread::UI},
- base::BindOnce(&TCPDeviceProvider::InitializeHostResolverOnUI,
- this, mojo::MakeRequest(&host_resolver_)));
- host_resolver_.set_connection_error_handler(base::BindOnce(
+ host_resolver_.reset();
+ base::PostTask(
+ FROM_HERE, {content::BrowserThread::UI},
+ base::BindOnce(&TCPDeviceProvider::InitializeHostResolverOnUI, this,
+ host_resolver_.BindNewPipeAndPassReceiver()));
+ host_resolver_.set_disconnect_handler(base::BindOnce(
&TCPDeviceProvider::InitializeHostResolver, base::Unretained(this)));
}
void TCPDeviceProvider::InitializeHostResolverOnUI(
- network::mojom::HostResolverRequest request) {
+ mojo::PendingReceiver<network::mojom::HostResolver> receiver) {
g_browser_process->system_network_context_manager()
->GetContext()
- ->CreateHostResolver(base::nullopt, std::move(request));
+ ->CreateHostResolver(base::nullopt, std::move(receiver));
}