getTournamentDetails method

Future<TournamentDetails?> getTournamentDetails(
  1. String tournamentId
)

Requests tournament details TournamentDetails from server.

Requires tournament identifier tournamentId. Returns tournament details object TournamentDetails in case of success or Null if team tournament not found. Throws DioError in case of network connection problems.

Implementation

Future<TournamentDetails?> getTournamentDetails(String tournamentId) async {
  final int id = tournamentId.parseIdOrThrow;
  try {
    final Response<dynamic> response =
        await _dio.get('/tournaments.$extensionJson/$id');
    return (response.data as List<dynamic>)
        .map((dynamic e) => TournamentDetails.fromMap(e))
        .firstOrNull;
  } on DioError catch (e) {
    if (e.message.isNotFoundError) {
      return null;
    } else {
      rethrow;
    }
  }
}