@Override
 public void removeRefreshToken(OAuth2RefreshToken token) {
   oAuth2RefreshTokenRepository.delete(
       oAuth2RefreshTokenRepository.findByTokenId(token.getValue()));
 }
 @Override
 public OAuth2RefreshToken readRefreshToken(String tokenValue) {
   return oAuth2RefreshTokenRepository.findByTokenId(tokenValue).getoAuth2RefreshToken();
 }
 @Override
 public OAuth2Authentication readAuthenticationForRefreshToken(OAuth2RefreshToken token) {
   return oAuth2RefreshTokenRepository.findByTokenId(token.getValue()).getAuthentication();
 }
 @Override
 public void storeRefreshToken(
     OAuth2RefreshToken refreshToken, OAuth2Authentication authentication) {
   oAuth2RefreshTokenRepository.save(
       new OAuth2AuthenticationRefreshToken(refreshToken, authentication));
 }