| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // BSD-style license that can be found in the LICENSE file. | |
| 4 | |
| 5 library barback.asset_provider; | |
| 6 | |
| 7 import 'dart:async'; | |
| 8 | |
| 9 import 'asset.dart'; | |
| 10 import 'asset_id.dart'; | |
| 11 import 'transformer.dart'; | |
| 12 | |
| 13 // TODO(nweiz): change the name of this class now that it provides more than | |
| 14 // just assets. | |
| 15 /// API for locating and accessing packages on disk. | |
| 16 /// | |
| 17 /// Implemented by pub and provided to barback so that it isn't coupled | |
| 18 /// directly to pub. | |
| 19 abstract class AssetProvider { | |
| 20 /// The names of all packages that can be provided by this provider. | |
| 21 /// | |
| 22 /// This is equal to the transitive closure of the entrypoint package | |
| 23 /// dependencies. | |
| 24 Iterable<String> get packages; | |
| 25 | |
| 26 // TODO(rnystrom): Make this async. | |
| 27 /// The paths of all available asset files in [package], relative to the | |
| 28 /// package's root directory. | |
| 29 /// | |
| 30 /// You can pass [within], which should be the relative path to a directory | |
| 31 /// within the package, to only return the files within that subdirectory. | |
| 32 List<AssetId> listAssets(String package, {String within}); | |
| 33 | |
| 34 /// Returns the list of transformer phases that are applicable to [package]. | |
| 35 /// | |
| 36 /// The phases will be run in sequence, with the outputs of one pipelined into | |
| 37 /// the next. All [Transformer]s in a single phase will be run in parallel. | |
| 38 Iterable<Iterable<Transformer>> getTransformers(String package); | |
| 39 | |
| 40 Future<Asset> getAsset(AssetId id); | |
| 41 } | |
| OLD | NEW |