You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cloudsolutions-atoms/lib/controllers/http_status_manger/http_status_manger.dart

39 lines
1.2 KiB
Dart

3 years ago
import '../../models/subtitle.dart';
3 years ago
3 years ago
class HttpStatusManger {
3 years ago
static String getStatusMessage({
3 years ago
required int? status,
required Subtitle? subtitle,
3 years ago
String? messageFor400,
String? messageFor200,
}) {
if (status == null) {
3 years ago
return "careful null status";
3 years ago
}
if (status == -1) {
return subtitle?.currentlyServiceNotAvailable??"";
3 years ago
}
if (status == -2) {
3 years ago
// client's request in process
return subtitle?.waitUntilYourRequestComplete??"";
3 years ago
} else if (status >= 200 && status < 300) {
3 years ago
// client's request was successfully received
return messageFor200 ?? subtitle?.requestCompleteSuccessfully??"";
3 years ago
} else if (status >= 400 && status < 500) {
3 years ago
// client's request have error
3 years ago
switch (status) {
3 years ago
case 400:
return messageFor400 ?? subtitle?.failedToCompleteRequest??"";
3 years ago
default:
return subtitle?.failedToCompleteRequest??"";
3 years ago
}
3 years ago
} else if (status >= 500) {
3 years ago
// server error
return subtitle?.currentlyServiceNotAvailable??"";
3 years ago
} else {
// no error match so return default error
return subtitle?.failedToCompleteRequest??"";
3 years ago
}
}
3 years ago
}