1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "mojo/shell/connect_util.h"
7 #include "mojo/shell/application_manager.h"
8 #include "mojo/shell/capability_filter.h"
9 #include "mojo/shell/connect_to_application_params.h"
14 ScopedMessagePipeHandle
ConnectToServiceByName(
15 ApplicationManager
* application_manager
,
16 const GURL
& application_url
,
17 const std::string
& interface_name
) {
18 ServiceProviderPtr services
;
19 scoped_ptr
<ConnectToApplicationParams
> params(new ConnectToApplicationParams
);
20 params
->SetURLInfo(application_url
);
21 params
->set_services(GetProxy(&services
));
22 params
->set_filter(GetPermissiveCapabilityFilter());
23 application_manager
->ConnectToApplication(params
.Pass());
25 services
->ConnectToService(interface_name
, pipe
.handle1
.Pass());
26 return pipe
.handle0
.Pass();