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

Side by Side Diff: mojo/application_manager/application_manager.cc

Issue 522443003: Accept inbound connections on unix domain socket (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@bug407782
Patch Set: Deleted extra curly brace, which was closing a namespace too early Created 6 years, 2 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
« no previous file with comments | « mojo/application_manager/application_manager.h ('k') | mojo/mojo.gyp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "mojo/application_manager/application_manager.h" 5 #include "mojo/application_manager/application_manager.h"
6 6
7 #include <stdio.h> 7 #include <stdio.h>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after
199 ServiceProviderPtr service_provider) { 199 ServiceProviderPtr service_provider) {
200 if (interceptor_) { 200 if (interceptor_) {
201 shell_impl->ConnectToClient( 201 shell_impl->ConnectToClient(
202 requestor_url, 202 requestor_url,
203 interceptor_->OnConnectToClient(url, service_provider.Pass())); 203 interceptor_->OnConnectToClient(url, service_provider.Pass()));
204 } else { 204 } else {
205 shell_impl->ConnectToClient(requestor_url, service_provider.Pass()); 205 shell_impl->ConnectToClient(requestor_url, service_provider.Pass());
206 } 206 }
207 } 207 }
208 208
209 void ApplicationManager::RegisterExternalApplication(
210 const GURL& url,
211 ScopedMessagePipeHandle shell_handle) {
212 url_to_shell_impl_[url] =
213 WeakBindToPipe(new ShellImpl(this, url), shell_handle.Pass());
214 }
215
209 void ApplicationManager::RegisterLoadedApplication( 216 void ApplicationManager::RegisterLoadedApplication(
210 const GURL& url, 217 const GURL& url,
211 const GURL& requestor_url, 218 const GURL& requestor_url,
212 ServiceProviderPtr service_provider, 219 ServiceProviderPtr service_provider,
213 ScopedMessagePipeHandle* shell_handle) { 220 ScopedMessagePipeHandle* shell_handle) {
214 ShellImpl* shell_impl = NULL; 221 ShellImpl* shell_impl = NULL;
215 URLToShellImplMap::iterator iter = url_to_shell_impl_.find(url); 222 URLToShellImplMap::iterator iter = url_to_shell_impl_.find(url);
216 if (iter != url_to_shell_impl_.end()) { 223 if (iter != url_to_shell_impl_.end()) {
217 // This can happen because services are loaded asynchronously. So if we get 224 // This can happen because services are loaded asynchronously. So if we get
218 // two requests for the same service close to each other, we might get here 225 // two requests for the same service close to each other, we might get here
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 StubServiceProvider* stub_sp = new StubServiceProvider; 319 StubServiceProvider* stub_sp = new StubServiceProvider;
313 ServiceProviderPtr spp; 320 ServiceProviderPtr spp;
314 BindToProxy(stub_sp, &spp); 321 BindToProxy(stub_sp, &spp);
315 ConnectToApplication(application_url, GURL(), spp.Pass()); 322 ConnectToApplication(application_url, GURL(), spp.Pass());
316 MessagePipe pipe; 323 MessagePipe pipe;
317 stub_sp->GetRemoteServiceProvider()->ConnectToService(interface_name, 324 stub_sp->GetRemoteServiceProvider()->ConnectToService(interface_name,
318 pipe.handle1.Pass()); 325 pipe.handle1.Pass());
319 return pipe.handle0.Pass(); 326 return pipe.handle0.Pass();
320 } 327 }
321 } // namespace mojo 328 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/application_manager/application_manager.h ('k') | mojo/mojo.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698