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

Unified Diff: sdk/lib/io/websocket_impl.dart

Issue 25094002: Adapt streams for additional stackTrace argument. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Remove types in closures. Created 7 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sdk/lib/io/stdio.dart ('k') | tests/lib/async/stack_trace09_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sdk/lib/io/websocket_impl.dart
diff --git a/sdk/lib/io/websocket_impl.dart b/sdk/lib/io/websocket_impl.dart
index e2bc326271ba9fb338eb71ca11b222b1a2266484..4162ca1f0f2745db4b395e75a2246528049feb5c 100644
--- a/sdk/lib/io/websocket_impl.dart
+++ b/sdk/lib/io/websocket_impl.dart
@@ -99,9 +99,7 @@ class _WebSocketProtocolTransformer extends StreamEventTransformer {
.fold(new StringBuffer(), (buffer, str) => buffer..write(str))
.then((buffer) {
sink.add(buffer.toString());
- }, onError: (error) {
- sink.addError(error);
- });
+ }, onError: sink.addError);
break;
case _WebSocketOpcode.BINARY:
@@ -114,9 +112,7 @@ class _WebSocketProtocolTransformer extends StreamEventTransformer {
.fold(new BytesBuilder(), (buffer, data) => buffer..add(data))
.then((buffer) {
sink.add(buffer.takeBytes());
- }, onError: (error) {
- sink.addError(error);
- });
+ }, onError: sink.addError);
break;
case _WebSocketOpcode.CLOSE:
@@ -382,7 +378,7 @@ class _WebSocketTransformerImpl implements WebSocketTransformer {
stream.listen((request) {
_upgrade(request)
.then((WebSocket webSocket) => _controller.add(webSocket))
- .catchError((error) => _controller.addError(error));
+ .catchError(_controller.addError);
});
return _controller.stream;
@@ -620,12 +616,12 @@ class _WebSocketConsumer implements StreamConsumer {
.then((_) {
_done();
_closeCompleter.complete(webSocket);
- }, onError: (error) {
+ }, onError: (error, StackTrace stackTrace) {
_closed = true;
_cancel();
if (error is ArgumentError) {
- if (!_done(error)) {
- _closeCompleter.completeError(error);
+ if (!_done(error, stackTrace)) {
+ _closeCompleter.completeError(error, stackTrace);
}
} else {
_done();
@@ -634,10 +630,10 @@ class _WebSocketConsumer implements StreamConsumer {
});
}
- bool _done([error]) {
+ bool _done([error, StackTrace stackTrace]) {
if (_completer == null) return false;
if (error != null) {
- _completer.completeError(error);
+ _completer.completeError(error, stackTrace);
} else {
_completer.complete(webSocket);
}
@@ -656,12 +652,8 @@ class _WebSocketConsumer implements StreamConsumer {
(data) {
_controller.add(data);
},
- onDone: () {
- _done();
- },
- onError: (error) {
- _done(error);
- },
+ onDone: _done,
+ onError: _done,
cancelOnError: true);
if (_issuedPause) {
_subscription.pause();
@@ -832,7 +824,7 @@ class _WebSocketImpl extends Stream implements WebSocket {
}
StreamSubscription listen(void onData(message),
- {void onError(error),
+ {Function onError,
void onDone(),
bool cancelOnError}) {
return _controller.stream.listen(onData,
« no previous file with comments | « sdk/lib/io/stdio.dart ('k') | tests/lib/async/stack_trace09_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698