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

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