saveTokens method

  1. @override
Future<void> saveTokens({
  1. required String accessToken,
  2. required String refreshToken,
})
override

Saves tokens

Implementation

@override
Future<void> saveTokens({
  required String accessToken,
  required String refreshToken,
}) async {
  final isRefresh = _cachedAccessToken != null && _cachedRefreshToken != null;
  _cachedAccessToken = accessToken;
  _cachedRefreshToken = refreshToken;
  await Future.wait([
    _write(accessTokenKey, accessToken),
    _write(refreshTokenKey, refreshToken),
  ]);

  final event = TokenChangeEvent(
    accessToken: accessToken,
    refreshToken: refreshToken,
    type: isRefresh ? TokenChangeType.refreshed : TokenChangeType.saved,
  );

  _controller.add(event);
  for (final listener in _listeners) {
    listener(accessToken, refreshToken);
  }
}