| OLD | NEW |
| 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 library response; | 5 library response; |
| 6 | 6 |
| 7 import 'dart:async'; | 7 import 'dart:async'; |
| 8 import 'dart:io'; | 8 import 'dart:io'; |
| 9 import 'dart:scalarlist'; | 9 import 'dart:scalarlist'; |
| 10 | 10 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 /// [Encoding.ISO_8859_1] is used by default, as per [RFC 2616][]. | 24 /// [Encoding.ISO_8859_1] is used by default, as per [RFC 2616][]. |
| 25 /// | 25 /// |
| 26 /// [RFC 2616]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html | 26 /// [RFC 2616]: http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html |
| 27 String get body => decodeString(bodyBytes, _encodingForHeaders(headers)); | 27 String get body => decodeString(bodyBytes, _encodingForHeaders(headers)); |
| 28 | 28 |
| 29 /// Creates a new HTTP response with a string body. | 29 /// Creates a new HTTP response with a string body. |
| 30 Response( | 30 Response( |
| 31 String body, | 31 String body, |
| 32 int statusCode, | 32 int statusCode, |
| 33 {BaseRequest request, | 33 {BaseRequest request, |
| 34 Map<String, String> headers: const <String, String>{}, | 34 Map<String, String> headers: const {}, |
| 35 bool isRedirect: false, | 35 bool isRedirect: false, |
| 36 bool persistentConnection: true, | 36 bool persistentConnection: true, |
| 37 String reasonPhrase}) | 37 String reasonPhrase}) |
| 38 : this.bytes( | 38 : this.bytes( |
| 39 encodeString(body, _encodingForHeaders(headers)), | 39 encodeString(body, _encodingForHeaders(headers)), |
| 40 statusCode, | 40 statusCode, |
| 41 request: request, | 41 request: request, |
| 42 headers: headers, | 42 headers: headers, |
| 43 isRedirect: isRedirect, | 43 isRedirect: isRedirect, |
| 44 persistentConnection: persistentConnection, | 44 persistentConnection: persistentConnection, |
| 45 reasonPhrase: reasonPhrase); | 45 reasonPhrase: reasonPhrase); |
| 46 | 46 |
| 47 /// Create a new HTTP response with a byte array body. | 47 /// Create a new HTTP response with a byte array body. |
| 48 Response.bytes( | 48 Response.bytes( |
| 49 List<int> bodyBytes, | 49 List<int> bodyBytes, |
| 50 int statusCode, | 50 int statusCode, |
| 51 {BaseRequest request, | 51 {BaseRequest request, |
| 52 Map<String, String> headers: const <String, String>{}, | 52 Map<String, String> headers: const {}, |
| 53 bool isRedirect: false, | 53 bool isRedirect: false, |
| 54 bool persistentConnection: true, | 54 bool persistentConnection: true, |
| 55 String reasonPhrase}) | 55 String reasonPhrase}) |
| 56 : bodyBytes = toUint8List(bodyBytes), | 56 : bodyBytes = toUint8List(bodyBytes), |
| 57 super( | 57 super( |
| 58 statusCode, | 58 statusCode, |
| 59 bodyBytes.length, | 59 bodyBytes.length, |
| 60 request: request, | 60 request: request, |
| 61 headers: headers, | 61 headers: headers, |
| 62 isRedirect: isRedirect, | 62 isRedirect: isRedirect, |
| (...skipping 22 matching lines...) Expand all Loading... |
| 85 Encoding _encodingForHeaders(Map<String, String> headers) => | 85 Encoding _encodingForHeaders(Map<String, String> headers) => |
| 86 encodingForCharset(_contentTypeForHeaders(headers).charset); | 86 encodingForCharset(_contentTypeForHeaders(headers).charset); |
| 87 | 87 |
| 88 /// Returns the [ContentType] object for the given headers. Defaults to | 88 /// Returns the [ContentType] object for the given headers. Defaults to |
| 89 /// `application/octet-stream`. | 89 /// `application/octet-stream`. |
| 90 ContentType _contentTypeForHeaders(Map<String, String> headers) { | 90 ContentType _contentTypeForHeaders(Map<String, String> headers) { |
| 91 var contentType = headers[HttpHeaders.CONTENT_TYPE]; | 91 var contentType = headers[HttpHeaders.CONTENT_TYPE]; |
| 92 if (contentType != null) return new ContentType.fromString(contentType); | 92 if (contentType != null) return new ContentType.fromString(contentType); |
| 93 return new ContentType("application", "octet-stream"); | 93 return new ContentType("application", "octet-stream"); |
| 94 } | 94 } |
| OLD | NEW |