feat:dio client done
This commit is contained in:
32
lib/core/exceptions/exceptions.dart
Normal file
32
lib/core/exceptions/exceptions.dart
Normal file
@@ -0,0 +1,32 @@
|
||||
import 'package:dio/dio.dart';
|
||||
|
||||
class ServerException implements Exception {
|
||||
final String errorMessage;
|
||||
final String errorKey;
|
||||
final num statusCode;
|
||||
|
||||
const ServerException({
|
||||
required this.statusCode,
|
||||
required this.errorMessage,
|
||||
required this.errorKey,
|
||||
});
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return 'ServerException(statusCode: $statusCode, errorMessage: $errorMessage, errorKey: $errorKey)';
|
||||
}
|
||||
}
|
||||
|
||||
class CustomDioException implements Exception {
|
||||
final String errorMessage;
|
||||
final DioExceptionType type;
|
||||
final int? statusCode;
|
||||
|
||||
CustomDioException({required this.errorMessage, required this.type, this.statusCode});
|
||||
}
|
||||
|
||||
class ParsingException implements Exception {
|
||||
final String errorMessage;
|
||||
|
||||
const ParsingException({required this.errorMessage});
|
||||
}
|
||||
44
lib/core/exceptions/failure.dart
Normal file
44
lib/core/exceptions/failure.dart
Normal file
@@ -0,0 +1,44 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
|
||||
class Failure extends Equatable {
|
||||
final String? errorMessage;
|
||||
final String? errorKey;
|
||||
|
||||
const Failure({
|
||||
this.errorMessage,
|
||||
this.errorKey,
|
||||
}); //error key kere bomasa required qilish shartamas
|
||||
@override
|
||||
List<Object?> get props => [
|
||||
errorMessage,
|
||||
errorKey,
|
||||
];
|
||||
}
|
||||
|
||||
class ServerFailure extends Failure {
|
||||
final num statusCode;
|
||||
|
||||
const ServerFailure({
|
||||
required super.errorMessage,
|
||||
required this.statusCode,
|
||||
required super.errorKey,
|
||||
});
|
||||
}
|
||||
|
||||
class DioFailure extends Failure {
|
||||
final DioExceptionType type;
|
||||
final int? statusCode;
|
||||
|
||||
const DioFailure({
|
||||
required super.errorMessage,
|
||||
this.type = DioExceptionType.badResponse,
|
||||
this.statusCode,
|
||||
});
|
||||
}
|
||||
|
||||
class ParsingFailure extends Failure {
|
||||
const ParsingFailure({required super.errorMessage});
|
||||
}
|
||||
|
||||
class CacheFailure extends Failure {}
|
||||
Reference in New Issue
Block a user