restore method

Future<OAuthSession?> restore(
  1. String sub
)

Restores a stored session for sub, refreshing it if it has expired.

Returns null when no session is stored for sub.

Implementation

Future<OAuthSession?> restore(final String sub) async {
  final session = await _sessionStore.find(sub);
  if (session == null) return null;

  final expiresAt = session.expiresAt;
  if (expiresAt != null && expiresAt.isBefore(DateTime.now().toUtc())) {
    return refresh(session);
  }

  return session;
}