BuildRunnerServeProcess.fromParsed constructor

BuildRunnerServeProcess.fromParsed(ArgResults results)

Set up a build_runner process with arguments parsed by liveReloadArgParser.

Implementation

factory BuildRunnerServeProcess.fromParsed(ArgResults results) {
  if (results.rest.length > 1) {
    logger.warning(
        '${RecordPrefix.warning} Do not support serving more than one directory. `$defaultDirectory` will be served instead.\n');
  }
  final uri = new Uri(
      scheme: 'http',
      host: results[CliOption.hostName] as String,
      port: int.parse(results[CliOption.buildRunnerPort] as String,
          onError: (input) {
        logger.warning(
            '${RecordPrefix.warning} The port number `$input` must be an integer. Default `build_runner` port `$defaultPort` is used instead.\n');
        return defaultPort;
      }));
  return new BuildRunnerServeProcess(
      uri,
      results.rest.length == 1 ? results.rest.single : defaultDirectory,
      results[CliOption.lowResourcesMode] == true,
      results[CliOption.config] as String,
      results[CliOption.define] as String);
}