Index: sdk/lib/_internal/pub_generated/lib/src/barback/source_directory.dart |
diff --git a/sdk/lib/_internal/pub_generated/lib/src/barback/source_directory.dart b/sdk/lib/_internal/pub_generated/lib/src/barback/source_directory.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..14b0646a16560600398d26175843617068ab492c |
--- /dev/null |
+++ b/sdk/lib/_internal/pub_generated/lib/src/barback/source_directory.dart |
@@ -0,0 +1,35 @@ |
+library pub.barback.source_directory; |
+import 'dart:async'; |
+import 'package:watcher/watcher.dart'; |
+import 'asset_environment.dart'; |
+import 'barback_server.dart'; |
+class SourceDirectory { |
+ final AssetEnvironment _environment; |
+ final String directory; |
+ final String hostname; |
+ final int port; |
+ Future<BarbackServer> get server => _serverCompleter.future; |
+ final _serverCompleter = new Completer<BarbackServer>(); |
+ StreamSubscription<WatchEvent> watchSubscription; |
+ SourceDirectory(this._environment, this.directory, this.hostname, this.port); |
+ Future<BarbackServer> serve() { |
+ return BarbackServer.bind( |
+ _environment, |
+ hostname, |
+ port, |
+ rootDirectory: directory).then((server) { |
+ _serverCompleter.complete(server); |
+ return server; |
+ }); |
+ } |
+ Future close() { |
+ return server.then((server) { |
+ var futures = [server.close()]; |
+ if (watchSubscription != null) { |
+ var cancel = watchSubscription.cancel(); |
+ if (cancel != null) futures.add(cancel); |
+ } |
+ return Future.wait(futures); |
+ }); |
+ } |
+} |