| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | |
| 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. | |
| 4 | |
| 5 part of dart.core; | |
| 6 | |
| 7 /** | |
| 8 * A resource that can be read into the program. | |
| 9 * | |
| 10 * WARNING: This API is _experimental_, | |
| 11 * and it may be changed or removed in future releases | |
| 12 * | |
| 13 * A resource is data that can be located using a URI and read into | |
| 14 * the program at runtime. | |
| 15 * The URI may use the `package` scheme to read resources provided | |
| 16 * along with package sources. | |
| 17 */ | |
| 18 abstract class Resource { | |
| 19 /** | |
| 20 * Creates a resource object with the given [uri] as location. | |
| 21 * | |
| 22 * The `uri` is a string containing a valid URI. | |
| 23 * If the string is not a valid URI, using any of the functions on | |
| 24 * the resource object will fail. | |
| 25 * | |
| 26 * The URI may be relative, in which case it will be resolved | |
| 27 * against [Uri.base] before being used. | |
| 28 * | |
| 29 * The URI may use the `package` scheme, which is always supported. | |
| 30 * Other schemes may also be supported where possible. | |
| 31 */ | |
| 32 external const factory Resource(String uri); | |
| 33 | |
| 34 /** | |
| 35 * The location `uri` of this resource. | |
| 36 * | |
| 37 * This is a [Uri] of the `uri` parameter given to the constructor. | |
| 38 * If the parameter was not a valid URI, reading `uri` may fail. | |
| 39 */ | |
| 40 Uri get uri; | |
| 41 | |
| 42 /** Read the resource content as a stream of bytes. */ | |
| 43 Stream<List<int>> openRead(); | |
| 44 | |
| 45 /** Read the resource content. */ | |
| 46 Future<List<int>> readAsBytes(); | |
| 47 | |
| 48 /** | |
| 49 * Read the resource content as a string. | |
| 50 * | |
| 51 * The content is decoded into a string using an [Encoding]. | |
| 52 * If no other encoding is provided, it defaults to UTF-8. | |
| 53 */ | |
| 54 Future<String> readAsString({Encoding encoding}); | |
| 55 } | |
| OLD | NEW |