-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathexceptions.dart
More file actions
82 lines (69 loc) · 2.19 KB
/
exceptions.dart
File metadata and controls
82 lines (69 loc) · 2.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import 'models/error.dart';
class RequestFailure implements Exception {
RequestFailure({required this.url, this.statusCode, required this.requestId, this.token, this.error});
final Uri url;
final int? statusCode;
final String requestId;
final String? token;
final ErrorResponse? error;
@override
String toString() {
final buffer = StringBuffer()
..write('RequestFailure(statusCode: $statusCode')
..write(', requestId: $requestId');
if (error != null) {
buffer.write(', code: ${error?.code}');
final details = error?.details;
if (details != null) buffer.write(', path: ${details.path}, reason: ${details.reason}');
}
buffer.write(')');
return buffer.toString();
}
}
class EndpointNotSupportedException extends RequestFailure {
EndpointNotSupportedException({
required super.url,
required super.requestId,
required super.statusCode,
required List<String> recognizedNotSupportedCodes,
}) : super();
}
class VoicemailNotConfiguredException extends RequestFailure {
VoicemailNotConfiguredException({
required super.url,
required super.requestId,
required super.statusCode,
// required List<String> recognizedNotConfiguredCodes,
}) : super();
}
class UserNotFoundException extends RequestFailure {
UserNotFoundException({required super.url, required super.requestId, required super.statusCode});
@override
String toString() => 'UserNotFoundException($statusCode, $url)';
}
class UnauthorizedException extends RequestFailure {
UnauthorizedException({
required super.url,
required super.requestId,
required super.statusCode,
super.token,
super.error,
});
@override
String toString() {
final code = error?.code;
return 'UnauthorizedException(statusCode: $statusCode, requestId: $requestId, url: $url'
'${code != null ? ', code: $code' : ''})';
}
}
class SessionMissingException extends RequestFailure {
SessionMissingException({
required super.url,
required super.requestId,
required super.statusCode,
super.token,
super.error,
});
@override
String toString() => 'SessionMissingException(statusCode: $statusCode, requestId: $requestId, url: $url)';
}