forked from dart-lang/http
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathstreamed_response.dart
36 lines (33 loc) · 1.27 KB
/
streamed_response.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'base_request.dart';
import 'base_response.dart';
import 'byte_stream.dart';
import 'utils.dart';
/// An HTTP response where the response body is received asynchronously after
/// the headers have been received.
class StreamedResponse extends BaseResponse {
/// The stream from which the response body data can be read.
///
/// This should always be a single-subscription stream.
final ByteStream stream;
/// Creates a new streaming response.
///
/// [stream] should be a single-subscription stream.
StreamedResponse(Stream<List<int>> stream, int statusCode,
{int contentLength,
BaseRequest request,
Map<String, String> headers = const {},
bool isRedirect = false,
bool persistentConnection = true,
String reasonPhrase})
: stream = toByteStream(stream),
super(statusCode,
contentLength: contentLength,
request: request,
headers: headers,
isRedirect: isRedirect,
persistentConnection: persistentConnection,
reasonPhrase: reasonPhrase);
}