startOrRecoverTrack method
Implementation
@override
Future<TrackStartResult> startOrRecoverTrack(
TrackStartRequest request) async {
_requireOwner(request.owner);
final current = _currentTrack;
if (current == null || current.isTerminal) return startNewTrack(request);
if (current.status == TrackStatus.active) {
return TrackStartResult(
track: current,
disposition: TrackStartDisposition.reusedActive,
readiness: _readiness,
);
}
return _resume(current);
}