dispose method

Future<void> dispose()

Implementation

Future<void> dispose() async {
  List<Future> futures = [];
  await _invokeMethod('dispose');
  if (!_playerStateController.isClosed)
    futures.add(_playerStateController.close());
  if (!_positionController.isClosed) futures.add(_positionController.close());
  if (!_durationController.isClosed) futures.add(_durationController.close());
  if (!_completionController.isClosed)
    futures.add(_completionController.close());
  if (!_errorController.isClosed) futures.add(_errorController.close());
  if (!_currentPlayingIndexController.isClosed)
    futures.add(_currentPlayingIndexController.close());
  if (!_audioSessionIdController.isClosed)
    futures.add(_audioSessionIdController.close());
  if (!_notificationActionController.isClosed)
    futures.add(_notificationActionController.close());
  await Future.wait(futures);
}