OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 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 | 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 import "dart:sky.internals" as internals; | 5 // TODO(abarth): Remove this file once clients migrate to the new location. |
6 | 6 export '../mojo/shell.dart'; |
7 import "package:mojo/application.dart"; | |
8 import 'package:mojo/core.dart' as core; | |
9 import "package:mojom/mojo/service_provider.mojom.dart"; | |
10 | |
11 import "embedder.dart"; | |
12 | |
13 ApplicationConnection _initConnection() { | |
14 int rawHandle = internals.takeServicesProvidedByEmbedder(); | |
15 core.MojoHandle proxyHandle = new core.MojoHandle(rawHandle); | |
16 ServiceProviderProxy serviceProvider = null; | |
17 if (proxyHandle.isValid) serviceProvider = | |
18 new ServiceProviderProxy.fromHandle(proxyHandle); | |
19 return new ApplicationConnection(null, serviceProvider); | |
20 } | |
21 | |
22 final ApplicationConnection _connection = _initConnection(); | |
23 | |
24 void requestService(String url, Object proxy) { | |
25 if (embedder.shell == null) _connection.requestService(proxy); | |
26 else embedder.connectToService(url, proxy); | |
27 } | |
OLD | NEW |