delete method
Future<Either<NetworkError, dynamic> >
delete(
- {required String deletePath,
- int retry = 0,
- Map<
String, dynamic> ? queryParameter, - Map<
String, dynamic> ? header}
override
Implementation
@override
Future<Either<NetworkError, dynamic>> delete(
{required String deletePath,
int retry = 0,
Map<String, dynamic>? queryParameter,
Map<String, dynamic>? header}) async {
final connectivityResult = await connectivity.checkConnectivity();
if (connectivityResult != ConnectivityResult.none) {
try {
// await baseStorage.openBox(StorageConstants.base);
final Map<String, dynamic> dioHeader = _dio.options.headers;
final Map<String, dynamic> headers = {
'content-type': ContentType.json.mimeType,
'Accept': ContentType.json.mimeType,
};
if (header != null) {
headers.addAll(header);
}
dioHeader.addAll(headers);
_dio.options.headers = dioHeader;
final Response response = await _requestDelete(
retry: retry,
path: deletePath,
queryParameter: queryParameter,
);
return right(response.data);
} on DioError catch (e) {
debugPrint('================ERROR==================');
debugPrint(e.type.toString());
switch (e.type) {
case DioErrorType.connectionTimeout:
return left(const NetworkError.timeout());
case DioErrorType.unknown:
return left(NetworkError.other(e: e));
default:
return left(NetworkError.serverError(response: e.response));
}
}
} else {
return left(const NetworkError.noInternet());
}
}