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

Side by Side Diff: lib/html/src/Isolates.dart

Issue 11235029: Get rid of ===/!===. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 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 | « lib/html/scripts/systemnative.py ('k') | lib/html/src/Measurement.dart » ('j') | 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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 _serialize(var message) { 5 _serialize(var message) {
6 return new _JsSerializer().traverse(message); 6 return new _JsSerializer().traverse(message);
7 } 7 }
8 8
9 class _JsSerializer extends _Serializer { 9 class _JsSerializer extends _Serializer {
10 10
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 } 153 }
154 return _cachedIsolateId; 154 return _cachedIsolateId;
155 } 155 }
156 156
157 static String _getListenerName(isolateId, portId) => 157 static String _getListenerName(isolateId, portId) =>
158 'dart-port-$isolateId-$portId'; 158 'dart-port-$isolateId-$portId';
159 String get _listenerName => _getListenerName(_isolateId, _portId); 159 String get _listenerName => _getListenerName(_isolateId, _portId);
160 160
161 void receive(callback(var message)) { 161 void receive(callback(var message)) {
162 _callback = callback; 162 _callback = callback;
163 if (_listener === null) { 163 if (_listener == null) {
164 _listener = (Event e) { 164 _listener = (Event e) {
165 var data = JSON.parse(_getPortSyncEventData(e)); 165 var data = JSON.parse(_getPortSyncEventData(e));
166 var replyTo = data[0]; 166 var replyTo = data[0];
167 var message = _deserialize(data[1]); 167 var message = _deserialize(data[1]);
168 var result = _callback(message); 168 var result = _callback(message);
169 _dispatchEvent(replyTo, _serialize(result)); 169 _dispatchEvent(replyTo, _serialize(result));
170 }; 170 };
171 window.on[_listenerName].add(_listener); 171 window.on[_listenerName].add(_listener);
172 } 172 }
173 } 173 }
174 174
175 void close() { 175 void close() {
176 _portMap.remove(_portId); 176 _portMap.remove(_portId);
177 if (_listener !== null) window.on[_listenerName].remove(_listener); 177 if (_listener != null) window.on[_listenerName].remove(_listener);
178 } 178 }
179 179
180 SendPortSync toSendPort() { 180 SendPortSync toSendPort() {
181 return new _LocalSendPortSync._internal(this); 181 return new _LocalSendPortSync._internal(this);
182 } 182 }
183 183
184 static SendPortSync _lookup(int isolateId, int portId) { 184 static SendPortSync _lookup(int isolateId, int portId) {
185 if (isolateId == _isolateId) { 185 if (isolateId == _isolateId) {
186 return _portMap[portId].toSendPort(); 186 return _portMap[portId].toSendPort();
187 } else { 187 } else {
188 return new _RemoteSendPortSync(isolateId, portId); 188 return new _RemoteSendPortSync(isolateId, portId);
189 } 189 }
190 } 190 }
191 } 191 }
192 192
193 get _isolateId => ReceivePortSync._isolateId; 193 get _isolateId => ReceivePortSync._isolateId;
194 194
195 void _dispatchEvent(String receiver, var message) { 195 void _dispatchEvent(String receiver, var message) {
196 var event = new CustomEvent(receiver, false, false, JSON.stringify(message)); 196 var event = new CustomEvent(receiver, false, false, JSON.stringify(message));
197 window.$dom_dispatchEvent(event); 197 window.$dom_dispatchEvent(event);
198 } 198 }
199 199
200 String _getPortSyncEventData(CustomEvent event) => event.detail; 200 String _getPortSyncEventData(CustomEvent event) => event.detail;
OLDNEW
« no previous file with comments | « lib/html/scripts/systemnative.py ('k') | lib/html/src/Measurement.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698