2024-09-06 15:10:00 -04:00
|
|
|
import 'package:logging/logging.dart';
|
2025-12-23 17:54:46 +08:00
|
|
|
import 'package:shelfsdk/audiobookshelf_api.dart';
|
2024-10-03 05:54:29 -04:00
|
|
|
import 'package:vaani/shared/extensions/obfuscation.dart';
|
2024-09-06 15:10:00 -04:00
|
|
|
|
|
|
|
|
final _logger = Logger('ErrorResponse');
|
|
|
|
|
|
2024-09-16 23:51:50 -04:00
|
|
|
class ErrorResponseHandler {
|
2024-09-06 15:10:00 -04:00
|
|
|
String? name;
|
2025-12-23 17:54:46 +08:00
|
|
|
ApiResponse _response;
|
2024-10-04 02:31:51 -04:00
|
|
|
bool logRawResponse;
|
2024-09-06 15:10:00 -04:00
|
|
|
|
2024-09-16 23:51:50 -04:00
|
|
|
ErrorResponseHandler({
|
2024-09-06 15:10:00 -04:00
|
|
|
this.name,
|
2025-12-23 17:54:46 +08:00
|
|
|
dynamic response,
|
2024-10-04 02:31:51 -04:00
|
|
|
this.logRawResponse = false,
|
2025-12-23 17:54:46 +08:00
|
|
|
}) : _response = response ?? BaseResponse(418, '');
|
2024-09-06 15:10:00 -04:00
|
|
|
|
2025-12-23 17:54:46 +08:00
|
|
|
void storeError(ApiResponse response, [Object? error]) {
|
2024-10-04 02:31:51 -04:00
|
|
|
if (logRawResponse) {
|
2025-12-23 17:54:46 +08:00
|
|
|
_logger.severe('for $name got response: ${response.obfuscate()}');
|
2024-10-04 02:31:51 -04:00
|
|
|
}
|
2024-09-06 15:10:00 -04:00
|
|
|
_response = response;
|
|
|
|
|
}
|
|
|
|
|
|
2025-12-23 17:54:46 +08:00
|
|
|
ApiResponse get response => _response;
|
2024-09-06 15:10:00 -04:00
|
|
|
}
|