getAuthTokenResult method
Future<AuthTokenResult>
getAuthTokenResult(
{ - bool forceRefresh = false,
})
override
Implementation
@override
Future<AuthTokenResult> getAuthTokenResult(
{bool forceRefresh = false}) async {
LoggerService logger = LittleFishCore.instance.get<LoggerService>();
IdTokenResult r = await kUser.getIdTokenResult(forceRefresh);
DateTime expirationTime = r.expirationTime ?? DateTime.now();
int remainingTokenTime =
expirationTime.difference(DateTime.now().toUtc()).inMinutes;
logger.debug(
'littlefish-http-client',
'Remaining Token Time: $remainingTokenTime',
);
if (remainingTokenTime <= 10) {
logger.info(
'littlefish-http-client',
'Token refresh started for $kUser, with remaining time: $remainingTokenTime',
);
r = await kUser.getIdTokenResult(true);
logger.info(
'littlefish-http-client',
'Token refresh completed for $kUser',
);
}
return AuthTokenResult(
token: r.token ?? '',
expirationTime: r.expirationTime ?? DateTime.now(),
authTime: r.authTime ?? DateTime.now(),
issuedAtTime: r.issuedAtTime ?? DateTime.now(),
signInProvider: r.signInProvider ?? '',
claims: r.claims ?? {},
);
}