Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(238)

Unified Diff: services/navigation/navigation.cc

Issue 2795883002: Eliminate OnConnect usage (Closed)
Patch Set: . Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: services/navigation/navigation.cc
diff --git a/services/navigation/navigation.cc b/services/navigation/navigation.cc
index 5f929cd5a08729a5c0ab7f1ab746cd25d584199d..acdc9de7e31a69b1133e253aef8db15a1823ced1 100644
--- a/services/navigation/navigation.cc
+++ b/services/navigation/navigation.cc
@@ -42,22 +42,24 @@ Navigation::Navigation()
weak_factory_(this) {
bindings_.set_connection_error_handler(
base::Bind(&Navigation::ViewFactoryLost, base::Unretained(this)));
+ registry_.AddInterface(
+ base::Bind(&Navigation::CreateViewFactory, weak_factory_.GetWeakPtr()));
sky 2017/04/06 23:57:06 Is the weak_factory_ needed anymore?
}
Navigation::~Navigation() {}
-bool Navigation::OnConnect(const service_manager::ServiceInfo& remote_info,
- service_manager::InterfaceRegistry* registry) {
- std::string remote_user_id = remote_info.identity.user_id();
+void Navigation::OnBindInterface(
+ const service_manager::ServiceInfo& source_info,
+ const std::string& interface_name,
+ mojo::ScopedMessagePipeHandle interface_pipe) {
+ std::string remote_user_id = source_info.identity.user_id();
if (!client_user_id_.empty() && client_user_id_ != remote_user_id) {
LOG(ERROR) << "Must have a separate Navigation service instance for "
<< "different BrowserContexts.";
- return false;
+ return;
}
client_user_id_ = remote_user_id;
-
- registry->AddInterface(
- base::Bind(&Navigation::CreateViewFactory, weak_factory_.GetWeakPtr()));
- return true;
+ registry_.BindInterface(source_info.identity, interface_name,
+ std::move(interface_pipe));
}
void Navigation::CreateView(mojom::ViewClientPtr client,

Powered by Google App Engine
This is Rietveld 408576698