Vaani/lib/shared/utils/error_response.dart

27 lines
674 B
Dart
Raw Normal View History

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';
import 'package:vaani/shared/extensions/obfuscation.dart';
2024-09-06 15:10:00 -04:00
final _logger = Logger('ErrorResponse');
class ErrorResponseHandler {
2024-09-06 15:10:00 -04:00
String? name;
2025-12-23 17:54:46 +08:00
ApiResponse _response;
bool logRawResponse;
2024-09-06 15:10:00 -04:00
ErrorResponseHandler({
2024-09-06 15:10:00 -04:00
this.name,
2025-12-23 17:54:46 +08:00
dynamic response,
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]) {
if (logRawResponse) {
2025-12-23 17:54:46 +08:00
_logger.severe('for $name got response: ${response.obfuscate()}');
}
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
}