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

Side by Side Diff: sdk/lib/io/http_impl.dart

Issue 14914002: Change fromString constructor to parse static method (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fixed additional tests Created 7 years, 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « sdk/lib/io/http_headers.dart ('k') | tests/standalone/io/http_auth_digest_test.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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 part of dart.io; 5 part of dart.io;
6 6
7 class _HttpIncoming extends Stream<List<int>> { 7 class _HttpIncoming extends Stream<List<int>> {
8 final int _transferLength; 8 final int _transferLength;
9 final Completer _dataCompleter = new Completer(); 9 final Completer _dataCompleter = new Completer();
10 Stream<List<int>> _stream; 10 Stream<List<int>> _stream;
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 } 284 }
285 285
286 // Fall through to here to perform normal response handling if 286 // Fall through to here to perform normal response handling if
287 // there is no sensible authorization handling. 287 // there is no sensible authorization handling.
288 return new Future.value(this); 288 return new Future.value(this);
289 } 289 }
290 290
291 List<String> challenge = headers[HttpHeaders.WWW_AUTHENTICATE]; 291 List<String> challenge = headers[HttpHeaders.WWW_AUTHENTICATE];
292 assert(challenge != null || challenge.length == 1); 292 assert(challenge != null || challenge.length == 1);
293 _HeaderValue header = 293 _HeaderValue header =
294 new _HeaderValue.fromString(challenge[0], parameterSeparator: ","); 294 _HeaderValue.parse(challenge[0], parameterSeparator: ",");
295 _AuthenticationScheme scheme = 295 _AuthenticationScheme scheme =
296 new _AuthenticationScheme.fromString(header.value); 296 new _AuthenticationScheme.fromString(header.value);
297 String realm = header.parameters["realm"]; 297 String realm = header.parameters["realm"];
298 298
299 // See if any matching credentials are available. 299 // See if any matching credentials are available.
300 _Credentials cr = _httpClient._findCredentials(_httpRequest.uri, scheme); 300 _Credentials cr = _httpClient._findCredentials(_httpRequest.uri, scheme);
301 if (cr != null) { 301 if (cr != null) {
302 // For basic authentication don't retry already used credentials 302 // For basic authentication don't retry already used credentials
303 // as they must have already been added to the request causing 303 // as they must have already been added to the request causing
304 // this authenticate response. 304 // this authenticate response.
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 return _httpClient._openUrlFromRequest(_httpRequest.method, 364 return _httpClient._openUrlFromRequest(_httpRequest.method,
365 _httpRequest.uri, 365 _httpRequest.uri,
366 _httpRequest) 366 _httpRequest)
367 .then((request) => request.close()); 367 .then((request) => request.close());
368 }); 368 });
369 } 369 }
370 370
371 List<String> challenge = headers[HttpHeaders.PROXY_AUTHENTICATE]; 371 List<String> challenge = headers[HttpHeaders.PROXY_AUTHENTICATE];
372 assert(challenge != null || challenge.length == 1); 372 assert(challenge != null || challenge.length == 1);
373 _HeaderValue header = 373 _HeaderValue header =
374 new _HeaderValue.fromString(challenge[0], parameterSeparator: ","); 374 _HeaderValue.parse(challenge[0], parameterSeparator: ",");
375 _AuthenticationScheme scheme = 375 _AuthenticationScheme scheme =
376 new _AuthenticationScheme.fromString(header.value); 376 new _AuthenticationScheme.fromString(header.value);
377 String realm = header.parameters["realm"]; 377 String realm = header.parameters["realm"];
378 378
379 // See if any credentials are available. 379 // See if any credentials are available.
380 var proxy = _httpRequest._proxy; 380 var proxy = _httpRequest._proxy;
381 381
382 var cr = _httpClient._findProxyCredentials(proxy); 382 var cr = _httpClient._findProxyCredentials(proxy);
383 if (cr != null) { 383 if (cr != null) {
384 return retryWithProxyCredentials(cr); 384 return retryWithProxyCredentials(cr);
(...skipping 793 matching lines...) Expand 10 before | Expand all | Expand 10 after
1178 } else { 1178 } else {
1179 destroy(); 1179 destroy();
1180 } 1180 }
1181 }); 1181 });
1182 // For digest authentication check if the server 1182 // For digest authentication check if the server
1183 // requests the client to start using a new nonce. 1183 // requests the client to start using a new nonce.
1184 if (cr != null && cr.scheme == _AuthenticationScheme.DIGEST) { 1184 if (cr != null && cr.scheme == _AuthenticationScheme.DIGEST) {
1185 var authInfo = incoming.headers["authentication-info"]; 1185 var authInfo = incoming.headers["authentication-info"];
1186 if (authInfo != null && authInfo.length == 1) { 1186 if (authInfo != null && authInfo.length == 1) {
1187 var header = 1187 var header =
1188 new _HeaderValue.fromString( 1188 _HeaderValue.parse(
1189 authInfo[0], parameterSeparator: ','); 1189 authInfo[0], parameterSeparator: ',');
1190 var nextnonce = header.parameters["nextnonce"]; 1190 var nextnonce = header.parameters["nextnonce"];
1191 if (nextnonce != null) cr.nonce = nextnonce; 1191 if (nextnonce != null) cr.nonce = nextnonce;
1192 } 1192 }
1193 } 1193 }
1194 request._onIncoming(incoming); 1194 request._onIncoming(incoming);
1195 }) 1195 })
1196 // If we see a state error, we failed to get the 'first' 1196 // If we see a state error, we failed to get the 'first'
1197 // element. 1197 // element.
1198 // Transform the error to a HttpParserException, for 1198 // Transform the error to a HttpParserException, for
(...skipping 979 matching lines...) Expand 10 before | Expand all | Expand 10 after
2178 2178
2179 2179
2180 class _RedirectInfo implements RedirectInfo { 2180 class _RedirectInfo implements RedirectInfo {
2181 const _RedirectInfo(int this.statusCode, 2181 const _RedirectInfo(int this.statusCode,
2182 String this.method, 2182 String this.method,
2183 Uri this.location); 2183 Uri this.location);
2184 final int statusCode; 2184 final int statusCode;
2185 final String method; 2185 final String method;
2186 final Uri location; 2186 final Uri location;
2187 } 2187 }
OLDNEW
« no previous file with comments | « sdk/lib/io/http_headers.dart ('k') | tests/standalone/io/http_auth_digest_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698