Class: MLB::Divisions

Inherits:
Shale::Mapper
  • Object
show all
Defined in:
lib/mlb/divisions.rb

Overview

Collection of divisions from the MLB Stats API

Class Method Summary collapse

Class Method Details

.all(sport: Utils::DEFAULT_SPORT_ID) ⇒ Array<Division>

Retrieves all divisions

Examples:

MLB::Divisions.all

Parameters:

  • sport (Integer, Sport) (defaults to: Utils::DEFAULT_SPORT_ID)

    the sport ID or Sport object

Returns:

  • (Array<Division>)

    list of all divisions



16
17
18
19
20
# File 'lib/mlb/divisions.rb', line 16

def self.all(sport: Utils::DEFAULT_SPORT_ID)
  params = {sportId: Utils.extract_id(sport)}
  response = CLIENT.get("divisions?#{Utils.build_query(params)}")
  from_json(response).divisions.sort
end

.find(division, sport: Utils::DEFAULT_SPORT_ID) ⇒ Division?

Finds a division by ID

Examples:

MLB::Divisions.find(201)

Parameters:

  • division (Integer, Division)

    the division ID or Division object

  • sport (Integer, Sport) (defaults to: Utils::DEFAULT_SPORT_ID)

    the sport ID or Sport object

Returns:

  • (Division, nil)

    the division if found



30
31
32
33
34
# File 'lib/mlb/divisions.rb', line 30

def self.find(division, sport: Utils::DEFAULT_SPORT_ID)
  params = {sportId: Utils.extract_id(sport)}
  response = CLIENT.get("divisions/#{Utils.extract_id(division)}?#{Utils.build_query(params)}")
  from_json(response).divisions.min_by { |d| d.sort_order || 0 }
end