NetworkManager.instance constructor
NetworkManager.instance({
- required BuildContext context,
- required String api,
- dynamic req,
- Map<
String, dynamic> ? query, - void onSuccess(
- BuildContext? context,
- NMResponse result
- void onFailed(
- BuildContext? context,
- NMResponse result
- Function? onStart,
- Function? onEnd,
- Duration? timeout,
- CancelToken? cancelToken,
- Map<
String, dynamic> ? headers, - bool showFailedDialog = true,
- bool callDefaults = true,
- bool followRedirect = true,
- bool validStatus(
- int?
- bool showSuccessDialog = false,
- bool forbidCancelWhenOffline = false,
Implementation
factory NetworkManager.instance({
required BuildContext context,
required String api,
dynamic req,
Map<String, dynamic>? query,
void Function(BuildContext? context, NMResponse result)? onSuccess,
void Function(BuildContext? context, NMResponse result)? onFailed,
Function? onStart,
Function? onEnd,
Duration? timeout,
CancelToken? cancelToken,
Map<String, dynamic>? headers,
bool showFailedDialog = true,
bool callDefaults = true,
bool followRedirect = true,
bool Function(int?)? validStatus,
bool showSuccessDialog = false,
bool forbidCancelWhenOffline = false,
}) {
NetworkManagerMetaData meta = NetworkManagerMetaData();
BaseOptions finalOptions = meta.dioOption;
if (headers != null) {
finalOptions.headers = headers;
}
if (timeout != null) {
finalOptions.connectTimeout = timeout;
finalOptions.sendTimeout = timeout;
finalOptions.receiveTimeout = timeout;
}
finalOptions.followRedirects = followRedirect;
if (validStatus != null) {
finalOptions.validateStatus = validStatus;
}
return NetworkManager._(
context: context,
api: api,
req: req,
query: query,
onSuccess: onSuccess ?? (BuildContext? context, NMResponse responseJson) {},
onFailed: onFailed ?? (BuildContext? context, NMResponse responseJson) {},
onStart: onStart ?? () {},
onEnd: onEnd ?? () {},
cancelToken: cancelToken ?? meta.globalCancelToken,
showFailedDialog: showFailedDialog,
callDefaults: callDefaults,
showSuccessDialog: showSuccessDialog,
onSuccessDefault: meta.onSuccessDefault,
onFailedDefault: meta.onFailedDefault,
onStartDefault: meta.onStartDefault,
onEndDefault: meta.onEndDefault,
token: meta.token,
successRules: meta.successRules,
tokenExpireRules: meta.tokenExpireRules,
onTokenExpire: meta.onTokenExpire,
successMsgExtractor: meta.successMsgExtractor,
errorMsgExtractor: meta.errorMsgExtractor,
successDialog: meta.successDialog,
useFancyDialog: meta.useFancyDialog,
failedDialog: meta.failedDialog,
forbidCancelWhenOffline: forbidCancelWhenOffline,
dio: Dio()..options = finalOptions,
);
}