serve method

  1. @override
Future<Null> serve ([logMessage = _defaultMessage ])

Starts this server at uri and will log a message returned from logMessage when this server is successfully started.

This method must be called only once.

Implementation

@override
Future<Null> serve([logMessage = _defaultMessage]) async {
  await super.serve(logMessage);
  channels.listen((channel) {
    _activeChannels.add(channel);
    channel.stream.where((dynamic data) => data == disconnectSignal).listen(
        (dynamic _) {
      channel.sink.close(1001);
    }, onDone: () {
      _activeChannels.remove(channel);
    });
  });
  onBuild.listen((_) {
    _activeChannels
        .forEach((activeChannel) => activeChannel.sink.add(reloadSignal));
  });
}