applyStrategy<R, T> method

  1. @override
Future<R?> applyStrategy<R, T>(
  1. AsyncBloc<T> asyncBloc,
  2. String key,
  3. SerializerBloc<R, T> serializerBloc,
  4. int ttlValue,
  5. Storage storage,
)
override

Implementation

@override
Future<R?> applyStrategy<R, T>(
  AsyncBloc<T> asyncBloc,
  String key,
  SerializerBloc<R, T> serializerBloc,
  int ttlValue,
  Storage storage,
) async {
  return serializerBloc(
    await invokeAsync(asyncBloc, key, storage).onError(
      (RestException<T> restError, stackTrace) {
        if (restError.code == 403 || restError.code == 404) {
          storage.clear(prefix: key);
          return Future.error(restError);
        }
        return Future.value();
      },
    ),
  );
}