deleteExpiredRefreshTokens method

Future<void> deleteExpiredRefreshTokens(
  1. Session session, {
  2. Transaction? transaction,
})

Removes all expired refresh tokens from the database.

Implementation

Future<void> deleteExpiredRefreshTokens(
  final Session session, {
  final Transaction? transaction,
}) async {
  final oldestValidRefreshTokenDate =
      clock.now().subtract(AuthenticationTokens.config.refreshTokenLifetime);

  await RefreshToken.db.deleteWhere(
    session,
    where: (final t) => t.lastUpdatedAt < oldestValidRefreshTokenDate,
    transaction: transaction,
  );
}