unmarkFailedAddress method

Future<void> unmarkFailedAddress(
  1. String address
)

Unmark a failed address in route planner

Implementation

Future<void> unmarkFailedAddress(String address) async {
  LavalinkLogger.debug('Unmarking failed address', tag: 'REST');

  try {
    final uri = Uri.parse('$baseUrl/v4/routeplanner/free/address');

    final request = await _httpClient.postUrl(uri);
    _addHeaders(request);
    request.headers.set('Content-Type', 'application/json');
    request.write(jsonEncode({'address': address}));

    final response = await request.close();
    await response.drain();

    if (response.statusCode != 204 && response.statusCode != 200) {
      throw LavalinkException(
        'Failed to unmark address: ${response.statusCode}',
        statusCode: response.statusCode,
      );
    }
  } catch (e) {
    if (e is LavalinkException) rethrow;
    throw LavalinkException('Failed to unmark address: $e', cause: e);
  }
}