getCached<T> method
Future<Result<T> >
getCached<T>(
- String path, {
- Map<
String, dynamic> ? queryParameters, - FutureOr<
T> onSuccess(- dynamic data
- FutureOr<
T> onError(- dynamic data
override
Retrieves a cached response for the specified path.
Returns a CacheResult if cached data exists, otherwise returns an error result. This method does not make a network request.
Use getCachedOrNetwork if you want to fall back to a network request when the cache misses.
Implementation
@override
Future<Result<T>> getCached<T>(
String path, {
Map<String, dynamic>? queryParameters,
FutureOr<T> Function(dynamic data)? onSuccess,
FutureOr<T> Function(dynamic data)? onError,
}) async {
final requestOptions = RequestOptions(
path: path,
queryParameters: queryParameters,
headers: _dio.options.headers,
);
try {
return CacheResult(
data: await _resolveResult(
await cacheHandler.get(requestOptions),
onSuccess,
),
);
} catch (e) {
debugPrint(e.toString());
return Result.error(exception: Exception(e.toString()));
}
}