close method

Future<void> close()

Closes the NAT emitter.

Implementation

Future<void> close() async {
  if (_closed) return;
  _closed = true;

  await _reachabilitySub.cancel();
  _timer?.cancel();
  await _emitNATDeviceTypeChanged.close();

  if (!_completer.isCompleted) {
    _completer.complete();
  }

  await _completer.future;
}