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:async'; | 5 import 'dart:async'; |
6 import 'mojo:application'; | 6 import 'mojo:application'; |
7 import 'mojo:bindings'; | 7 import 'mojo:bindings'; |
8 import 'mojo:core'; | 8 import 'mojo:core'; |
9 | 9 |
10 import 'package:mojo/services/console/public/interfaces/console.mojom.dart'; | 10 import 'package:mojo/services/console/public/interfaces/console.mojom.dart'; |
11 | 11 |
12 class ConsoleApplication extends Application { | 12 class ConsoleApplication extends Application { |
13 ConsoleProxy _proxy; | 13 ConsoleProxy _consoleProxy; |
14 Console _console; | |
sky
2015/02/26 18:21:15
I think this pattern (making both the proxy and in
zra
2015/02/26 19:33:58
I agree, just not sure how annoying it will be to
| |
14 | 15 |
15 ConsoleApplication.fromHandle(MojoHandle handle) : super.fromHandle(handle); | 16 ConsoleApplication.fromHandle(MojoHandle handle) : super.fromHandle(handle); |
16 | 17 |
17 void initialize(List<String> args, String url) { | 18 void initialize(List<String> args, String url) { |
18 _proxy = new ConsoleProxy.unbound(); | 19 _consoleProxy = new ConsoleProxy.unbound(); |
19 connectToService("mojo:console", _proxy); | 20 _console = _consoleProxy.interface; |
21 connectToService("mojo:console", _consoleProxy); | |
20 run(); | 22 run(); |
21 } | 23 } |
22 | 24 |
23 run() async { | 25 run() async { |
24 var result = await _proxy.readLine(); | 26 var result = await _console.readLine(); |
25 await _proxy.printLines([result.line]); | 27 await _console.printLines([result.line]); |
26 | 28 |
27 _proxy.close(); | 29 _consoleProxy.impl.close(); |
28 close(); | 30 close(); |
29 } | 31 } |
30 } | 32 } |
31 | 33 |
32 main(List args) { | 34 main(List args) { |
33 var appHandle = new MojoHandle(args[0]); | 35 var appHandle = new MojoHandle(args[0]); |
34 var consoleApplication = new ConsoleApplication.fromHandle(appHandle); | 36 new ConsoleApplication.fromHandle(appHandle); |
35 consoleApplication.listen(); | |
36 } | 37 } |
OLD | NEW |