Skip to content

Commit 651c73f

Browse files
Merge pull request #82 from ParsePlatform/richardross.httpclient.error
Fix several continuations inside of HttpClient.
2 parents e8f7844 + 4d2db82 commit 651c73f

File tree

5 files changed

+26
-27
lines changed

5 files changed

+26
-27
lines changed

Parse/Internal/HttpClient.Android.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,7 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
6666

6767
uploadTask = copyTask.Safe().ContinueWith(_ => {
6868
return request.GetRequestStreamAsync();
69-
}).Unwrap()
70-
.OnSuccess(t => {
69+
}).Unwrap().OnSuccess(t => {
7170
var requestStream = t.Result;
7271

7372
int bufferSize = 4096;
@@ -89,14 +88,14 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
8988
});
9089
}).ContinueWith(_ => {
9190
requestStream.Close();
92-
});
91+
return _;
92+
}).Unwrap();
9393
}).Unwrap();
9494
}
9595

96-
return uploadTask.Safe().ContinueWith(_ => {
96+
return uploadTask.Safe().OnSuccess(_ => {
9797
return request.GetResponseAsync();
98-
}).Unwrap()
99-
.ContinueWith(t => {
98+
}).Unwrap().OnSuccess(t => {
10099
// Handle canceled
101100
cancellationToken.ThrowIfCancellationRequested();
102101

Parse/Internal/HttpClient.NetFx45.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,7 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
6565

6666
uploadTask = copyTask.Safe().ContinueWith(_ => {
6767
return request.GetRequestStreamAsync();
68-
}).Unwrap()
69-
.OnSuccess(t => {
68+
}).Unwrap().OnSuccess(t => {
7069
var requestStream = t.Result;
7170

7271
int bufferSize = 4096;
@@ -89,14 +88,14 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
8988
}).ContinueWith(_ => {
9089
//requestStream.Flush();
9190
requestStream.Dispose();
92-
});
91+
return _;
92+
}).Unwrap();
9393
}).Unwrap();
9494
}
9595

96-
return uploadTask.Safe().ContinueWith(_ => {
96+
return uploadTask.Safe().OnSuccess(_ => {
9797
return request.GetResponseAsync();
98-
}).Unwrap()
99-
.ContinueWith(t => {
98+
}).Unwrap().OnSuccess(t => {
10099
// Handle canceled
101100
cancellationToken.ThrowIfCancellationRequested();
102101

@@ -147,7 +146,8 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
147146
});
148147
}).ContinueWith(_ => {
149148
responseStream.Dispose();
150-
149+
return _;
150+
}).Unwrap().OnSuccess(_ => {
151151
// If getting stream size is not supported, then report download only once.
152152
if (totalLength == -1) {
153153
downloadProgress.Report(new ParseDownloadProgressEventArgs { Progress = 1.0 });

Parse/Internal/HttpClient.Phone.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,8 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
9494
});
9595
}).ContinueWith(_ => {
9696
requestStream.Close();
97-
});
97+
return _;
98+
}).Unwrap();
9899
}).Unwrap();
99100
}
100101

Parse/Internal/HttpClient.WinRT.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,7 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
6565

6666
uploadTask = copyTask.Safe().ContinueWith(_ => {
6767
return request.GetRequestStreamAsync();
68-
}).Unwrap()
69-
.OnSuccess(t => {
68+
}).Unwrap().OnSuccess(t => {
7069
var requestStream = t.Result;
7170

7271
int bufferSize = 4096;
@@ -89,14 +88,14 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
8988
}).ContinueWith(_ => {
9089
//requestStream.Flush();
9190
requestStream.Dispose();
92-
});
91+
return _;
92+
}).Unwrap();
9393
}).Unwrap();
9494
}
9595

96-
return uploadTask.Safe().ContinueWith(_ => {
96+
return uploadTask.Safe().OnSuccess(_ => {
9797
return request.GetResponseAsync();
98-
}).Unwrap()
99-
.ContinueWith(t => {
98+
}).Unwrap().OnSuccess(t => {
10099
// Handle canceled
101100
cancellationToken.ThrowIfCancellationRequested();
102101

@@ -147,7 +146,8 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
147146
});
148147
}).ContinueWith(_ => {
149148
responseStream.Dispose();
150-
149+
return _;
150+
}).Unwrap().OnSuccess(_ => {
151151
// If getting stream size is not supported, then report download only once.
152152
if (totalLength == -1) {
153153
downloadProgress.Report(new ParseDownloadProgressEventArgs { Progress = 1.0 });

Parse/Internal/HttpClient.iOS.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,7 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
6767

6868
uploadTask = copyTask.Safe().ContinueWith(_ => {
6969
return request.GetRequestStreamAsync();
70-
}).Unwrap()
71-
.OnSuccess(t => {
70+
}).Unwrap().OnSuccess(t => {
7271
var requestStream = t.Result;
7372

7473
int bufferSize = 4096;
@@ -90,14 +89,14 @@ public Task<Tuple<HttpStatusCode, string>> ExecuteAsync(HttpRequest httpRequest,
9089
});
9190
}).ContinueWith(_ => {
9291
requestStream.Close();
93-
});
92+
return _;
93+
}).Unwrap();
9494
}).Unwrap();
9595
}
9696

97-
return uploadTask.Safe().ContinueWith(_ => {
97+
return uploadTask.Safe().OnSuccess(_ => {
9898
return request.GetResponseAsync();
99-
}).Unwrap()
100-
.ContinueWith(t => {
99+
}).Unwrap().OnSuccess(t => {
101100
// Handle canceled
102101
cancellationToken.ThrowIfCancellationRequested();
103102

0 commit comments

Comments
 (0)