Sha256: a16a878e03a83ceb2ca9bf150261c0b4f42161402367b2fde4fe6b5070210246

Contents?: true

Size: 1.77 KB

Versions: 19

Compression:

Stored size: 1.77 KB

Contents

module Sportradar
  module Api
    module Baseball
      class Mlb
        class Api < Request
          attr_accessor :league, :access_level, :simulation, :error

          def initialize(access_level = default_access_level)
            @league = 'mlb'
            raise Sportradar::Api::Error::InvalidAccessLevel unless allowed_access_levels.include? access_level
            @access_level = access_level
          end

          def sim!
            @version = 5
            super
          end

          def default_year
            Date.today.year
          end
          def default_date
            Date.today
          end
          def default_season
            'reg'
          end
          def default_access_level
            if (ENV['SPORTRADAR_ENV'] || ENV['SPORTRADAR_ENV_MLB'] || ENV['RACK_ENV'] || ENV['RAILS_ENV']) == 'production'
              'p'
            else
              't'
            end
          end

          def content_format
            'json'
          end

          private

          def request_url(path)
            "/mlb-#{access_level}#{version}/#{path}"
          end

          def api_key
            if !['t', 'sim'].include?(access_level)
              Sportradar::Api.api_key_params('mlb', 'production')
            elsif 'sim' == access_level
              Sportradar::Api.api_key_params('mlb', 'simulation')
            else
              Sportradar::Api.api_key_params('mlb')
            end
          end

          def version
            @version || Sportradar::Api.version('mlb')
          end

          def allowed_access_levels
            %w[p t sim]
          end

          def allowed_seasons
            ["pre", "reg", "pst"]
          end

        end
      end
    end
  end
end

__END__
# mlb = Sportradar::Api::Baseball::Mlb::Hierarchy.new

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
sportradar-api-0.13.14 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.13 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.12 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.11 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.10 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.9 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.8 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.7 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.6 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.5 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.4 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.3 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.2 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.1 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.13.0 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.12.3 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.12.2 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.12.1 lib/sportradar/api/baseball/mlb/api.rb
sportradar-api-0.12.0 lib/sportradar/api/baseball/mlb/api.rb