Sha256: 21c1929855b10e1ebe05c3ec9509e7df33835665847e5f681a408ab266629501
Contents?: true
Size: 1.32 KB
Versions: 8
Compression:
Stored size: 1.32 KB
Contents
require 'faraday' require_relative 'version' module TicketingHub module Configuration VALID_OPTIONS_KEYS = [ :adapter, :faraday_config_block, :api_endpoint, :client_id, :client_secret, :access_token, :refresh_token, :expires_at, :proxy, :user_agent, :request_host].freeze DEFAULT_ADAPTER = Faraday.default_adapter DEFAULT_API_ENDPOINT = ENV['TH_API_ENDPOINT'] || 'https://api.ticketinghub.com/' DEFAULT_USER_AGENT = "TicketingHub Ruby Gem #{TicketingHub::VERSION}".freeze attr_accessor *VALID_OPTIONS_KEYS def self.extended base base.reset end def configure yield self end def options VALID_OPTIONS_KEYS.each_with_object Hash.new do |key, memo| memo[key] = send key end end def api_endpoint= value @api_endpoint = File.join value, '' end def faraday_config &block @faraday_config_block = block end def reset self.adapter = DEFAULT_ADAPTER self.api_endpoint = DEFAULT_API_ENDPOINT self.client_id = nil self.client_secret = nil self.access_token = nil self.refresh_token = nil self.proxy = nil self.request_host = nil self.user_agent = DEFAULT_USER_AGENT end end end
Version data entries
8 entries across 8 versions & 1 rubygems