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

Side by Side Diff: mojo/dart/packages/mojo_services/lib/native_support/process.mojom.dart

Issue 2006093002: Dart: Futures -> Callbacks. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Move code from mojo_patch to proxy.dart Created 4 years, 6 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 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 library process_mojom; 5 library process_mojom;
6 import 'dart:async'; 6 import 'dart:async';
7 import 'package:mojo/bindings.dart' as bindings; 7 import 'package:mojo/bindings.dart' as bindings;
8 import 'package:mojo/core.dart' as core; 8 import 'package:mojo/core.dart' as core;
9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer; 9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer;
10 import 'package:mojo_services/mojo/files/file.mojom.dart' as file_mojom; 10 import 'package:mojo_services/mojo/files/file.mojom.dart' as file_mojom;
11 import 'package:mojo_services/mojo/files/types.mojom.dart' as types_mojom; 11 import 'package:mojo_services/mojo/files/types.mojom.dart' as types_mojom;
12 12
13 13
14 14
15 class _ProcessSpawnParams extends bindings.Struct { 15 class _ProcessSpawnParams extends bindings.Struct {
16 static const List<bindings.StructDataHeader> kVersions = const [ 16 static const List<bindings.StructDataHeader> kVersions = const [
17 const bindings.StructDataHeader(64, 0) 17 const bindings.StructDataHeader(64, 0)
18 ]; 18 ];
19 List<int> path = null; 19 List<int> path = null;
20 List<List<int>> argv = null; 20 List<List<int>> argv = null;
21 List<List<int>> envp = null; 21 List<List<int>> envp = null;
22 file_mojom.FileInterface stdinFile = null; 22 file_mojom.FileInterface stdinFile = null;
23 file_mojom.FileInterface stdoutFile = null; 23 file_mojom.FileInterface stdoutFile = null;
24 file_mojom.FileInterface stderrFile = null; 24 file_mojom.FileInterface stderrFile = null;
25 ProcessControllerInterfaceRequest processController = null; 25 ProcessControllerInterfaceRequest processController = null;
26 26
27 _ProcessSpawnParams() : super(kVersions.last.size); 27 _ProcessSpawnParams() : super(kVersions.last.size);
28 28
29 _ProcessSpawnParams.init(
30 List<int> this.path,
31 List<List<int>> this.argv,
32 List<List<int>> this.envp,
33 file_mojom.FileInterface this.stdinFile,
34 file_mojom.FileInterface this.stdoutFile,
35 file_mojom.FileInterface this.stderrFile,
36 ProcessControllerInterfaceRequest this.processController
37 ) : super(kVersions.last.size);
38
29 static _ProcessSpawnParams deserialize(bindings.Message message) { 39 static _ProcessSpawnParams deserialize(bindings.Message message) {
30 var decoder = new bindings.Decoder(message); 40 var decoder = new bindings.Decoder(message);
31 var result = decode(decoder); 41 var result = decode(decoder);
32 if (decoder.excessHandles != null) { 42 if (decoder.excessHandles != null) {
33 decoder.excessHandles.forEach((h) => h.close()); 43 decoder.excessHandles.forEach((h) => h.close());
34 } 44 }
35 return result; 45 return result;
36 } 46 }
37 47
38 static _ProcessSpawnParams decode(bindings.Decoder decoder0) { 48 static _ProcessSpawnParams decode(bindings.Decoder decoder0) {
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 206
197 207
198 class ProcessSpawnResponseParams extends bindings.Struct { 208 class ProcessSpawnResponseParams extends bindings.Struct {
199 static const List<bindings.StructDataHeader> kVersions = const [ 209 static const List<bindings.StructDataHeader> kVersions = const [
200 const bindings.StructDataHeader(16, 0) 210 const bindings.StructDataHeader(16, 0)
201 ]; 211 ];
202 types_mojom.Error error = null; 212 types_mojom.Error error = null;
203 213
204 ProcessSpawnResponseParams() : super(kVersions.last.size); 214 ProcessSpawnResponseParams() : super(kVersions.last.size);
205 215
216 ProcessSpawnResponseParams.init(
217 types_mojom.Error this.error
218 ) : super(kVersions.last.size);
219
206 static ProcessSpawnResponseParams deserialize(bindings.Message message) { 220 static ProcessSpawnResponseParams deserialize(bindings.Message message) {
207 var decoder = new bindings.Decoder(message); 221 var decoder = new bindings.Decoder(message);
208 var result = decode(decoder); 222 var result = decode(decoder);
209 if (decoder.excessHandles != null) { 223 if (decoder.excessHandles != null) {
210 decoder.excessHandles.forEach((h) => h.close()); 224 decoder.excessHandles.forEach((h) => h.close());
211 } 225 }
212 return result; 226 return result;
213 } 227 }
214 228
215 static ProcessSpawnResponseParams decode(bindings.Decoder decoder0) { 229 static ProcessSpawnResponseParams decode(bindings.Decoder decoder0) {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
276 const bindings.StructDataHeader(48, 0) 290 const bindings.StructDataHeader(48, 0)
277 ]; 291 ];
278 List<int> path = null; 292 List<int> path = null;
279 List<List<int>> argv = null; 293 List<List<int>> argv = null;
280 List<List<int>> envp = null; 294 List<List<int>> envp = null;
281 file_mojom.FileInterface terminalFile = null; 295 file_mojom.FileInterface terminalFile = null;
282 ProcessControllerInterfaceRequest processController = null; 296 ProcessControllerInterfaceRequest processController = null;
283 297
284 _ProcessSpawnWithTerminalParams() : super(kVersions.last.size); 298 _ProcessSpawnWithTerminalParams() : super(kVersions.last.size);
285 299
300 _ProcessSpawnWithTerminalParams.init(
301 List<int> this.path,
302 List<List<int>> this.argv,
303 List<List<int>> this.envp,
304 file_mojom.FileInterface this.terminalFile,
305 ProcessControllerInterfaceRequest this.processController
306 ) : super(kVersions.last.size);
307
286 static _ProcessSpawnWithTerminalParams deserialize(bindings.Message message) { 308 static _ProcessSpawnWithTerminalParams deserialize(bindings.Message message) {
287 var decoder = new bindings.Decoder(message); 309 var decoder = new bindings.Decoder(message);
288 var result = decode(decoder); 310 var result = decode(decoder);
289 if (decoder.excessHandles != null) { 311 if (decoder.excessHandles != null) {
290 decoder.excessHandles.forEach((h) => h.close()); 312 decoder.excessHandles.forEach((h) => h.close());
291 } 313 }
292 return result; 314 return result;
293 } 315 }
294 316
295 static _ProcessSpawnWithTerminalParams decode(bindings.Decoder decoder0) { 317 static _ProcessSpawnWithTerminalParams decode(bindings.Decoder decoder0) {
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 451
430 452
431 class ProcessSpawnWithTerminalResponseParams extends bindings.Struct { 453 class ProcessSpawnWithTerminalResponseParams extends bindings.Struct {
432 static const List<bindings.StructDataHeader> kVersions = const [ 454 static const List<bindings.StructDataHeader> kVersions = const [
433 const bindings.StructDataHeader(16, 0) 455 const bindings.StructDataHeader(16, 0)
434 ]; 456 ];
435 types_mojom.Error error = null; 457 types_mojom.Error error = null;
436 458
437 ProcessSpawnWithTerminalResponseParams() : super(kVersions.last.size); 459 ProcessSpawnWithTerminalResponseParams() : super(kVersions.last.size);
438 460
461 ProcessSpawnWithTerminalResponseParams.init(
462 types_mojom.Error this.error
463 ) : super(kVersions.last.size);
464
439 static ProcessSpawnWithTerminalResponseParams deserialize(bindings.Message mes sage) { 465 static ProcessSpawnWithTerminalResponseParams deserialize(bindings.Message mes sage) {
440 var decoder = new bindings.Decoder(message); 466 var decoder = new bindings.Decoder(message);
441 var result = decode(decoder); 467 var result = decode(decoder);
442 if (decoder.excessHandles != null) { 468 if (decoder.excessHandles != null) {
443 decoder.excessHandles.forEach((h) => h.close()); 469 decoder.excessHandles.forEach((h) => h.close());
444 } 470 }
445 return result; 471 return result;
446 } 472 }
447 473
448 static ProcessSpawnWithTerminalResponseParams decode(bindings.Decoder decoder0 ) { 474 static ProcessSpawnWithTerminalResponseParams decode(bindings.Decoder decoder0 ) {
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
504 } 530 }
505 531
506 532
507 class _ProcessControllerWaitParams extends bindings.Struct { 533 class _ProcessControllerWaitParams extends bindings.Struct {
508 static const List<bindings.StructDataHeader> kVersions = const [ 534 static const List<bindings.StructDataHeader> kVersions = const [
509 const bindings.StructDataHeader(8, 0) 535 const bindings.StructDataHeader(8, 0)
510 ]; 536 ];
511 537
512 _ProcessControllerWaitParams() : super(kVersions.last.size); 538 _ProcessControllerWaitParams() : super(kVersions.last.size);
513 539
540 _ProcessControllerWaitParams.init(
541 ) : super(kVersions.last.size);
542
514 static _ProcessControllerWaitParams deserialize(bindings.Message message) { 543 static _ProcessControllerWaitParams deserialize(bindings.Message message) {
515 var decoder = new bindings.Decoder(message); 544 var decoder = new bindings.Decoder(message);
516 var result = decode(decoder); 545 var result = decode(decoder);
517 if (decoder.excessHandles != null) { 546 if (decoder.excessHandles != null) {
518 decoder.excessHandles.forEach((h) => h.close()); 547 decoder.excessHandles.forEach((h) => h.close());
519 } 548 }
520 return result; 549 return result;
521 } 550 }
522 551
523 static _ProcessControllerWaitParams decode(bindings.Decoder decoder0) { 552 static _ProcessControllerWaitParams decode(bindings.Decoder decoder0) {
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
564 593
565 class ProcessControllerWaitResponseParams extends bindings.Struct { 594 class ProcessControllerWaitResponseParams extends bindings.Struct {
566 static const List<bindings.StructDataHeader> kVersions = const [ 595 static const List<bindings.StructDataHeader> kVersions = const [
567 const bindings.StructDataHeader(16, 0) 596 const bindings.StructDataHeader(16, 0)
568 ]; 597 ];
569 types_mojom.Error error = null; 598 types_mojom.Error error = null;
570 int exitStatus = 0; 599 int exitStatus = 0;
571 600
572 ProcessControllerWaitResponseParams() : super(kVersions.last.size); 601 ProcessControllerWaitResponseParams() : super(kVersions.last.size);
573 602
603 ProcessControllerWaitResponseParams.init(
604 types_mojom.Error this.error,
605 int this.exitStatus
606 ) : super(kVersions.last.size);
607
574 static ProcessControllerWaitResponseParams deserialize(bindings.Message messag e) { 608 static ProcessControllerWaitResponseParams deserialize(bindings.Message messag e) {
575 var decoder = new bindings.Decoder(message); 609 var decoder = new bindings.Decoder(message);
576 var result = decode(decoder); 610 var result = decode(decoder);
577 if (decoder.excessHandles != null) { 611 if (decoder.excessHandles != null) {
578 decoder.excessHandles.forEach((h) => h.close()); 612 decoder.excessHandles.forEach((h) => h.close());
579 } 613 }
580 return result; 614 return result;
581 } 615 }
582 616
583 static ProcessControllerWaitResponseParams decode(bindings.Decoder decoder0) { 617 static ProcessControllerWaitResponseParams decode(bindings.Decoder decoder0) {
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
653 687
654 688
655 class _ProcessControllerKillParams extends bindings.Struct { 689 class _ProcessControllerKillParams extends bindings.Struct {
656 static const List<bindings.StructDataHeader> kVersions = const [ 690 static const List<bindings.StructDataHeader> kVersions = const [
657 const bindings.StructDataHeader(16, 0) 691 const bindings.StructDataHeader(16, 0)
658 ]; 692 ];
659 int signal = 0; 693 int signal = 0;
660 694
661 _ProcessControllerKillParams() : super(kVersions.last.size); 695 _ProcessControllerKillParams() : super(kVersions.last.size);
662 696
697 _ProcessControllerKillParams.init(
698 int this.signal
699 ) : super(kVersions.last.size);
700
663 static _ProcessControllerKillParams deserialize(bindings.Message message) { 701 static _ProcessControllerKillParams deserialize(bindings.Message message) {
664 var decoder = new bindings.Decoder(message); 702 var decoder = new bindings.Decoder(message);
665 var result = decode(decoder); 703 var result = decode(decoder);
666 if (decoder.excessHandles != null) { 704 if (decoder.excessHandles != null) {
667 decoder.excessHandles.forEach((h) => h.close()); 705 decoder.excessHandles.forEach((h) => h.close());
668 } 706 }
669 return result; 707 return result;
670 } 708 }
671 709
672 static _ProcessControllerKillParams decode(bindings.Decoder decoder0) { 710 static _ProcessControllerKillParams decode(bindings.Decoder decoder0) {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
725 763
726 764
727 class ProcessControllerKillResponseParams extends bindings.Struct { 765 class ProcessControllerKillResponseParams extends bindings.Struct {
728 static const List<bindings.StructDataHeader> kVersions = const [ 766 static const List<bindings.StructDataHeader> kVersions = const [
729 const bindings.StructDataHeader(16, 0) 767 const bindings.StructDataHeader(16, 0)
730 ]; 768 ];
731 types_mojom.Error error = null; 769 types_mojom.Error error = null;
732 770
733 ProcessControllerKillResponseParams() : super(kVersions.last.size); 771 ProcessControllerKillResponseParams() : super(kVersions.last.size);
734 772
773 ProcessControllerKillResponseParams.init(
774 types_mojom.Error this.error
775 ) : super(kVersions.last.size);
776
735 static ProcessControllerKillResponseParams deserialize(bindings.Message messag e) { 777 static ProcessControllerKillResponseParams deserialize(bindings.Message messag e) {
736 var decoder = new bindings.Decoder(message); 778 var decoder = new bindings.Decoder(message);
737 var result = decode(decoder); 779 var result = decode(decoder);
738 if (decoder.excessHandles != null) { 780 if (decoder.excessHandles != null) {
739 decoder.excessHandles.forEach((h) => h.close()); 781 decoder.excessHandles.forEach((h) => h.close());
740 } 782 }
741 return result; 783 return result;
742 } 784 }
743 785
744 static ProcessControllerKillResponseParams decode(bindings.Decoder decoder0) { 786 static ProcessControllerKillResponseParams decode(bindings.Decoder decoder0) {
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
796 Map map = new Map(); 838 Map map = new Map();
797 map["error"] = error; 839 map["error"] = error;
798 return map; 840 return map;
799 } 841 }
800 } 842 }
801 843
802 const int _processMethodSpawnName = 0; 844 const int _processMethodSpawnName = 0;
803 const int _processMethodSpawnWithTerminalName = 1; 845 const int _processMethodSpawnWithTerminalName = 1;
804 846
805 class _ProcessServiceDescription implements service_describer.ServiceDescription { 847 class _ProcessServiceDescription implements service_describer.ServiceDescription {
806 dynamic getTopLevelInterface([Function responseFactory]) => 848 void getTopLevelInterface(Function responder) {
807 responseFactory(null); 849 responder(null);
850 }
808 851
809 dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => 852 void getTypeDefinition(String typeKey, Function responder) {
810 responseFactory(null); 853 responder(null);
854 }
811 855
812 dynamic getAllTypeDefinitions([Function responseFactory]) => 856 void getAllTypeDefinitions(Function responder) {
813 responseFactory(null); 857 responder(null);
858 }
814 } 859 }
815 860
816 abstract class Process { 861 abstract class Process {
817 static const String serviceName = "native_support::Process"; 862 static const String serviceName = "native_support::Process";
818 863
819 static service_describer.ServiceDescription _cachedServiceDescription; 864 static service_describer.ServiceDescription _cachedServiceDescription;
820 static service_describer.ServiceDescription get serviceDescription { 865 static service_describer.ServiceDescription get serviceDescription {
821 if (_cachedServiceDescription == null) { 866 if (_cachedServiceDescription == null) {
822 _cachedServiceDescription = new _ProcessServiceDescription(); 867 _cachedServiceDescription = new _ProcessServiceDescription();
823 } 868 }
824 return _cachedServiceDescription; 869 return _cachedServiceDescription;
825 } 870 }
826 871
827 static ProcessProxy connectToService( 872 static ProcessProxy connectToService(
828 bindings.ServiceConnector s, String url, [String serviceName]) { 873 bindings.ServiceConnector s, String url, [String serviceName]) {
829 ProcessProxy p = new ProcessProxy.unbound(); 874 ProcessProxy p = new ProcessProxy.unbound();
830 String name = serviceName ?? Process.serviceName; 875 String name = serviceName ?? Process.serviceName;
831 if ((name == null) || name.isEmpty) { 876 if ((name == null) || name.isEmpty) {
832 throw new core.MojoApiError( 877 throw new core.MojoApiError(
833 "If an interface has no ServiceName, then one must be provided."); 878 "If an interface has no ServiceName, then one must be provided.");
834 } 879 }
835 s.connectToService(url, p, name); 880 s.connectToService(url, p, name);
836 return p; 881 return p;
837 } 882 }
838 dynamic spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mo jom.FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileI nterface stderrFile,ProcessControllerInterfaceRequest processController,[Functio n responseFactory = null]); 883 void spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom .FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileInte rface stderrFile,ProcessControllerInterfaceRequest processController,void callba ck(types_mojom.Error error));
839 dynamic spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest pro cessController,[Function responseFactory = null]); 884 void spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> env p,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest proces sController,void callback(types_mojom.Error error));
840 } 885 }
841 886
842 abstract class ProcessInterface 887 abstract class ProcessInterface
843 implements bindings.MojoInterface<Process>, 888 implements bindings.MojoInterface<Process>,
844 Process { 889 Process {
845 factory ProcessInterface([Process impl]) => 890 factory ProcessInterface([Process impl]) =>
846 new ProcessStub.unbound(impl); 891 new ProcessStub.unbound(impl);
847 factory ProcessInterface.fromEndpoint( 892 factory ProcessInterface.fromEndpoint(
848 core.MojoMessagePipeEndpoint endpoint, 893 core.MojoMessagePipeEndpoint endpoint,
849 [Process impl]) => 894 [Process impl]) =>
(...skipping 22 matching lines...) Expand all
872 917
873 void handleResponse(bindings.ServiceMessage message) { 918 void handleResponse(bindings.ServiceMessage message) {
874 switch (message.header.type) { 919 switch (message.header.type) {
875 case _processMethodSpawnName: 920 case _processMethodSpawnName:
876 var r = ProcessSpawnResponseParams.deserialize( 921 var r = ProcessSpawnResponseParams.deserialize(
877 message.payload); 922 message.payload);
878 if (!message.header.hasRequestId) { 923 if (!message.header.hasRequestId) {
879 proxyError("Expected a message with a valid request Id."); 924 proxyError("Expected a message with a valid request Id.");
880 return; 925 return;
881 } 926 }
882 Completer c = completerMap[message.header.requestId]; 927 Function callback = callbackMap[message.header.requestId];
883 if (c == null) { 928 if (callback == null) {
884 proxyError( 929 proxyError(
885 "Message had unknown request Id: ${message.header.requestId}"); 930 "Message had unknown request Id: ${message.header.requestId}");
886 return; 931 return;
887 } 932 }
888 completerMap.remove(message.header.requestId); 933 callbackMap.remove(message.header.requestId);
889 if (c.isCompleted) { 934 callback(r.error );
890 proxyError("Response completer already completed");
891 return;
892 }
893 c.complete(r);
894 break; 935 break;
895 case _processMethodSpawnWithTerminalName: 936 case _processMethodSpawnWithTerminalName:
896 var r = ProcessSpawnWithTerminalResponseParams.deserialize( 937 var r = ProcessSpawnWithTerminalResponseParams.deserialize(
897 message.payload); 938 message.payload);
898 if (!message.header.hasRequestId) { 939 if (!message.header.hasRequestId) {
899 proxyError("Expected a message with a valid request Id."); 940 proxyError("Expected a message with a valid request Id.");
900 return; 941 return;
901 } 942 }
902 Completer c = completerMap[message.header.requestId]; 943 Function callback = callbackMap[message.header.requestId];
903 if (c == null) { 944 if (callback == null) {
904 proxyError( 945 proxyError(
905 "Message had unknown request Id: ${message.header.requestId}"); 946 "Message had unknown request Id: ${message.header.requestId}");
906 return; 947 return;
907 } 948 }
908 completerMap.remove(message.header.requestId); 949 callbackMap.remove(message.header.requestId);
909 if (c.isCompleted) { 950 callback(r.error );
910 proxyError("Response completer already completed");
911 return;
912 }
913 c.complete(r);
914 break; 951 break;
915 default: 952 default:
916 proxyError("Unexpected message type: ${message.header.type}"); 953 proxyError("Unexpected message type: ${message.header.type}");
917 close(immediate: true); 954 close(immediate: true);
918 break; 955 break;
919 } 956 }
920 } 957 }
921 958
922 Process get impl => null; 959 Process get impl => null;
923 set impl(Process _) { 960 set impl(Process _) {
(...skipping 22 matching lines...) Expand all
946 ProcessProxy.unbound() 983 ProcessProxy.unbound()
947 : super(new _ProcessProxyControl.unbound()); 984 : super(new _ProcessProxyControl.unbound());
948 985
949 static ProcessProxy newFromEndpoint( 986 static ProcessProxy newFromEndpoint(
950 core.MojoMessagePipeEndpoint endpoint) { 987 core.MojoMessagePipeEndpoint endpoint) {
951 assert(endpoint.setDescription("For ProcessProxy")); 988 assert(endpoint.setDescription("For ProcessProxy"));
952 return new ProcessProxy.fromEndpoint(endpoint); 989 return new ProcessProxy.fromEndpoint(endpoint);
953 } 990 }
954 991
955 992
956 dynamic spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mo jom.FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileI nterface stderrFile,ProcessControllerInterfaceRequest processController,[Functio n responseFactory = null]) { 993 void spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom .FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileInte rface stderrFile,ProcessControllerInterfaceRequest processController,void callba ck(types_mojom.Error error)) {
957 var params = new _ProcessSpawnParams(); 994 var params = new _ProcessSpawnParams();
958 params.path = path; 995 params.path = path;
959 params.argv = argv; 996 params.argv = argv;
960 params.envp = envp; 997 params.envp = envp;
961 params.stdinFile = stdinFile; 998 params.stdinFile = stdinFile;
962 params.stdoutFile = stdoutFile; 999 params.stdoutFile = stdoutFile;
963 params.stderrFile = stderrFile; 1000 params.stderrFile = stderrFile;
964 params.processController = processController; 1001 params.processController = processController;
965 return ctrl.sendMessageWithRequestId( 1002 ctrl.sendMessageWithRequestId(
966 params, 1003 params,
967 _processMethodSpawnName, 1004 _processMethodSpawnName,
968 -1, 1005 -1,
969 bindings.MessageHeader.kMessageExpectsResponse); 1006 bindings.MessageHeader.kMessageExpectsResponse,
1007 callback);
970 } 1008 }
971 dynamic spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest pro cessController,[Function responseFactory = null]) { 1009 void spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> env p,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest proces sController,void callback(types_mojom.Error error)) {
972 var params = new _ProcessSpawnWithTerminalParams(); 1010 var params = new _ProcessSpawnWithTerminalParams();
973 params.path = path; 1011 params.path = path;
974 params.argv = argv; 1012 params.argv = argv;
975 params.envp = envp; 1013 params.envp = envp;
976 params.terminalFile = terminalFile; 1014 params.terminalFile = terminalFile;
977 params.processController = processController; 1015 params.processController = processController;
978 return ctrl.sendMessageWithRequestId( 1016 ctrl.sendMessageWithRequestId(
979 params, 1017 params,
980 _processMethodSpawnWithTerminalName, 1018 _processMethodSpawnWithTerminalName,
981 -1, 1019 -1,
982 bindings.MessageHeader.kMessageExpectsResponse); 1020 bindings.MessageHeader.kMessageExpectsResponse,
1021 callback);
983 } 1022 }
984 } 1023 }
985 1024
986 class _ProcessStubControl 1025 class _ProcessStubControl
987 extends bindings.StubMessageHandler 1026 extends bindings.StubMessageHandler
988 implements bindings.StubControl<Process> { 1027 implements bindings.StubControl<Process> {
989 Process _impl; 1028 Process _impl;
990 1029
991 _ProcessStubControl.fromEndpoint( 1030 _ProcessStubControl.fromEndpoint(
992 core.MojoMessagePipeEndpoint endpoint, [Process impl]) 1031 core.MojoMessagePipeEndpoint endpoint, [Process impl])
993 : super.fromEndpoint(endpoint, autoBegin: impl != null) { 1032 : super.fromEndpoint(endpoint, autoBegin: impl != null) {
994 _impl = impl; 1033 _impl = impl;
995 } 1034 }
996 1035
997 _ProcessStubControl.fromHandle( 1036 _ProcessStubControl.fromHandle(
998 core.MojoHandle handle, [Process impl]) 1037 core.MojoHandle handle, [Process impl])
999 : super.fromHandle(handle, autoBegin: impl != null) { 1038 : super.fromHandle(handle, autoBegin: impl != null) {
1000 _impl = impl; 1039 _impl = impl;
1001 } 1040 }
1002 1041
1003 _ProcessStubControl.unbound([this._impl]) : super.unbound(); 1042 _ProcessStubControl.unbound([this._impl]) : super.unbound();
1004 1043
1005 String get serviceName => Process.serviceName; 1044 String get serviceName => Process.serviceName;
1006 1045
1007 1046
1008 ProcessSpawnResponseParams _processSpawnResponseParamsFactory(types_mojom.Erro r error) { 1047 Function _processSpawnResponseParamsResponder(
1009 var result = new ProcessSpawnResponseParams(); 1048 int requestId) {
1010 result.error = error; 1049 return (types_mojom.Error error) {
1011 return result; 1050 var result = new ProcessSpawnResponseParams();
1051 result.error = error;
1052 sendResponse(buildResponseWithId(
1053 result,
1054 _processMethodSpawnName,
1055 requestId,
1056 bindings.MessageHeader.kMessageIsResponse));
1057 };
1012 } 1058 }
1013 ProcessSpawnWithTerminalResponseParams _processSpawnWithTerminalResponseParams Factory(types_mojom.Error error) { 1059 Function _processSpawnWithTerminalResponseParamsResponder(
1014 var result = new ProcessSpawnWithTerminalResponseParams(); 1060 int requestId) {
1015 result.error = error; 1061 return (types_mojom.Error error) {
1016 return result; 1062 var result = new ProcessSpawnWithTerminalResponseParams();
1063 result.error = error;
1064 sendResponse(buildResponseWithId(
1065 result,
1066 _processMethodSpawnWithTerminalName,
1067 requestId,
1068 bindings.MessageHeader.kMessageIsResponse));
1069 };
1017 } 1070 }
1018 1071
1019 dynamic handleMessage(bindings.ServiceMessage message) { 1072 void handleMessage(bindings.ServiceMessage message) {
1020 if (bindings.ControlMessageHandler.isControlMessage(message)) { 1073 if (bindings.ControlMessageHandler.isControlMessage(message)) {
1021 return bindings.ControlMessageHandler.handleMessage(this, 1074 bindings.ControlMessageHandler.handleMessage(
1022 0, 1075 this, 0, message);
1023 message); 1076 return;
1024 } 1077 }
1025 if (_impl == null) { 1078 if (_impl == null) {
1026 throw new core.MojoApiError("$this has no implementation set"); 1079 throw new core.MojoApiError("$this has no implementation set");
1027 } 1080 }
1028 switch (message.header.type) { 1081 switch (message.header.type) {
1029 case _processMethodSpawnName: 1082 case _processMethodSpawnName:
1030 var params = _ProcessSpawnParams.deserialize( 1083 var params = _ProcessSpawnParams.deserialize(
1031 message.payload); 1084 message.payload);
1032 var response = _impl.spawn(params.path,params.argv,params.envp,params.st dinFile,params.stdoutFile,params.stderrFile,params.processController,_processSpa wnResponseParamsFactory); 1085 _impl.spawn(params.path, params.argv, params.envp, params.stdinFile, par ams.stdoutFile, params.stderrFile, params.processController, _processSpawnRespon seParamsResponder(message.header.requestId));
1033 if (response is Future) {
1034 return response.then((response) {
1035 if (response != null) {
1036 return buildResponseWithId(
1037 response,
1038 _processMethodSpawnName,
1039 message.header.requestId,
1040 bindings.MessageHeader.kMessageIsResponse);
1041 }
1042 });
1043 } else if (response != null) {
1044 return buildResponseWithId(
1045 response,
1046 _processMethodSpawnName,
1047 message.header.requestId,
1048 bindings.MessageHeader.kMessageIsResponse);
1049 }
1050 break; 1086 break;
1051 case _processMethodSpawnWithTerminalName: 1087 case _processMethodSpawnWithTerminalName:
1052 var params = _ProcessSpawnWithTerminalParams.deserialize( 1088 var params = _ProcessSpawnWithTerminalParams.deserialize(
1053 message.payload); 1089 message.payload);
1054 var response = _impl.spawnWithTerminal(params.path,params.argv,params.en vp,params.terminalFile,params.processController,_processSpawnWithTerminalRespons eParamsFactory); 1090 _impl.spawnWithTerminal(params.path, params.argv, params.envp, params.te rminalFile, params.processController, _processSpawnWithTerminalResponseParamsRes ponder(message.header.requestId));
1055 if (response is Future) {
1056 return response.then((response) {
1057 if (response != null) {
1058 return buildResponseWithId(
1059 response,
1060 _processMethodSpawnWithTerminalName,
1061 message.header.requestId,
1062 bindings.MessageHeader.kMessageIsResponse);
1063 }
1064 });
1065 } else if (response != null) {
1066 return buildResponseWithId(
1067 response,
1068 _processMethodSpawnWithTerminalName,
1069 message.header.requestId,
1070 bindings.MessageHeader.kMessageIsResponse);
1071 }
1072 break; 1091 break;
1073 default: 1092 default:
1074 throw new bindings.MojoCodecError("Unexpected message name"); 1093 throw new bindings.MojoCodecError("Unexpected message name");
1075 break; 1094 break;
1076 } 1095 }
1077 return null;
1078 } 1096 }
1079 1097
1080 Process get impl => _impl; 1098 Process get impl => _impl;
1081 set impl(Process d) { 1099 set impl(Process d) {
1082 if (d == null) { 1100 if (d == null) {
1083 throw new core.MojoApiError("$this: Cannot set a null implementation"); 1101 throw new core.MojoApiError("$this: Cannot set a null implementation");
1084 } 1102 }
1085 if (isBound && (_impl == null)) { 1103 if (isBound && (_impl == null)) {
1086 beginHandlingEvents(); 1104 beginHandlingEvents();
1087 } 1105 }
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1121 core.MojoHandle handle, [Process impl]) 1139 core.MojoHandle handle, [Process impl])
1122 : super(new _ProcessStubControl.fromHandle(handle, impl)); 1140 : super(new _ProcessStubControl.fromHandle(handle, impl));
1123 1141
1124 static ProcessStub newFromEndpoint( 1142 static ProcessStub newFromEndpoint(
1125 core.MojoMessagePipeEndpoint endpoint) { 1143 core.MojoMessagePipeEndpoint endpoint) {
1126 assert(endpoint.setDescription("For ProcessStub")); 1144 assert(endpoint.setDescription("For ProcessStub"));
1127 return new ProcessStub.fromEndpoint(endpoint); 1145 return new ProcessStub.fromEndpoint(endpoint);
1128 } 1146 }
1129 1147
1130 1148
1131 dynamic spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mo jom.FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileI nterface stderrFile,ProcessControllerInterfaceRequest processController,[Functio n responseFactory = null]) { 1149 void spawn(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom .FileInterface stdinFile,file_mojom.FileInterface stdoutFile,file_mojom.FileInte rface stderrFile,ProcessControllerInterfaceRequest processController,void callba ck(types_mojom.Error error)) {
1132 return impl.spawn(path,argv,envp,stdinFile,stdoutFile,stderrFile,processCont roller,responseFactory); 1150 return impl.spawn(path,argv,envp,stdinFile,stdoutFile,stderrFile,processCont roller,callback);
1133 } 1151 }
1134 dynamic spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> envp,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest pro cessController,[Function responseFactory = null]) { 1152 void spawnWithTerminal(List<int> path,List<List<int>> argv,List<List<int>> env p,file_mojom.FileInterface terminalFile,ProcessControllerInterfaceRequest proces sController,void callback(types_mojom.Error error)) {
1135 return impl.spawnWithTerminal(path,argv,envp,terminalFile,processController, responseFactory); 1153 return impl.spawnWithTerminal(path,argv,envp,terminalFile,processController, callback);
1136 } 1154 }
1137 } 1155 }
1138 1156
1139 const int _processControllerMethodWaitName = 0; 1157 const int _processControllerMethodWaitName = 0;
1140 const int _processControllerMethodKillName = 1; 1158 const int _processControllerMethodKillName = 1;
1141 1159
1142 class _ProcessControllerServiceDescription implements service_describer.ServiceD escription { 1160 class _ProcessControllerServiceDescription implements service_describer.ServiceD escription {
1143 dynamic getTopLevelInterface([Function responseFactory]) => 1161 void getTopLevelInterface(Function responder) {
1144 responseFactory(null); 1162 responder(null);
1163 }
1145 1164
1146 dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => 1165 void getTypeDefinition(String typeKey, Function responder) {
1147 responseFactory(null); 1166 responder(null);
1167 }
1148 1168
1149 dynamic getAllTypeDefinitions([Function responseFactory]) => 1169 void getAllTypeDefinitions(Function responder) {
1150 responseFactory(null); 1170 responder(null);
1171 }
1151 } 1172 }
1152 1173
1153 abstract class ProcessController { 1174 abstract class ProcessController {
1154 static const String serviceName = null; 1175 static const String serviceName = null;
1155 1176
1156 static service_describer.ServiceDescription _cachedServiceDescription; 1177 static service_describer.ServiceDescription _cachedServiceDescription;
1157 static service_describer.ServiceDescription get serviceDescription { 1178 static service_describer.ServiceDescription get serviceDescription {
1158 if (_cachedServiceDescription == null) { 1179 if (_cachedServiceDescription == null) {
1159 _cachedServiceDescription = new _ProcessControllerServiceDescription(); 1180 _cachedServiceDescription = new _ProcessControllerServiceDescription();
1160 } 1181 }
1161 return _cachedServiceDescription; 1182 return _cachedServiceDescription;
1162 } 1183 }
1163 1184
1164 static ProcessControllerProxy connectToService( 1185 static ProcessControllerProxy connectToService(
1165 bindings.ServiceConnector s, String url, [String serviceName]) { 1186 bindings.ServiceConnector s, String url, [String serviceName]) {
1166 ProcessControllerProxy p = new ProcessControllerProxy.unbound(); 1187 ProcessControllerProxy p = new ProcessControllerProxy.unbound();
1167 String name = serviceName ?? ProcessController.serviceName; 1188 String name = serviceName ?? ProcessController.serviceName;
1168 if ((name == null) || name.isEmpty) { 1189 if ((name == null) || name.isEmpty) {
1169 throw new core.MojoApiError( 1190 throw new core.MojoApiError(
1170 "If an interface has no ServiceName, then one must be provided."); 1191 "If an interface has no ServiceName, then one must be provided.");
1171 } 1192 }
1172 s.connectToService(url, p, name); 1193 s.connectToService(url, p, name);
1173 return p; 1194 return p;
1174 } 1195 }
1175 dynamic wait([Function responseFactory = null]); 1196 void wait(void callback(types_mojom.Error error, int exitStatus));
1176 dynamic kill(int signal,[Function responseFactory = null]); 1197 void kill(int signal,void callback(types_mojom.Error error));
1177 } 1198 }
1178 1199
1179 abstract class ProcessControllerInterface 1200 abstract class ProcessControllerInterface
1180 implements bindings.MojoInterface<ProcessController>, 1201 implements bindings.MojoInterface<ProcessController>,
1181 ProcessController { 1202 ProcessController {
1182 factory ProcessControllerInterface([ProcessController impl]) => 1203 factory ProcessControllerInterface([ProcessController impl]) =>
1183 new ProcessControllerStub.unbound(impl); 1204 new ProcessControllerStub.unbound(impl);
1184 factory ProcessControllerInterface.fromEndpoint( 1205 factory ProcessControllerInterface.fromEndpoint(
1185 core.MojoMessagePipeEndpoint endpoint, 1206 core.MojoMessagePipeEndpoint endpoint,
1186 [ProcessController impl]) => 1207 [ProcessController impl]) =>
(...skipping 22 matching lines...) Expand all
1209 1230
1210 void handleResponse(bindings.ServiceMessage message) { 1231 void handleResponse(bindings.ServiceMessage message) {
1211 switch (message.header.type) { 1232 switch (message.header.type) {
1212 case _processControllerMethodWaitName: 1233 case _processControllerMethodWaitName:
1213 var r = ProcessControllerWaitResponseParams.deserialize( 1234 var r = ProcessControllerWaitResponseParams.deserialize(
1214 message.payload); 1235 message.payload);
1215 if (!message.header.hasRequestId) { 1236 if (!message.header.hasRequestId) {
1216 proxyError("Expected a message with a valid request Id."); 1237 proxyError("Expected a message with a valid request Id.");
1217 return; 1238 return;
1218 } 1239 }
1219 Completer c = completerMap[message.header.requestId]; 1240 Function callback = callbackMap[message.header.requestId];
1220 if (c == null) { 1241 if (callback == null) {
1221 proxyError( 1242 proxyError(
1222 "Message had unknown request Id: ${message.header.requestId}"); 1243 "Message had unknown request Id: ${message.header.requestId}");
1223 return; 1244 return;
1224 } 1245 }
1225 completerMap.remove(message.header.requestId); 1246 callbackMap.remove(message.header.requestId);
1226 if (c.isCompleted) { 1247 callback(r.error , r.exitStatus );
1227 proxyError("Response completer already completed");
1228 return;
1229 }
1230 c.complete(r);
1231 break; 1248 break;
1232 case _processControllerMethodKillName: 1249 case _processControllerMethodKillName:
1233 var r = ProcessControllerKillResponseParams.deserialize( 1250 var r = ProcessControllerKillResponseParams.deserialize(
1234 message.payload); 1251 message.payload);
1235 if (!message.header.hasRequestId) { 1252 if (!message.header.hasRequestId) {
1236 proxyError("Expected a message with a valid request Id."); 1253 proxyError("Expected a message with a valid request Id.");
1237 return; 1254 return;
1238 } 1255 }
1239 Completer c = completerMap[message.header.requestId]; 1256 Function callback = callbackMap[message.header.requestId];
1240 if (c == null) { 1257 if (callback == null) {
1241 proxyError( 1258 proxyError(
1242 "Message had unknown request Id: ${message.header.requestId}"); 1259 "Message had unknown request Id: ${message.header.requestId}");
1243 return; 1260 return;
1244 } 1261 }
1245 completerMap.remove(message.header.requestId); 1262 callbackMap.remove(message.header.requestId);
1246 if (c.isCompleted) { 1263 callback(r.error );
1247 proxyError("Response completer already completed");
1248 return;
1249 }
1250 c.complete(r);
1251 break; 1264 break;
1252 default: 1265 default:
1253 proxyError("Unexpected message type: ${message.header.type}"); 1266 proxyError("Unexpected message type: ${message.header.type}");
1254 close(immediate: true); 1267 close(immediate: true);
1255 break; 1268 break;
1256 } 1269 }
1257 } 1270 }
1258 1271
1259 ProcessController get impl => null; 1272 ProcessController get impl => null;
1260 set impl(ProcessController _) { 1273 set impl(ProcessController _) {
(...skipping 22 matching lines...) Expand all
1283 ProcessControllerProxy.unbound() 1296 ProcessControllerProxy.unbound()
1284 : super(new _ProcessControllerProxyControl.unbound()); 1297 : super(new _ProcessControllerProxyControl.unbound());
1285 1298
1286 static ProcessControllerProxy newFromEndpoint( 1299 static ProcessControllerProxy newFromEndpoint(
1287 core.MojoMessagePipeEndpoint endpoint) { 1300 core.MojoMessagePipeEndpoint endpoint) {
1288 assert(endpoint.setDescription("For ProcessControllerProxy")); 1301 assert(endpoint.setDescription("For ProcessControllerProxy"));
1289 return new ProcessControllerProxy.fromEndpoint(endpoint); 1302 return new ProcessControllerProxy.fromEndpoint(endpoint);
1290 } 1303 }
1291 1304
1292 1305
1293 dynamic wait([Function responseFactory = null]) { 1306 void wait(void callback(types_mojom.Error error, int exitStatus)) {
1294 var params = new _ProcessControllerWaitParams(); 1307 var params = new _ProcessControllerWaitParams();
1295 return ctrl.sendMessageWithRequestId( 1308 ctrl.sendMessageWithRequestId(
1296 params, 1309 params,
1297 _processControllerMethodWaitName, 1310 _processControllerMethodWaitName,
1298 -1, 1311 -1,
1299 bindings.MessageHeader.kMessageExpectsResponse); 1312 bindings.MessageHeader.kMessageExpectsResponse,
1313 callback);
1300 } 1314 }
1301 dynamic kill(int signal,[Function responseFactory = null]) { 1315 void kill(int signal,void callback(types_mojom.Error error)) {
1302 var params = new _ProcessControllerKillParams(); 1316 var params = new _ProcessControllerKillParams();
1303 params.signal = signal; 1317 params.signal = signal;
1304 return ctrl.sendMessageWithRequestId( 1318 ctrl.sendMessageWithRequestId(
1305 params, 1319 params,
1306 _processControllerMethodKillName, 1320 _processControllerMethodKillName,
1307 -1, 1321 -1,
1308 bindings.MessageHeader.kMessageExpectsResponse); 1322 bindings.MessageHeader.kMessageExpectsResponse,
1323 callback);
1309 } 1324 }
1310 } 1325 }
1311 1326
1312 class _ProcessControllerStubControl 1327 class _ProcessControllerStubControl
1313 extends bindings.StubMessageHandler 1328 extends bindings.StubMessageHandler
1314 implements bindings.StubControl<ProcessController> { 1329 implements bindings.StubControl<ProcessController> {
1315 ProcessController _impl; 1330 ProcessController _impl;
1316 1331
1317 _ProcessControllerStubControl.fromEndpoint( 1332 _ProcessControllerStubControl.fromEndpoint(
1318 core.MojoMessagePipeEndpoint endpoint, [ProcessController impl]) 1333 core.MojoMessagePipeEndpoint endpoint, [ProcessController impl])
1319 : super.fromEndpoint(endpoint, autoBegin: impl != null) { 1334 : super.fromEndpoint(endpoint, autoBegin: impl != null) {
1320 _impl = impl; 1335 _impl = impl;
1321 } 1336 }
1322 1337
1323 _ProcessControllerStubControl.fromHandle( 1338 _ProcessControllerStubControl.fromHandle(
1324 core.MojoHandle handle, [ProcessController impl]) 1339 core.MojoHandle handle, [ProcessController impl])
1325 : super.fromHandle(handle, autoBegin: impl != null) { 1340 : super.fromHandle(handle, autoBegin: impl != null) {
1326 _impl = impl; 1341 _impl = impl;
1327 } 1342 }
1328 1343
1329 _ProcessControllerStubControl.unbound([this._impl]) : super.unbound(); 1344 _ProcessControllerStubControl.unbound([this._impl]) : super.unbound();
1330 1345
1331 String get serviceName => ProcessController.serviceName; 1346 String get serviceName => ProcessController.serviceName;
1332 1347
1333 1348
1334 ProcessControllerWaitResponseParams _processControllerWaitResponseParamsFactor y(types_mojom.Error error, int exitStatus) { 1349 Function _processControllerWaitResponseParamsResponder(
1335 var result = new ProcessControllerWaitResponseParams(); 1350 int requestId) {
1336 result.error = error; 1351 return (types_mojom.Error error, int exitStatus) {
1337 result.exitStatus = exitStatus; 1352 var result = new ProcessControllerWaitResponseParams();
1338 return result; 1353 result.error = error;
1354 result.exitStatus = exitStatus;
1355 sendResponse(buildResponseWithId(
1356 result,
1357 _processControllerMethodWaitName,
1358 requestId,
1359 bindings.MessageHeader.kMessageIsResponse));
1360 };
1339 } 1361 }
1340 ProcessControllerKillResponseParams _processControllerKillResponseParamsFactor y(types_mojom.Error error) { 1362 Function _processControllerKillResponseParamsResponder(
1341 var result = new ProcessControllerKillResponseParams(); 1363 int requestId) {
1342 result.error = error; 1364 return (types_mojom.Error error) {
1343 return result; 1365 var result = new ProcessControllerKillResponseParams();
1366 result.error = error;
1367 sendResponse(buildResponseWithId(
1368 result,
1369 _processControllerMethodKillName,
1370 requestId,
1371 bindings.MessageHeader.kMessageIsResponse));
1372 };
1344 } 1373 }
1345 1374
1346 dynamic handleMessage(bindings.ServiceMessage message) { 1375 void handleMessage(bindings.ServiceMessage message) {
1347 if (bindings.ControlMessageHandler.isControlMessage(message)) { 1376 if (bindings.ControlMessageHandler.isControlMessage(message)) {
1348 return bindings.ControlMessageHandler.handleMessage(this, 1377 bindings.ControlMessageHandler.handleMessage(
1349 0, 1378 this, 0, message);
1350 message); 1379 return;
1351 } 1380 }
1352 if (_impl == null) { 1381 if (_impl == null) {
1353 throw new core.MojoApiError("$this has no implementation set"); 1382 throw new core.MojoApiError("$this has no implementation set");
1354 } 1383 }
1355 switch (message.header.type) { 1384 switch (message.header.type) {
1356 case _processControllerMethodWaitName: 1385 case _processControllerMethodWaitName:
1357 var response = _impl.wait(_processControllerWaitResponseParamsFactory); 1386 _impl.wait(_processControllerWaitResponseParamsResponder(message.header. requestId));
1358 if (response is Future) {
1359 return response.then((response) {
1360 if (response != null) {
1361 return buildResponseWithId(
1362 response,
1363 _processControllerMethodWaitName,
1364 message.header.requestId,
1365 bindings.MessageHeader.kMessageIsResponse);
1366 }
1367 });
1368 } else if (response != null) {
1369 return buildResponseWithId(
1370 response,
1371 _processControllerMethodWaitName,
1372 message.header.requestId,
1373 bindings.MessageHeader.kMessageIsResponse);
1374 }
1375 break; 1387 break;
1376 case _processControllerMethodKillName: 1388 case _processControllerMethodKillName:
1377 var params = _ProcessControllerKillParams.deserialize( 1389 var params = _ProcessControllerKillParams.deserialize(
1378 message.payload); 1390 message.payload);
1379 var response = _impl.kill(params.signal,_processControllerKillResponsePa ramsFactory); 1391 _impl.kill(params.signal, _processControllerKillResponseParamsResponder( message.header.requestId));
1380 if (response is Future) {
1381 return response.then((response) {
1382 if (response != null) {
1383 return buildResponseWithId(
1384 response,
1385 _processControllerMethodKillName,
1386 message.header.requestId,
1387 bindings.MessageHeader.kMessageIsResponse);
1388 }
1389 });
1390 } else if (response != null) {
1391 return buildResponseWithId(
1392 response,
1393 _processControllerMethodKillName,
1394 message.header.requestId,
1395 bindings.MessageHeader.kMessageIsResponse);
1396 }
1397 break; 1392 break;
1398 default: 1393 default:
1399 throw new bindings.MojoCodecError("Unexpected message name"); 1394 throw new bindings.MojoCodecError("Unexpected message name");
1400 break; 1395 break;
1401 } 1396 }
1402 return null;
1403 } 1397 }
1404 1398
1405 ProcessController get impl => _impl; 1399 ProcessController get impl => _impl;
1406 set impl(ProcessController d) { 1400 set impl(ProcessController d) {
1407 if (d == null) { 1401 if (d == null) {
1408 throw new core.MojoApiError("$this: Cannot set a null implementation"); 1402 throw new core.MojoApiError("$this: Cannot set a null implementation");
1409 } 1403 }
1410 if (isBound && (_impl == null)) { 1404 if (isBound && (_impl == null)) {
1411 beginHandlingEvents(); 1405 beginHandlingEvents();
1412 } 1406 }
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1446 core.MojoHandle handle, [ProcessController impl]) 1440 core.MojoHandle handle, [ProcessController impl])
1447 : super(new _ProcessControllerStubControl.fromHandle(handle, impl)); 1441 : super(new _ProcessControllerStubControl.fromHandle(handle, impl));
1448 1442
1449 static ProcessControllerStub newFromEndpoint( 1443 static ProcessControllerStub newFromEndpoint(
1450 core.MojoMessagePipeEndpoint endpoint) { 1444 core.MojoMessagePipeEndpoint endpoint) {
1451 assert(endpoint.setDescription("For ProcessControllerStub")); 1445 assert(endpoint.setDescription("For ProcessControllerStub"));
1452 return new ProcessControllerStub.fromEndpoint(endpoint); 1446 return new ProcessControllerStub.fromEndpoint(endpoint);
1453 } 1447 }
1454 1448
1455 1449
1456 dynamic wait([Function responseFactory = null]) { 1450 void wait(void callback(types_mojom.Error error, int exitStatus)) {
1457 return impl.wait(responseFactory); 1451 return impl.wait(callback);
1458 } 1452 }
1459 dynamic kill(int signal,[Function responseFactory = null]) { 1453 void kill(int signal,void callback(types_mojom.Error error)) {
1460 return impl.kill(signal,responseFactory); 1454 return impl.kill(signal,callback);
1461 } 1455 }
1462 } 1456 }
1463 1457
1464 1458
1465 1459
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698