getFromPath method

  1. @override
Future<List<CacheResponse>> getFromPath(
  1. RegExp pathPattern, {
  2. Map<String, String?>? queryParams,
})
override

Retrieves cached responses from a path pattern.

pathPattern path pattern (e.g. RegExp('https://www.example.com/a/b') or RegExp(r'https://www.example.com/a/\d+)).

queryParams filter is processed in the following way:

  • null: all entries are collected,
  • null value: all entries containing the key are collected,
  • otherwise key/value match only.

You should be very restrictive when using this method as the underlying store may parse and load all data from the store.

Implementation

@override
Future<List<CacheResponse>> getFromPath(
  RegExp pathPattern, {
  Map<String, String?>? queryParams,
}) async {
  final responses = <CacheResponse>[];

  responses.addAll(
      await primary.getFromPath(pathPattern, queryParams: queryParams));
  responses.addAll(
      await secondary.getFromPath(pathPattern, queryParams: queryParams));

  return responses.toSet().toList(growable: false);
}