Commit acc5363d authored by Julie Jeongeun Kim's avatar Julie Jeongeun Kim Committed by Commit Bot

Convert MultiDeviceSetup to new Mojo types

This CL converts MultiDeviceSetupPtr and
MultiDeviceSetupRequest to new Mojo types
using PendingRemote or Remote, PendingReceiver,
and ReceiverSet.

Bug: 955171
Change-Id: I3272aaf011e977fc5272988288df0e1930abac82
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1824735
Commit-Queue: Julie Kim <jkim@igalia.com>
Reviewed-by: default avatarOksana Zhuravlova <oksamyt@chromium.org>
Reviewed-by: default avatarSteven Bennetts <stevenjb@chromium.org>
Reviewed-by: default avatarRyan Hansberry <hansberry@chromium.org>
Reviewed-by: default avatarScott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#701400}
parent 261c0fed
......@@ -195,7 +195,7 @@ void MultiDeviceNotificationPresenter::OnNotificationClicked(
void MultiDeviceNotificationPresenter::ObserveMultiDeviceSetupIfPossible() {
// If already the delegate, there is nothing else to do.
if (multidevice_setup_ptr_)
if (multidevice_setup_remote_)
return;
const SessionControllerImpl* session_controller =
......@@ -220,14 +220,13 @@ void MultiDeviceNotificationPresenter::ObserveMultiDeviceSetupIfPossible() {
if (!service_instance_group)
return;
connector_->BindInterface(
service_manager::ServiceFilter::ByNameInGroup(
chromeos::multidevice_setup::mojom::kServiceName,
*service_instance_group),
&multidevice_setup_ptr_);
connector_->Connect(service_manager::ServiceFilter::ByNameInGroup(
chromeos::multidevice_setup::mojom::kServiceName,
*service_instance_group),
multidevice_setup_remote_.BindNewPipeAndPassReceiver());
// Add this object as the delegate of the MultiDeviceSetup Service.
multidevice_setup_ptr_->SetAccountStatusChangeDelegate(
multidevice_setup_remote_->SetAccountStatusChangeDelegate(
receiver_.BindNewPipeAndPassRemote());
message_center_->AddObserver(this);
......@@ -268,8 +267,8 @@ MultiDeviceNotificationPresenter::CreateNotification(
}
void MultiDeviceNotificationPresenter::FlushForTesting() {
if (multidevice_setup_ptr_)
multidevice_setup_ptr_.FlushForTesting();
if (multidevice_setup_remote_)
multidevice_setup_remote_.FlushForTesting();
}
} // namespace ash
......@@ -15,6 +15,7 @@
#include "base/strings/string16.h"
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "ui/message_center/message_center_observer.h"
namespace message_center {
......@@ -126,8 +127,8 @@ class ASH_EXPORT MultiDeviceNotificationPresenter
// Status::kNoNotificationVisible if there isn't one.
Status notification_status_ = Status::kNoNotificationVisible;
chromeos::multidevice_setup::mojom::MultiDeviceSetupPtr
multidevice_setup_ptr_;
mojo::Remote<chromeos::multidevice_setup::mojom::MultiDeviceSetup>
multidevice_setup_remote_;
mojo::Receiver<
chromeos::multidevice_setup::mojom::AccountStatusChangeDelegate>
receiver_{this};
......
......@@ -490,9 +490,10 @@ service_manager::Connector* OobeUI::GetLoggedInUserMojoConnector() {
}
void OobeUI::BindMultiDeviceSetup(
multidevice_setup::mojom::MultiDeviceSetupRequest request) {
GetLoggedInUserMojoConnector()->BindInterface(
multidevice_setup::mojom::kServiceName, std::move(request));
mojo::PendingReceiver<multidevice_setup::mojom::MultiDeviceSetup>
receiver) {
GetLoggedInUserMojoConnector()->Connect(
multidevice_setup::mojom::kServiceName, std::move(receiver));
}
void OobeUI::BindPrivilegedHostDeviceSetter(
......
......@@ -157,10 +157,11 @@ class OobeUI : public ui::MojoWebUIController {
// display type.
void ConfigureOobeDisplay();
// Adds Mojo bindings for this WebUIController.
// Adds Mojo receivers for this WebUIController.
service_manager::Connector* GetLoggedInUserMojoConnector();
void BindMultiDeviceSetup(
multidevice_setup::mojom::MultiDeviceSetupRequest request);
mojo::PendingReceiver<multidevice_setup::mojom::MultiDeviceSetup>
receiver);
void BindPrivilegedHostDeviceSetter(
multidevice_setup::mojom::PrivilegedHostDeviceSetterRequest request);
void BindCrosNetworkConfig(
......
......@@ -121,14 +121,15 @@ MultiDeviceSetupDialogUI::MultiDeviceSetupDialogUI(content::WebUI* web_ui)
MultiDeviceSetupDialogUI::~MultiDeviceSetupDialogUI() = default;
void MultiDeviceSetupDialogUI::BindMultiDeviceSetup(
chromeos::multidevice_setup::mojom::MultiDeviceSetupRequest request) {
mojo::PendingReceiver<chromeos::multidevice_setup::mojom::MultiDeviceSetup>
receiver) {
service_manager::Connector* connector =
content::BrowserContext::GetConnectorFor(
web_ui()->GetWebContents()->GetBrowserContext());
DCHECK(connector);
connector->BindInterface(chromeos::multidevice_setup::mojom::kServiceName,
std::move(request));
connector->Connect(chromeos::multidevice_setup::mojom::kServiceName,
std::move(receiver));
}
} // namespace multidevice_setup
......
......@@ -12,6 +12,7 @@
#include "base/macros.h"
#include "chrome/browser/ui/webui/chromeos/system_web_dialog_delegate.h"
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "ui/web_dialogs/web_dialog_ui.h"
namespace chromeos {
......@@ -61,7 +62,8 @@ class MultiDeviceSetupDialogUI : public ui::MojoWebDialogUI {
private:
void BindMultiDeviceSetup(
chromeos::multidevice_setup::mojom::MultiDeviceSetupRequest request);
mojo::PendingReceiver<
chromeos::multidevice_setup::mojom::MultiDeviceSetup> receiver);
DISALLOW_COPY_AND_ASSIGN(MultiDeviceSetupDialogUI);
};
......
......@@ -56,14 +56,15 @@ ProximityAuthUI::ProximityAuthUI(
ProximityAuthUI::~ProximityAuthUI() = default;
void ProximityAuthUI::BindMultiDeviceSetup(
chromeos::multidevice_setup::mojom::MultiDeviceSetupRequest request) {
mojo::PendingReceiver<chromeos::multidevice_setup::mojom::MultiDeviceSetup>
receiver) {
service_manager::Connector* connector =
content::BrowserContext::GetConnectorFor(
web_ui()->GetWebContents()->GetBrowserContext());
DCHECK(connector);
connector->BindInterface(chromeos::multidevice_setup::mojom::kServiceName,
std::move(request));
connector->Connect(chromeos::multidevice_setup::mojom::kServiceName,
std::move(receiver));
}
} // namespace multidevice
......
......@@ -10,6 +10,7 @@
#include "base/macros.h"
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "content/public/browser/web_ui_controller.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "ui/webui/mojo_web_ui_controller.h"
namespace chromeos {
......@@ -36,7 +37,8 @@ class ProximityAuthUI : public ui::MojoWebUIController {
protected:
void BindMultiDeviceSetup(
multidevice_setup::mojom::MultiDeviceSetupRequest request);
mojo::PendingReceiver<multidevice_setup::mojom::MultiDeviceSetup>
receiver);
private:
DISALLOW_COPY_AND_ASSIGN(ProximityAuthUI);
......
......@@ -12,12 +12,13 @@ MultiDeviceSetupBase::MultiDeviceSetupBase() = default;
MultiDeviceSetupBase::~MultiDeviceSetupBase() = default;
void MultiDeviceSetupBase::BindRequest(mojom::MultiDeviceSetupRequest request) {
bindings_.AddBinding(this, std::move(request));
void MultiDeviceSetupBase::BindReceiver(
mojo::PendingReceiver<mojom::MultiDeviceSetup> receiver) {
receivers_.Add(this, std::move(receiver));
}
void MultiDeviceSetupBase::CloseAllBindings() {
bindings_.CloseAllBindings();
void MultiDeviceSetupBase::CloseAllReceivers() {
receivers_.Clear();
}
} // namespace multidevice_setup
......
......@@ -6,19 +6,20 @@
#define CHROMEOS_SERVICES_MULTIDEVICE_SETUP_MULTIDEVICE_SETUP_BASE_H_
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "mojo/public/cpp/bindings/binding_set.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/receiver_set.h"
namespace chromeos {
namespace multidevice_setup {
// MultiDeviceSetup implementation which accepts requests to bind to it.
// MultiDeviceSetup implementation which accepts receivers to bind to it.
class MultiDeviceSetupBase : public mojom::MultiDeviceSetup {
public:
~MultiDeviceSetupBase() override;
void BindRequest(mojom::MultiDeviceSetupRequest request);
void CloseAllBindings();
void BindReceiver(mojo::PendingReceiver<mojom::MultiDeviceSetup> receiver);
void CloseAllReceivers();
// Sets the device with the given ID as the multi-device host for this
// account.
......@@ -30,7 +31,7 @@ class MultiDeviceSetupBase : public mojom::MultiDeviceSetup {
MultiDeviceSetupBase();
private:
mojo::BindingSet<mojom::MultiDeviceSetup> bindings_;
mojo::ReceiverSet<mojom::MultiDeviceSetup> receivers_;
DISALLOW_COPY_AND_ASSIGN(MultiDeviceSetupBase);
};
......
......@@ -59,16 +59,16 @@ MultiDeviceSetupService::MultiDeviceSetupService(
MultiDeviceSetupService::~MultiDeviceSetupService() {
// Subclasses may hold onto message response callbacks. It's important that
// all bindings are closed by the time those callbacks are destroyed, or they
// all receivers are closed by the time those callbacks are destroyed, or they
// will DCHECK.
if (multidevice_setup_)
multidevice_setup_->CloseAllBindings();
multidevice_setup_->CloseAllReceivers();
}
void MultiDeviceSetupService::OnStart() {
PA_LOG(VERBOSE) << "MultiDeviceSetupService::OnStart()";
registry_.AddInterface(
base::BindRepeating(&MultiDeviceSetupBase::BindRequest,
base::BindRepeating(&MultiDeviceSetupBase::BindReceiver,
base::Unretained(multidevice_setup_.get())));
registry_.AddInterface(base::BindRepeating(
&PrivilegedHostDeviceSetterBase::BindRequest,
......
......@@ -24,6 +24,7 @@
#include "chromeos/services/multidevice_setup/public/mojom/constants.mojom.h"
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "components/sync_preferences/testing_pref_service_syncable.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "services/service_manager/public/cpp/test/test_connector_factory.h"
#include "testing/gtest/include/gtest/gtest.h"
......@@ -148,8 +149,9 @@ class MultiDeviceSetupServiceTest : public testing::Test {
fake_gcm_device_info_provider_.get());
auto* connector = connector_factory_.GetDefaultConnector();
connector->BindInterface(mojom::kServiceName, &multidevice_setup_ptr_);
multidevice_setup_ptr_.FlushForTesting();
connector->Connect(mojom::kServiceName,
multidevice_setup_remote_.BindNewPipeAndPassReceiver());
multidevice_setup_remote_.FlushForTesting();
connector->BindInterface(mojom::kServiceName,
&privileged_host_device_setter_ptr_);
......@@ -165,7 +167,7 @@ class MultiDeviceSetupServiceTest : public testing::Test {
EXPECT_FALSE(last_debug_event_success_);
base::RunLoop run_loop;
multidevice_setup_ptr_->TriggerEventForDebugging(
multidevice_setup_remote_->TriggerEventForDebugging(
type,
base::BindOnce(&MultiDeviceSetupServiceTest::OnDebugEventTriggered,
base::Unretained(this), run_loop.QuitClosure()));
......@@ -187,8 +189,8 @@ class MultiDeviceSetupServiceTest : public testing::Test {
return fake_multidevice_setup_factory_->instance();
}
mojom::MultiDeviceSetupPtr& multidevice_setup_ptr() {
return multidevice_setup_ptr_;
mojo::Remote<mojom::MultiDeviceSetup>& multidevice_setup_remote() {
return multidevice_setup_remote_;
}
mojom::PrivilegedHostDeviceSetterPtr& privileged_host_device_setter_ptr() {
......@@ -222,7 +224,7 @@ class MultiDeviceSetupServiceTest : public testing::Test {
std::unique_ptr<MultiDeviceSetupService> service_;
base::Optional<bool> last_debug_event_success_;
mojom::MultiDeviceSetupPtr multidevice_setup_ptr_;
mojo::Remote<mojom::MultiDeviceSetup> multidevice_setup_remote_;
mojom::PrivilegedHostDeviceSetterPtr privileged_host_device_setter_ptr_;
DISALLOW_COPY_AND_ASSIGN(MultiDeviceSetupServiceTest);
......@@ -242,44 +244,44 @@ TEST_F(MultiDeviceSetupServiceTest, CallFunctionsBeforeInitialization) {
// SetAccountStatusChangeDelegate().
auto fake_account_status_change_delegate =
std::make_unique<FakeAccountStatusChangeDelegate>();
multidevice_setup_ptr()->SetAccountStatusChangeDelegate(
multidevice_setup_remote()->SetAccountStatusChangeDelegate(
fake_account_status_change_delegate->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
// AddHostStatusObserver().
auto fake_host_status_observer = std::make_unique<FakeHostStatusObserver>();
multidevice_setup_ptr()->AddHostStatusObserver(
multidevice_setup_remote()->AddHostStatusObserver(
fake_host_status_observer->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
// AddFeatureStateObserver().
auto fake_feature_state_observer =
std::make_unique<FakeFeatureStateObserver>();
multidevice_setup_ptr()->AddFeatureStateObserver(
multidevice_setup_remote()->AddFeatureStateObserver(
fake_feature_state_observer->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
// GetEligibleHostDevices().
multidevice_setup_ptr()->GetEligibleHostDevices(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetEligibleHostDevices(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
// GetHostStatus().
multidevice_setup_ptr()->GetHostStatus(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetHostStatus(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
// SetFeatureEnabledState().
multidevice_setup_ptr()->SetFeatureEnabledState(
multidevice_setup_remote()->SetFeatureEnabledState(
mojom::Feature::kBetterTogetherSuite, true /* enabled */, "authToken",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
// GetFeatureStates().
multidevice_setup_ptr()->GetFeatureStates(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetFeatureStates(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
// RetrySetHostNow().
multidevice_setup_ptr()->RetrySetHostNow(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RetrySetHostNow(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
// None of these requests should have been processed yet, since initialization
// was not complete.
......@@ -298,16 +300,16 @@ TEST_F(MultiDeviceSetupServiceTest, CallFunctionsBeforeInitialization) {
}
TEST_F(MultiDeviceSetupServiceTest, SetThenRemoveBeforeInitialization) {
multidevice_setup_ptr()->SetHostDevice("deviceId1", "authToken",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId1", "authToken",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
privileged_host_device_setter_ptr()->SetHostDevice("deviceId2",
base::DoNothing());
privileged_host_device_setter_ptr().FlushForTesting();
multidevice_setup_ptr()->RemoveHostDevice();
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RemoveHostDevice();
multidevice_setup_remote().FlushForTesting();
EXPECT_FALSE(fake_multidevice_setup());
......@@ -321,20 +323,20 @@ TEST_F(MultiDeviceSetupServiceTest, SetThenRemoveBeforeInitialization) {
}
TEST_F(MultiDeviceSetupServiceTest, RemoveThenSetThenSetBeforeInitialization) {
multidevice_setup_ptr()->RemoveHostDevice();
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RemoveHostDevice();
multidevice_setup_remote().FlushForTesting();
privileged_host_device_setter_ptr()->SetHostDevice("deviceId1",
base::DoNothing());
privileged_host_device_setter_ptr().FlushForTesting();
multidevice_setup_ptr()->SetHostDevice("deviceId2", "authToken2",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId2", "authToken2",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
multidevice_setup_ptr()->SetHostDevice("deviceId3", "authToken3",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId3", "authToken3",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_FALSE(fake_multidevice_setup());
......@@ -352,16 +354,16 @@ TEST_F(MultiDeviceSetupServiceTest, RemoveThenSetThenSetBeforeInitialization) {
TEST_F(MultiDeviceSetupServiceTest,
RemoveThenSetThenSetBeforeInitialization_NoAuthToken) {
multidevice_setup_ptr()->RemoveHostDevice();
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RemoveHostDevice();
multidevice_setup_remote().FlushForTesting();
multidevice_setup_ptr()->SetHostDevice("deviceId1", "authToken1",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId1", "authToken1",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
multidevice_setup_ptr()->SetHostDevice("deviceId2", "authToken2",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId2", "authToken2",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
privileged_host_device_setter_ptr()->SetHostDevice("deviceId3",
base::DoNothing());
......@@ -387,62 +389,62 @@ TEST_F(MultiDeviceSetupServiceTest, FinishInitializationFirst) {
// SetAccountStatusChangeDelegate().
auto fake_account_status_change_delegate =
std::make_unique<FakeAccountStatusChangeDelegate>();
multidevice_setup_ptr()->SetAccountStatusChangeDelegate(
multidevice_setup_remote()->SetAccountStatusChangeDelegate(
fake_account_status_change_delegate->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
EXPECT_TRUE(fake_multidevice_setup()->delegate());
// AddHostStatusObserver().
auto fake_host_status_observer = std::make_unique<FakeHostStatusObserver>();
multidevice_setup_ptr()->AddHostStatusObserver(
multidevice_setup_remote()->AddHostStatusObserver(
fake_host_status_observer->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
EXPECT_TRUE(fake_multidevice_setup()->HasAtLeastOneHostStatusObserver());
// AddFeatureStateObserver().
auto fake_feature_state_observer =
std::make_unique<FakeFeatureStateObserver>();
multidevice_setup_ptr()->AddFeatureStateObserver(
multidevice_setup_remote()->AddFeatureStateObserver(
fake_feature_state_observer->GenerateRemote());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
EXPECT_TRUE(fake_multidevice_setup()->HasAtLeastOneFeatureStateObserver());
// GetEligibleHostDevices().
multidevice_setup_ptr()->GetEligibleHostDevices(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetEligibleHostDevices(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->get_eligible_hosts_args().size());
// SetHostDevice().
multidevice_setup_ptr()->SetHostDevice("deviceId", "authToken",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->SetHostDevice("deviceId", "authToken",
base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->set_host_args().size());
// RemoveHostDevice().
multidevice_setup_ptr()->RemoveHostDevice();
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RemoveHostDevice();
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->num_remove_host_calls());
// GetHostStatus().
multidevice_setup_ptr()->GetHostStatus(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetHostStatus(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->get_host_args().size());
// SetFeatureEnabledState().
multidevice_setup_ptr()->SetFeatureEnabledState(
multidevice_setup_remote()->SetFeatureEnabledState(
mojom::Feature::kBetterTogetherSuite, true /* enabled */, "authToken",
base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->set_feature_enabled_args().size());
// GetFeatureStates().
multidevice_setup_ptr()->GetFeatureStates(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->GetFeatureStates(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->get_feature_states_args().size());
// RetrySetHostNow().
multidevice_setup_ptr()->RetrySetHostNow(base::DoNothing());
multidevice_setup_ptr().FlushForTesting();
multidevice_setup_remote()->RetrySetHostNow(base::DoNothing());
multidevice_setup_remote().FlushForTesting();
EXPECT_EQ(1u, fake_multidevice_setup()->retry_set_host_now_args().size());
// SetHostDevice(), without an auth token.
......
......@@ -6,6 +6,7 @@
#include "base/containers/flat_map.h"
#include "chromeos/components/multidevice/remote_device.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
namespace chromeos {
......@@ -63,7 +64,8 @@ FakeMultiDeviceSetup::~FakeMultiDeviceSetup() {
}
void FakeMultiDeviceSetup::BindHandle(mojo::ScopedMessagePipeHandle handle) {
BindRequest(mojom::MultiDeviceSetupRequest(std::move(handle)));
BindReceiver(
mojo::PendingReceiver<mojom::MultiDeviceSetup>(std::move(handle)));
}
void FakeMultiDeviceSetup::FlushForTesting() {
......
......@@ -11,7 +11,6 @@
#include "chromeos/services/multidevice_setup/multidevice_setup_base.h"
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "mojo/public/cpp/bindings/binding_set.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "mojo/public/cpp/bindings/remote_set.h"
......@@ -140,8 +139,6 @@ class FakeMultiDeviceSetup : public MultiDeviceSetupBase {
mojom::PrivilegedHostDeviceSetter::SetHostDeviceCallback>>
set_host_without_auth_args_;
mojo::BindingSet<mojom::MultiDeviceSetup> bindings_;
DISALLOW_COPY_AND_ASSIGN(FakeMultiDeviceSetup);
};
......
......@@ -52,15 +52,16 @@ MultiDeviceSetupClientImpl::MultiDeviceSetupClientImpl(
multidevice::RemoteDeviceCache::Factory::Get()->BuildInstance()),
host_status_with_device_(GenerateDefaultHostStatusWithDevice()),
feature_states_map_(GenerateDefaultFeatureStatesMap()) {
connector->BindInterface(mojom::kServiceName, &multidevice_setup_ptr_);
multidevice_setup_ptr_->AddHostStatusObserver(
connector->Connect(mojom::kServiceName,
multidevice_setup_remote_.BindNewPipeAndPassReceiver());
multidevice_setup_remote_->AddHostStatusObserver(
GenerateHostStatusObserverRemote());
multidevice_setup_ptr_->AddFeatureStateObserver(
multidevice_setup_remote_->AddFeatureStateObserver(
GenerateFeatureStatesObserverRemote());
multidevice_setup_ptr_->GetHostStatus(
multidevice_setup_remote_->GetHostStatus(
base::BindOnce(&MultiDeviceSetupClientImpl::OnHostStatusChanged,
base::Unretained(this)));
multidevice_setup_ptr_->GetFeatureStates(
multidevice_setup_remote_->GetFeatureStates(
base::BindOnce(&MultiDeviceSetupClientImpl::OnFeatureStatesChanged,
base::Unretained(this)));
}
......@@ -69,7 +70,7 @@ MultiDeviceSetupClientImpl::~MultiDeviceSetupClientImpl() = default;
void MultiDeviceSetupClientImpl::GetEligibleHostDevices(
GetEligibleHostDevicesCallback callback) {
multidevice_setup_ptr_->GetEligibleHostDevices(base::BindOnce(
multidevice_setup_remote_->GetEligibleHostDevices(base::BindOnce(
&MultiDeviceSetupClientImpl::OnGetEligibleHostDevicesCompleted,
base::Unretained(this), std::move(callback)));
}
......@@ -78,12 +79,12 @@ void MultiDeviceSetupClientImpl::SetHostDevice(
const std::string& host_device_id,
const std::string& auth_token,
mojom::MultiDeviceSetup::SetHostDeviceCallback callback) {
multidevice_setup_ptr_->SetHostDevice(host_device_id, auth_token,
std::move(callback));
multidevice_setup_remote_->SetHostDevice(host_device_id, auth_token,
std::move(callback));
}
void MultiDeviceSetupClientImpl::RemoveHostDevice() {
multidevice_setup_ptr_->RemoveHostDevice();
multidevice_setup_remote_->RemoveHostDevice();
}
const MultiDeviceSetupClient::HostStatusWithDevice&
......@@ -96,8 +97,8 @@ void MultiDeviceSetupClientImpl::SetFeatureEnabledState(
bool enabled,
const base::Optional<std::string>& auth_token,
mojom::MultiDeviceSetup::SetFeatureEnabledStateCallback callback) {
multidevice_setup_ptr_->SetFeatureEnabledState(feature, enabled, auth_token,
std::move(callback));
multidevice_setup_remote_->SetFeatureEnabledState(
feature, enabled, auth_token, std::move(callback));
}
const MultiDeviceSetupClient::FeatureStatesMap&
......@@ -107,13 +108,14 @@ MultiDeviceSetupClientImpl::GetFeatureStates() const {
void MultiDeviceSetupClientImpl::RetrySetHostNow(
mojom::MultiDeviceSetup::RetrySetHostNowCallback callback) {
multidevice_setup_ptr_->RetrySetHostNow(std::move(callback));
multidevice_setup_remote_->RetrySetHostNow(std::move(callback));
}
void MultiDeviceSetupClientImpl::TriggerEventForDebugging(
mojom::EventTypeForDebugging type,
mojom::MultiDeviceSetup::TriggerEventForDebuggingCallback callback) {
multidevice_setup_ptr_->TriggerEventForDebugging(type, std::move(callback));
multidevice_setup_remote_->TriggerEventForDebugging(type,
std::move(callback));
}
void MultiDeviceSetupClientImpl::OnHostStatusChanged(
......@@ -165,7 +167,7 @@ MultiDeviceSetupClientImpl::GenerateFeatureStatesObserverRemote() {
}
void MultiDeviceSetupClientImpl::FlushForTesting() {
multidevice_setup_ptr_.FlushForTesting();
multidevice_setup_remote_.FlushForTesting();
}
} // namespace multidevice_setup
......
......@@ -18,6 +18,7 @@
#include "chromeos/services/multidevice_setup/public/mojom/multidevice_setup.mojom.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
namespace service_manager {
class Connector;
......@@ -93,7 +94,7 @@ class MultiDeviceSetupClientImpl : public MultiDeviceSetupClient,
void FlushForTesting();
mojom::MultiDeviceSetupPtr multidevice_setup_ptr_;
mojo::Remote<mojom::MultiDeviceSetup> multidevice_setup_remote_;
mojo::Receiver<mojom::HostStatusObserver> host_status_observer_receiver_{
this};
mojo::Receiver<mojom::FeatureStateObserver> feature_state_observer_receiver_{
......
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