class Football::Butler::Base

Constants

MSG_INVALID_CONFIG

Public Class Methods

api_class() click to toggle source
# File lib/football/butler/base.rb, line 61
def api_class
  Configuration.api_class
end
api_switch() click to toggle source
# File lib/football/butler/base.rb, line 55
def api_switch
  "Football::Butler::#{api_class}::#{this_class}".constantize
rescue
  return nil
end
api_switch_method(method, named_params) click to toggle source

MULTI-API

# File lib/football/butler/base.rb, line 39
def api_switch_method(method, named_params)
  klass = api_switch

  if klass
    klass.respond_to?(method) ?
      klass.send(method, **named_params) :
      unsupported_api_call(this_class, method)
  else
    unsupported_api_endpoint(this_class)
  end
end
api_switch_result() click to toggle source
# File lib/football/butler/base.rb, line 51
def api_switch_result
  Configuration.api_result(api_switch)
end
error_message(error) click to toggle source
# File lib/football/butler/base.rb, line 34
def error_message(error)
  { message: error }.with_indifferent_access
end
invalid_config_result() click to toggle source
# File lib/football/butler/base.rb, line 20
def invalid_config_result
  error_message(MSG_INVALID_CONFIG)
end
not_found_result(*params) click to toggle source

RESULT MESSAGES

# File lib/football/butler/base.rb, line 16
def not_found_result(*params)
  error_message("#{params.join(', ')} could not be found.")
end
reached_limit?(response) click to toggle source

MESSAGES

# File lib/football/butler/base.rb, line 11
def reached_limit?(response)
  Configuration.reached_limit?(response)
end
this_class() click to toggle source
# File lib/football/butler/base.rb, line 65
def this_class
  klass = self.to_s.split('::').last
  Configuration.class_converter(klass)
end
unsupported_api_call(klass, method) click to toggle source
# File lib/football/butler/base.rb, line 24
def unsupported_api_call(klass, method)
  message  = "Method '#{method}' is not supported for the endpoint '#{klass}' by this API: "
  message += "#{Configuration.api_name}"
  error_message(message)
end
unsupported_api_endpoint(klass) click to toggle source
# File lib/football/butler/base.rb, line 30
def unsupported_api_endpoint(klass)
  error_message("The Endpoint '#{klass}' is not supported by this API: #{Configuration.api_name}")
end