class Rickey

Constants

VERSION

Attributes

date[R]
sport_code[R]
team_id[R]

Public Class Methods

new(date: Date.today, sport_code: "mlb", team_id: nil) click to toggle source
# File lib/rickey.rb, line 7
def initialize(date: Date.today, sport_code: "mlb", team_id: nil)
  @date = date
  @sport_code = sport_code
  @team_id = team_id
end

Public Instance Methods

fetch() click to toggle source
# File lib/rickey.rb, line 13
def fetch
  if transactions_exist?
    transactions
  else
    []
  end
end

Private Instance Methods

api_response() click to toggle source
# File lib/rickey.rb, line 35
def api_response
  @api_response ||= JSON.parse(
    connection.get(
      path: "/lookup/json/named.transaction_all.bam",
      query: query_params,
      headers: {}
    ).body
  )
end
connection() click to toggle source
# File lib/rickey.rb, line 45
def connection
  Excon.new("http://mlb.com", omit_default_port: true)
end
date_query_param() click to toggle source
# File lib/rickey.rb, line 49
def date_query_param
  date.strftime("%Y%m%d")
end
query_params() click to toggle source
# File lib/rickey.rb, line 53
def query_params
  {
    start_date: date_query_param,
    end_date: date_query_param,
    sport_code: "'#{sport_code}'",
    team_id: team_id
  }.reject { |_k, v| v.nil? }
end
transactions() click to toggle source
# File lib/rickey.rb, line 27
def transactions
  api_response["transaction_all"]["queryResults"]["row"]
end
transactions_exist?() click to toggle source
# File lib/rickey.rb, line 31
def transactions_exist?
  api_response["transaction_all"]["queryResults"]["totalSize"].to_i > 0
end