isStudentRosterFresh method

Future<bool> isStudentRosterFresh(
  1. int courseOfferingId
)

Whether a roster has been fetched within studentRosterTtl.

Implementation

Future<bool> isStudentRosterFresh(int courseOfferingId) async {
  final offering = await (_database.select(
    _database.courseOfferings,
  )..where((row) => row.id.equals(courseOfferingId))).getSingleOrNull();
  final fetchedAt = offering?.studentRosterFetchedAt;
  return fetchedAt != null &&
      DateTime.now().difference(fetchedAt) < studentRosterTtl;
}