class Rubiclifier::BaseApi
Public Class Methods
api_token()
click to toggle source
# File lib/base_api.rb, line 7 def self.api_token base_uri(base_api_url) @api_token ||= DB.get_setting(api_token_db_key) || begin t = login_and_get_api_token if t.nil? invalid_credentials_error else DB.save_setting(api_token_db_key, t, is_secret: true) t end end end
api_token_db_key()
click to toggle source
# File lib/base_api.rb, line 29 def self.api_token_db_key raise NotImplementedError end
base_api_url()
click to toggle source
# File lib/base_api.rb, line 48 def self.base_api_url @base_api_url ||= DB.get_setting(base_api_url_db_key)&.chomp("/") end
base_api_url_db_key()
click to toggle source
# File lib/base_api.rb, line 33 def self.base_api_url_db_key raise NotImplementedError end
invalid_credentials_error()
click to toggle source
# File lib/base_api.rb, line 21 def self.invalid_credentials_error raise "Invalid credentials!" end
login_and_get_api_token()
click to toggle source
# File lib/base_api.rb, line 25 def self.login_and_get_api_token raise NotImplementedError end
wrap_with_authentication(&block)
click to toggle source
# File lib/base_api.rb, line 37 def self.wrap_with_authentication(&block) res = block.call if res.code == 401 || res.code == 403 @api_token = nil DB.save_setting(api_token_db_key, nil, is_secret: false) block.call else res end end