42 lines
1022 B
Dart
42 lines
1022 B
Dart
import 'package:equatable/equatable.dart';
|
|
|
|
/// Base failure class
|
|
abstract class Failure extends Equatable {
|
|
final String message;
|
|
|
|
const Failure(this.message);
|
|
|
|
@override
|
|
List<Object> get props => [message];
|
|
}
|
|
|
|
/// Server failure
|
|
class ServerFailure extends Failure {
|
|
const ServerFailure([super.message = 'Server failure occurred']);
|
|
}
|
|
|
|
/// Cache failure
|
|
class CacheFailure extends Failure {
|
|
const CacheFailure([super.message = 'Cache failure occurred']);
|
|
}
|
|
|
|
/// Network failure
|
|
class NetworkFailure extends Failure {
|
|
const NetworkFailure([super.message = 'Network failure occurred']);
|
|
}
|
|
|
|
/// Validation failure
|
|
class ValidationFailure extends Failure {
|
|
const ValidationFailure([super.message = 'Validation failure occurred']);
|
|
}
|
|
|
|
/// Not found failure
|
|
class NotFoundFailure extends Failure {
|
|
const NotFoundFailure([super.message = 'Resource not found']);
|
|
}
|
|
|
|
/// Unauthorized failure
|
|
class UnauthorizedFailure extends Failure {
|
|
const UnauthorizedFailure([super.message = 'Unauthorized access']);
|
|
}
|