getWatched method

  1. @override
Future<List<Movie>> getWatched()
override

Retrieves the list of watched movies.

Implementation

@override
Future<List<Movie>> getWatched() async {
  // Check if cache is valid.

  if (_cachedWatched != null &&
      _watchedCacheTime != null &&
      DateTime.now().difference(_watchedCacheTime!) < _userDataTtl) {
    return List.from(_cachedWatched!);
  }

  // Cache miss or expired - fetch from manager.

  final movies = await _manager.getWatched();

  // Update cache.

  _cachedWatched = List.from(movies);
  _watchedCacheTime = DateTime.now();

  return movies;
}