Commit 1f9dc09f authored by Gyuyoung Kim's avatar Gyuyoung Kim Committed by Commit Bot

Clean up all old Mojo uses of WifiDisplayMediaServer

This CL converts remained old Mojo types of WifiDisplayMediaServer
interface to new Mojo types. Major changes are as below,

  - Convert mojom::WifiDisplayMediaServerPtr to
    mojo::PendingRemote|Remote<mojom::WifiDisplayMediaServer>
  - Convert mojo::WifiDisplayMediaServerRequest to
    mojo::PendingReceiver<mojom::WifiDisplayMediaServer>

Bug: 955171
Change-Id: Ifd5c9f95eee9bcb505bf308f09ef6828d29bb276
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1896486
Commit-Queue: Eero Häkkinen <eero.hakkinen@intel.com>
Reviewed-by: default avatarEero Häkkinen <eero.hakkinen@intel.com>
Reviewed-by: default avatarKen Rockot <rockot@google.com>
Cr-Commit-Position: refs/heads/master@{#714161}
parent 0fc2a56f
......@@ -45,20 +45,20 @@ WiFiDisplayMediaServiceImpl::PacketIOBuffer::~PacketIOBuffer() {
// static
void WiFiDisplayMediaServiceImpl::Create(
mojom::WiFiDisplayMediaServiceRequest request) {
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver) {
DCHECK_CURRENTLY_ON(content::BrowserThread::IO);
auto* impl = new WiFiDisplayMediaServiceImpl();
impl->binding_ =
mojo::MakeStrongBinding(base::WrapUnique(impl), std::move(request));
impl->receiver_ =
mojo::MakeSelfOwnedReceiver(base::WrapUnique(impl), std::move(receiver));
}
// static
void WiFiDisplayMediaServiceImpl::BindToRequest(
mojom::WiFiDisplayMediaServiceRequest request,
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver,
content::RenderFrameHost* render_frame_host) {
base::PostTask(
FROM_HERE, {BrowserThread::IO},
base::BindOnce(WiFiDisplayMediaServiceImpl::Create, std::move(request)));
base::BindOnce(WiFiDisplayMediaServiceImpl::Create, std::move(receiver)));
}
WiFiDisplayMediaServiceImpl::WiFiDisplayMediaServiceImpl()
......@@ -127,7 +127,7 @@ void WiFiDisplayMediaServiceImpl::OnSent(int code) {
last_send_code_ = code;
if (code < 0) {
VLOG(1) << "Unrepairable UDP socket error.";
binding_->Close();
receiver_->Close();
return;
}
DCHECK(!write_buffers_.empty());
......
......@@ -9,7 +9,8 @@
#include "base/containers/queue.h"
#include "extensions/common/mojom/wifi_display_session_service.mojom.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "net/base/io_buffer.h"
#include "net/base/ip_endpoint.h"
#include "net/socket/udp_socket.h"
......@@ -23,8 +24,9 @@ namespace extensions {
class WiFiDisplayMediaServiceImpl : public mojom::WiFiDisplayMediaService {
public:
~WiFiDisplayMediaServiceImpl() override;
static void BindToRequest(mojom::WiFiDisplayMediaServiceRequest request,
content::RenderFrameHost* render_frame_host);
static void BindToRequest(
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver,
content::RenderFrameHost* render_frame_host);
void SetDestinationPoint(
const net::IPEndPoint& ip_end_point,
......@@ -32,7 +34,8 @@ class WiFiDisplayMediaServiceImpl : public mojom::WiFiDisplayMediaService {
void SendMediaPacket(mojom::WiFiDisplayMediaPacketPtr packet) override;
private:
static void Create(mojom::WiFiDisplayMediaServiceRequest request);
static void Create(
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver);
WiFiDisplayMediaServiceImpl();
void Send();
void OnSent(int code);
......@@ -40,7 +43,7 @@ class WiFiDisplayMediaServiceImpl : public mojom::WiFiDisplayMediaService {
class PacketIOBuffer;
base::queue<scoped_refptr<PacketIOBuffer>> write_buffers_;
int last_send_code_;
mojo::StrongBindingPtr<mojom::WiFiDisplayMediaService> binding_;
mojo::SelfOwnedReceiverRef<mojom::WiFiDisplayMediaService> receiver_;
base::WeakPtrFactory<WiFiDisplayMediaServiceImpl> weak_factory_;
DISALLOW_COPY_AND_ASSIGN(WiFiDisplayMediaServiceImpl);
......
......@@ -476,21 +476,20 @@ void WiFiDisplayMediaManager::OnMediaPipelineInitialized(bool success) {
// Note: invoked on IO thread
void WiFiDisplayMediaManager::RegisterMediaService(
const scoped_refptr<base::SingleThreadTaskRunner>& main_runner,
mojom::WiFiDisplayMediaServiceRequest request,
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver,
const base::Closure& on_completed) {
auto connect_service_callback =
base::Bind(&WiFiDisplayMediaManager::ConnectToRemoteService,
base::Unretained(this),
base::Passed(&request));
base::Unretained(this), base::Passed(&receiver));
main_runner->PostTaskAndReply(FROM_HERE,
connect_service_callback,
media::BindToCurrentLoop(on_completed));
}
void WiFiDisplayMediaManager::ConnectToRemoteService(
mojom::WiFiDisplayMediaServiceRequest request) {
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver) {
DCHECK(content::RenderThread::Get());
interface_provider_->GetInterface(std::move(request));
interface_provider_->GetInterface(std::move(receiver));
}
} // namespace extensions
......@@ -15,6 +15,7 @@
#include "extensions/common/mojom/wifi_display_session_service.mojom.h"
#include "extensions/renderer/api/display_source/wifi_display/wifi_display_media_packetizer.h"
#include "extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/wds/src/libwds/public/media_manager.h"
......@@ -69,9 +70,10 @@ class WiFiDisplayMediaManager : public wds::SourceMediaManager {
void OnMediaPipelineInitialized(bool success);
void RegisterMediaService(
const scoped_refptr<base::SingleThreadTaskRunner>& main_runner,
mojom::WiFiDisplayMediaServiceRequest service,
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> service,
const base::Closure& on_completed);
void ConnectToRemoteService(mojom::WiFiDisplayMediaServiceRequest request);
void ConnectToRemoteService(
mojo::PendingReceiver<mojom::WiFiDisplayMediaService> receiver);
blink::WebMediaStreamTrack video_track_;
blink::WebMediaStreamTrack audio_track_;
......
......@@ -133,7 +133,7 @@ void WiFiDisplayMediaPipeline::OnInitialize(
break;
case InitializationStep::MEDIA_SERVICE:
service_callback_.Run(
mojo::MakeRequest(&media_service_),
media_service_.BindNewPipeAndPassReceiver(),
base::Bind(&WiFiDisplayMediaPipeline::OnMediaServiceRegistered,
weak_factory_.GetWeakPtr(), callback));
break;
......@@ -204,7 +204,7 @@ void WiFiDisplayMediaPipeline::OnMediaServiceRegistered(
const InitCompletionCallback& callback) {
DCHECK(media_service_);
auto error_callback = base::Bind(error_callback_, kErrorUnableSendMedia);
media_service_.set_connection_error_handler(error_callback);
media_service_.set_disconnect_handler(error_callback);
media_service_->SetDestinationPoint(
net::IPEndPoint(sink_ip_address_,
static_cast<uint16_t>(sink_rtp_ports_.first)),
......
......@@ -18,6 +18,8 @@
#include "extensions/renderer/api/display_source/wifi_display/wifi_display_audio_encoder.h"
#include "extensions/renderer/api/display_source/wifi_display/wifi_display_media_packetizer.h"
#include "extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "third_party/blink/public/platform/web_media_stream_track.h"
#include "third_party/wds/src/libwds/public/media_manager.h"
......@@ -33,7 +35,7 @@ class WiFiDisplayMediaPipeline {
using ErrorCallback = base::Callback<void(const std::string&)>;
using InitCompletionCallback = base::Callback<void(bool)>;
using RegisterMediaServiceCallback =
base::Callback<void(mojom::WiFiDisplayMediaServiceRequest,
base::Callback<void(mojo::PendingReceiver<mojom::WiFiDisplayMediaService>,
const base::Closure&)>;
static std::unique_ptr<WiFiDisplayMediaPipeline> Create(
......@@ -98,7 +100,7 @@ class WiFiDisplayMediaPipeline {
RegisterMediaServiceCallback service_callback_;
ErrorCallback error_callback_;
mojom::WiFiDisplayMediaServicePtr media_service_;
mojo::Remote<mojom::WiFiDisplayMediaService> media_service_;
base::WeakPtrFactory<WiFiDisplayMediaPipeline> weak_factory_;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment