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

Side by Side Diff: tests/stub-generator/src/MintMakerPromiseWithStubsTest-generatedTest.dart

Issue 8437090: Change the handling of closing sockets (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Addressed review comments by ager@ Created 9 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « tests/stub-generator/src/MintMakerFullyIsolatedTest-generatedTest.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 // IsolateStubs=MintMakerPromiseWithStubsTest.dart:Mint,Purse 5 // IsolateStubs=MintMakerPromiseWithStubsTest.dart:Mint,Purse
6 6
7 #import("../../isolate/src/TestFramework.dart"); 7 #import("../../isolate/src/TestFramework.dart");
8 8
9 /* class = Mint (tests/stub-generator/src/MintMakerPromiseWithStubsTest.dart/Min tMakerPromiseWithStubsTest.dart: 9) */ 9 /* class = Mint (tests/stub-generator/src/MintMakerPromiseWithStubsTest.dart/Min tMakerPromiseWithStubsTest.dart: 9) */
10 10
11 interface Mint$Proxy extends Proxy { 11 interface Mint$Proxy {
12 Purse$Proxy createPurse(int balance); 12 Purse$Proxy createPurse(int balance);
13 } 13 }
14 14
15 class Mint$ProxyImpl extends ProxyImpl implements Mint$Proxy { 15 class Mint$ProxyImpl extends Proxy implements Mint$Proxy {
16 Mint$ProxyImpl(Promise<SendPort> port) : super.forReply(port) { } 16 Mint$ProxyImpl(Promise<SendPort> port) : super.forReply(port) { }
17 Mint$ProxyImpl.forIsolate(Proxy isolate) : super.forReply(isolate.call([null]) ) { } 17 Mint$ProxyImpl.forIsolate(Proxy isolate) : super.forReply(isolate.call([null]) ) { }
18 factory Mint$ProxyImpl.createIsolate() { 18 factory Mint$ProxyImpl.createIsolate() {
19 Proxy isolate = new Proxy.forIsolate(new Mint$Dispatcher$Isolate()); 19 Proxy isolate = new Proxy.forIsolate(new Mint$Dispatcher$Isolate());
20 return new Mint$ProxyImpl.forIsolate(isolate); 20 return new Mint$ProxyImpl.forIsolate(isolate);
21 } 21 }
22 factory Mint$ProxyImpl.localProxy(Mint obj) { 22 factory Mint$ProxyImpl.localProxy(Mint obj) {
23 return new Mint$ProxyImpl(new Promise<SendPort>.fromValue(Dispatcher.serve(n ew Mint$Dispatcher(obj)))); 23 return new Mint$ProxyImpl(new Promise<SendPort>.fromValue(Dispatcher.serve(n ew Mint$Dispatcher(obj))));
24 } 24 }
25 25
(...skipping 28 matching lines...) Expand all
54 Mint thing = new Mint(); 54 Mint thing = new Mint();
55 SendPort port = Dispatcher.serve(new Mint$Dispatcher(thing)); 55 SendPort port = Dispatcher.serve(new Mint$Dispatcher(thing));
56 Proxy proxy = new Proxy.forPort(replyTo); 56 Proxy proxy = new Proxy.forPort(replyTo);
57 proxy.send([port]); 57 proxy.send([port]);
58 }); 58 });
59 } 59 }
60 } 60 }
61 61
62 /* class = Purse (tests/stub-generator/src/MintMakerPromiseWithStubsTest.dart/Mi ntMakerPromiseWithStubsTest.dart: 17) */ 62 /* class = Purse (tests/stub-generator/src/MintMakerPromiseWithStubsTest.dart/Mi ntMakerPromiseWithStubsTest.dart: 17) */
63 63
64 interface Purse$Proxy extends Proxy { 64 interface Purse$Proxy {
65 Promise<int> queryBalance(); 65 Promise<int> queryBalance();
66 66
67 Purse$Proxy sproutPurse(); 67 Purse$Proxy sproutPurse();
68 68
69 Promise<int> deposit(int amount, Purse$Proxy source); 69 Promise<int> deposit(int amount, Purse$Proxy source);
70 } 70 }
71 71
72 class Purse$ProxyImpl extends ProxyImpl implements Purse$Proxy { 72 class Purse$ProxyImpl extends Proxy implements Purse$Proxy {
73 Purse$ProxyImpl(Promise<SendPort> port) : super.forReply(port) { } 73 Purse$ProxyImpl(Promise<SendPort> port) : super.forReply(port) { }
74 Purse$ProxyImpl.forIsolate(Proxy isolate) : super.forReply(isolate.call([null] )) { } 74 Purse$ProxyImpl.forIsolate(Proxy isolate) : super.forReply(isolate.call([null] )) { }
75 factory Purse$ProxyImpl.createIsolate() { 75 factory Purse$ProxyImpl.createIsolate() {
76 Proxy isolate = new Proxy.forIsolate(new Purse$Dispatcher$Isolate()); 76 Proxy isolate = new Proxy.forIsolate(new Purse$Dispatcher$Isolate());
77 return new Purse$ProxyImpl.forIsolate(isolate); 77 return new Purse$ProxyImpl.forIsolate(isolate);
78 } 78 }
79 factory Purse$ProxyImpl.localProxy(Purse obj) { 79 factory Purse$ProxyImpl.localProxy(Purse obj) {
80 return new Purse$ProxyImpl(new Promise<SendPort>.fromValue(Dispatcher.serve( new Purse$Dispatcher(obj)))); 80 return new Purse$ProxyImpl(new Promise<SendPort>.fromValue(Dispatcher.serve( new Purse$Dispatcher(obj))));
81 } 81 }
82 82
83 Promise<int> queryBalance() { 83 Promise<int> queryBalance() {
84 return this.call(["queryBalance"]); 84 return this.call(["queryBalance"]);
85 } 85 }
86 86
87 Purse$Proxy sproutPurse() { 87 Purse$Proxy sproutPurse() {
88 return new Purse$ProxyImpl(this.call(["sproutPurse"])); 88 return new Purse$ProxyImpl(this.call(["sproutPurse"]));
89 } 89 }
90 90
91 Promise<int> deposit(int amount, Purse$Proxy source) { 91 Promise<int> deposit(int amount, Purse$Proxy source) {
92 return new PromiseProxy<int>(this.call(["deposit", amount, source])); 92 return this.call(["deposit", amount, source]);
93 } 93 }
94 } 94 }
95 95
96 class Purse$Dispatcher extends Dispatcher<Purse> { 96 class Purse$Dispatcher extends Dispatcher<Purse> {
97 Purse$Dispatcher(Purse thing) : super(thing) { } 97 Purse$Dispatcher(Purse thing) : super(thing) { }
98 98
99 void process(var message, void reply(var response)) { 99 void process(var message, void reply(var response)) {
100 String command = message[0]; 100 String command = message[0];
101 if (command == "Purse") { 101 if (command == "Purse") {
102 } else if (command == "queryBalance") { 102 } else if (command == "queryBalance") {
103 int queryBalance = target.queryBalance(); 103 int queryBalance = target.queryBalance();
104 reply(queryBalance); 104 reply(queryBalance);
105 } else if (command == "sproutPurse") { 105 } else if (command == "sproutPurse") {
106 Purse sproutPurse = target.sproutPurse(); 106 Purse sproutPurse = target.sproutPurse();
107 SendPort port = Dispatcher.serve(new Purse$Dispatcher(sproutPurse)); 107 SendPort port = Dispatcher.serve(new Purse$Dispatcher(sproutPurse));
108 reply(port); 108 reply(port);
109 } else if (command == "deposit") { 109 } else if (command == "deposit") {
110 int amount = message[1]; 110 int amount = message[1];
111 List<Promise<SendPort>> promises = new List<Promise<SendPort>>(); 111 Purse$Proxy source = new Purse$ProxyImpl(new Promise<SendPort>.fromValue(m essage[2]));
112 promises.add(new PromiseProxy<SendPort>(new Promise<SendPort>.fromValue(me ssage[2])));
113 Purse$Proxy source = new Purse$ProxyImpl(promises[0]);
114 Promise<int> deposit = target.deposit(amount, source); 112 Promise<int> deposit = target.deposit(amount, source);
115 reply(deposit); 113 reply(deposit);
116 } else { 114 } else {
117 // TODO(kasperl,benl): Somehow throw an exception instead. 115 // TODO(kasperl,benl): Somehow throw an exception instead.
118 reply("Exception: command '" + command + "' not understood by Purse."); 116 reply("Exception: command '" + command + "' not understood by Purse.");
119 } 117 }
120 } 118 }
121 } 119 }
122 120
123 class Purse$Dispatcher$Isolate extends Isolate { 121 class Purse$Dispatcher$Isolate extends Isolate {
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
245 expect.succeeded(); 243 expect.succeeded();
246 print("##DONE##"); 244 print("##DONE##");
247 }); 245 });
248 } 246 }
249 247
250 } 248 }
251 249
252 main() { 250 main() {
253 runTests([MintMakerPromiseWithStubsTest.testMain]); 251 runTests([MintMakerPromiseWithStubsTest.testMain]);
254 } 252 }
OLDNEW
« no previous file with comments | « tests/stub-generator/src/MintMakerFullyIsolatedTest-generatedTest.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698