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

Unified Diff: pkg/http/lib/src/io_client.dart

Issue 94093007: Add stack chain support to pkg/watcher and pkg/http. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years 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
Index: pkg/http/lib/src/io_client.dart
diff --git a/pkg/http/lib/src/io_client.dart b/pkg/http/lib/src/io_client.dart
index 6695fb8c0f2f510dbaa2602825852ff969e1c1e4..b4fa8930458904716bcbdbbf6d92d3aaf1a8b413 100644
--- a/pkg/http/lib/src/io_client.dart
+++ b/pkg/http/lib/src/io_client.dart
@@ -7,6 +7,8 @@ library io_client;
import 'dart:async';
import 'dart:io';
+import 'package:stack_trace/stack_trace.dart';
+
import 'base_client.dart';
import 'base_request.dart';
import 'streamed_response.dart';
@@ -23,7 +25,8 @@ class IOClient extends BaseClient {
Future<StreamedResponse> send(BaseRequest request) {
var stream = request.finalize();
- return _inner.openUrl(request.method, request.url).then((ioRequest) {
+ return Chain.track(_inner.openUrl(request.method, request.url))
+ .then((ioRequest) {
ioRequest.followRedirects = request.followRedirects;
ioRequest.maxRedirects = request.maxRedirects;
ioRequest.contentLength = request.contentLength;
@@ -31,7 +34,7 @@ class IOClient extends BaseClient {
request.headers.forEach((name, value) {
ioRequest.headers.set(name, value);
});
- return stream.pipe(ioRequest);
+ return Chain.track(stream.pipe(ioRequest));
}).then((response) {
var headers = {};
response.headers.forEach((key, values) {

Powered by Google App Engine
This is Rietveld 408576698