| 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 /** | 5 /** |
| 6 * [ListInputStream] makes it possible to use the [InputStream] | 6 * [ListInputStream] makes it possible to use the [InputStream] |
| 7 * interface to stream over data that is received in chunks as lists | 7 * interface to stream over data that is received in chunks as lists |
| 8 * of integers. | 8 * of integers. |
| 9 * | 9 * |
| 10 * When a new list of integers is received it can be written to the | 10 * When a new list of integers is received it can be written to the |
| 11 * [ListInputStream] using the [write] method. The [markEndOfStream] | 11 * [ListInputStream] using the [write] method. The [markEndOfStream] |
| 12 * method must be called when the last data has been written to the | 12 * method must be called when the last data has been written to the |
| 13 * [ListInputStream]. | 13 * [ListInputStream]. |
| 14 */ | 14 */ |
| 15 interface ListInputStream extends InputStream default _ListInputStream { | 15 abstract class ListInputStream implements InputStream { |
| 16 /** | 16 /** |
| 17 * Create an empty [ListInputStream] to which data can be written | 17 * Create an empty [ListInputStream] to which data can be written |
| 18 * using the [write] method. | 18 * using the [write] method. |
| 19 */ | 19 */ |
| 20 ListInputStream(); | 20 factory ListInputStream() => new _ListInputStream(); |
| 21 | 21 |
| 22 /** | 22 /** |
| 23 * Write more data to be streamed over to the [ListInputStream]. | 23 * Write more data to be streamed over to the [ListInputStream]. |
| 24 */ | 24 */ |
| 25 void write(List<int> data); | 25 void write(List<int> data); |
| 26 | 26 |
| 27 /** | 27 /** |
| 28 * Notify the [ListInputStream] that no more data will be written to | 28 * Notify the [ListInputStream] that no more data will be written to |
| 29 * it. | 29 * it. |
| 30 */ | 30 */ |
| 31 void markEndOfStream(); | 31 void markEndOfStream(); |
| 32 } | 32 } |
| 33 | 33 |
| 34 | 34 |
| 35 /** | 35 /** |
| 36 * [ListOutputStream] makes it possible to use the [OutputStream] | 36 * [ListOutputStream] makes it possible to use the [OutputStream] |
| 37 * interface to write data to a [List] of integers. | 37 * interface to write data to a [List] of integers. |
| 38 */ | 38 */ |
| 39 interface ListOutputStream extends OutputStream default _ListOutputStream { | 39 abstract class ListOutputStream implements OutputStream { |
| 40 /** | 40 /** |
| 41 * Create a [ListOutputStream]. | 41 * Create a [ListOutputStream]. |
| 42 */ | 42 */ |
| 43 ListOutputStream(); | 43 factory ListOutputStream() => new _ListOutputStream(); |
| 44 | 44 |
| 45 /** | 45 /** |
| 46 * Reads all available data from the stream. If no data is available `null` | 46 * Reads all available data from the stream. If no data is available `null` |
| 47 * will be returned. | 47 * will be returned. |
| 48 */ | 48 */ |
| 49 List<int> read(); | 49 List<int> read(); |
| 50 | 50 |
| 51 /** | 51 /** |
| 52 * Sets the handler that gets called when data is available. | 52 * Sets the handler that gets called when data is available. |
| 53 */ | 53 */ |
| 54 void set onData(void callback()); | 54 void set onData(void callback()); |
| 55 } | 55 } |
| OLD | NEW |