fromResponse static method
Implementation
static OAuthToken fromResponse(AccessTokenResponse response,
{OAuthToken? oldToken}) {
final atExpiresAt =
DateTime.now().millisecondsSinceEpoch + response.expiresIn * 1000;
var refreshToken;
var rtExpiresAt;
if (response.refreshToken != null) {
refreshToken = response.refreshToken;
if (refreshToken != null && response.refreshTokenExpiresIn != null) {
rtExpiresAt = DateTime.now().millisecondsSinceEpoch +
response.refreshTokenExpiresIn! * 1000;
}
} else {
refreshToken = oldToken != null
? oldToken.refreshToken
: throw KakaoClientException(
'Refresh token not found in the response.');
rtExpiresAt = oldToken.refreshTokenExpiresAt.millisecondsSinceEpoch;
}
var scopes;
if (response.scope != null) {
scopes = response.scope!.split(' ');
} else {
scopes = oldToken?.scopes;
}
return OAuthToken(
response.accessToken,
DateTime.fromMillisecondsSinceEpoch(atExpiresAt),
refreshToken,
DateTime.fromMillisecondsSinceEpoch(rtExpiresAt),
scopes);
}