class Amorail::AccessToken

Attributes

expiration[R]
refresh_token[R]
secret[R]
store[R]
token[R]

Public Class Methods

create(secret, token, refresh_token, expiration, store) click to toggle source
# File lib/amorail/access_token.rb, line 20
def create(secret, token, refresh_token, expiration, store)
  new(secret, token, refresh_token, expiration, store).tap do |access_token|
    store.persist_access(access_token.secret, access_token.token, access_token.refresh_token, access_token.expiration)
  end
end
find(secret, store) click to toggle source
# File lib/amorail/access_token.rb, line 26
def find(secret, store)
  token_attrs = store.fetch_access(secret)
  build_with_token_attrs(store, secret, token_attrs)
end
new(secret, token, refresh_token, expiration, store) click to toggle source
# File lib/amorail/access_token.rb, line 7
def initialize(secret, token, refresh_token, expiration, store)
  @secret        = secret
  @token         = token
  @refresh_token = refresh_token
  @expiration    = expiration
  @store         = store
end
refresh(secret, token, refresh_token, expiration, store) click to toggle source
# File lib/amorail/access_token.rb, line 31
def refresh(secret, token, refresh_token, expiration, store)
  new(secret, token, refresh_token, expiration, store).tap do |access_token|
    store.update_access(access_token.secret, access_token.token, access_token.refresh_token, access_token.expiration)
  end
end

Private Class Methods

build_with_token_attrs(store, secret, token_attrs) click to toggle source
# File lib/amorail/access_token.rb, line 39
def build_with_token_attrs(store, secret, token_attrs)
  new(secret, token_attrs[:token], token_attrs[:refresh_token], token_attrs[:expiration], store)
end

Public Instance Methods

expired?() click to toggle source
# File lib/amorail/access_token.rb, line 15
def expired?
  store.access_expired?(secret)
end