module OpenIDTokenProxy::Token::Refresh

Public Instance Methods

raw_refresh_token() click to toggle source
# File lib/openid_token_proxy/token/refresh.rb, line 28
def raw_refresh_token
  params[:refresh_token] ||
  request.headers['X-Refresh-Token'] ||
  cookies[:refresh_token]
end
require_valid_token() click to toggle source
# File lib/openid_token_proxy/token/refresh.rb, line 11
def require_valid_token
  super
rescue OpenIDTokenProxy::Token::Expired
  raise unless raw_refresh_token.present?
  @current_token = OpenIDTokenProxy.client.retrieve_token!(
    refresh_token: raw_refresh_token
  )
  response.headers['X-Token'] = current_token.access_token
  response.headers['X-Refresh-Token'] = current_token.refresh_token

  instance_exec(
    current_token,
    &OpenIDTokenProxy.config.token_refreshment_hook
  )
end