in Source/Services/Tailwind.Traders.Login.Api/Services/TokenHandlerService.cs [50:86]
public TokenResponseModel RefreshAccessToken(string token)
{
var refreshToken = GetRegisteredRefreshToken(token);
String userName;
String newRefreshToken;
if (refreshToken == null)
{
userName = RetrieveUserFromToken(token);
if (userName == null)
{
throw new Exception("Refresh token is not valid.");
}
newRefreshToken = GetNewRefreshToken(userName);
_refreshTokens.Add(new RefreshTokenModel()
{
Token = newRefreshToken
});
}
else
{
userName = RetrieveUserFromToken(token);
newRefreshToken = GetNewRefreshToken(userName);
}
return new TokenResponseModel()
{
AccessToken = new AccessTokenModel()
{
Token = CreateAccessToken(userName),
TokenType = "bearer",
ExpiresIn = ExpirationTimeInSeconds
},
RefreshToken = newRefreshToken
};
}