Sha256: 8bb0296fd89447dc641ed92eafd6a16c1687d5b9061fb7c56ccbb3c293a1ce03

Contents?: true

Size: 784 Bytes

Versions: 13

Compression:

Stored size: 784 Bytes

Contents

# frozen_string_literal: true

require "ahl_scraper/services/seasons/teams_service"

require "ahl_scraper/resources/seasons/team"

module AhlScraper
  module Seasons
    @season_data = nil

    class << self
      def list
        @season_data ||= SeasonDataFetcher.new.call&.map { |season_data| SeasonListItem.new(season_data) }
        @season_data
      end

      def retrieve(season_id)
        @season_data ||= SeasonDataFetcher.new.call&.map { |season_data| SeasonListItem.new(season_data) }
        season = @season_data.find { |s| season_id.to_i == s.id }
        Season.new(season)
      end

      def retrieve_all
        @season_data ||= SeasonDataFetcher.new.call
        @season_data.map do |season|
          Season.new(season)
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
ahl_scraper-0.4.1 lib/ahl_scraper/seasons.rb
ahl_scraper-0.4.0 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.8 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.7 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.6 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.5 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.4 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.3 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.2 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.1 lib/ahl_scraper/seasons.rb
ahl_scraper-0.3.0 lib/ahl_scraper/seasons.rb
ahl_scraper-0.2.0 lib/ahl_scraper/seasons.rb
ahl_scraper-0.1.1 lib/ahl_scraper/seasons.rb