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

Side by Side Diff: services/shell/public/cpp/lib/connector_impl.cc

Issue 2118083002: ShellClient -> Service (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mus2
Patch Set: . Created 4 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "services/shell/public/cpp/lib/connector_impl.h" 5 #include "services/shell/public/cpp/lib/connector_impl.h"
6 6
7 #include "base/memory/ptr_util.h" 7 #include "base/memory/ptr_util.h"
8 #include "services/shell/public/cpp/identity.h" 8 #include "services/shell/public/cpp/identity.h"
9 #include "services/shell/public/cpp/lib/connection_impl.h" 9 #include "services/shell/public/cpp/lib/connection_impl.h"
10 10
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 if (params->remote_interfaces()) { 82 if (params->remote_interfaces()) {
83 params->remote_interfaces()->Bind(std::move(remote_interfaces)); 83 params->remote_interfaces()->Bind(std::move(remote_interfaces));
84 registry->set_remote_interfaces(params->remote_interfaces()); 84 registry->set_remote_interfaces(params->remote_interfaces());
85 } else { 85 } else {
86 std::unique_ptr<InterfaceProvider> remote_interface_provider( 86 std::unique_ptr<InterfaceProvider> remote_interface_provider(
87 new InterfaceProvider); 87 new InterfaceProvider);
88 remote_interface_provider->Bind(std::move(remote_interfaces)); 88 remote_interface_provider->Bind(std::move(remote_interfaces));
89 registry->SetRemoteInterfaces(std::move(remote_interface_provider)); 89 registry->SetRemoteInterfaces(std::move(remote_interface_provider));
90 } 90 }
91 91
92 mojom::ShellClientPtr shell_client; 92 mojom::ServicePtr service;
93 mojom::PIDReceiverRequest pid_receiver_request; 93 mojom::PIDReceiverRequest pid_receiver_request;
94 params->TakeClientProcessConnection(&shell_client, &pid_receiver_request); 94 params->TakeClientProcessConnection(&service, &pid_receiver_request);
95 mojom::ClientProcessConnectionPtr client_process_connection; 95 mojom::ClientProcessConnectionPtr client_process_connection;
96 if (shell_client.is_bound() && pid_receiver_request.is_pending()) { 96 if (service.is_bound() && pid_receiver_request.is_pending()) {
97 client_process_connection = mojom::ClientProcessConnection::New(); 97 client_process_connection = mojom::ClientProcessConnection::New();
98 client_process_connection->shell_client = 98 client_process_connection->service =
99 shell_client.PassInterface().PassHandle(); 99 service.PassInterface().PassHandle();
100 client_process_connection->pid_receiver_request = 100 client_process_connection->pid_receiver_request =
101 pid_receiver_request.PassMessagePipe(); 101 pid_receiver_request.PassMessagePipe();
102 } else if (shell_client.is_bound() || pid_receiver_request.is_pending()) { 102 } else if (service.is_bound() || pid_receiver_request.is_pending()) {
103 NOTREACHED() << "If one of shell_client or pid_receiver_request is valid, " 103 NOTREACHED() << "If one of service or pid_receiver_request is valid, "
104 << "both must be valid."; 104 << "both must be valid.";
105 return std::move(registry); 105 return std::move(registry);
106 } 106 }
107 connector_->Connect(mojom::Identity::From(params->target()), 107 connector_->Connect(mojom::Identity::From(params->target()),
108 std::move(remote_request), std::move(local_interfaces), 108 std::move(remote_request), std::move(local_interfaces),
109 std::move(client_process_connection), 109 std::move(client_process_connection),
110 registry->GetConnectCallback()); 110 registry->GetConnectCallback());
111 return std::move(registry); 111 return std::move(registry);
112 } 112 }
113 113
114 std::unique_ptr<Connector> ConnectorImpl::Clone() { 114 std::unique_ptr<Connector> ConnectorImpl::Clone() {
115 mojom::ConnectorPtr connector; 115 mojom::ConnectorPtr connector;
116 connector_->Clone(GetProxy(&connector)); 116 connector_->Clone(GetProxy(&connector));
117 return base::WrapUnique(new ConnectorImpl(connector.PassInterface())); 117 return base::WrapUnique(new ConnectorImpl(connector.PassInterface()));
118 } 118 }
119 119
120 } // namespace shell 120 } // namespace shell
OLDNEW
« no previous file with comments | « services/shell/public/cpp/lib/application_runner.cc ('k') | services/shell/public/cpp/lib/service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698