Class: RiotApi::API

Inherits:
Object
  • Object
show all
Defined in:
lib/riot_api/api.rb

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ API

Returns a new instance of API.

Raises:

  • (ArgumentError)


3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/riot_api/api.rb', line 3

def initialize(params)
  @api_key             = params[:api_key]
  @region              = params[:region]
  @debug               = params[:debug]
  @ssl                 = params[:ssl] || { :verify => true }
  @base_url            = params[:base_url]            || "http://prod.api.pvp.net/api/lol/#{@region}/v1.1/"
  @faraday_adapter     = params[:faraday_adapter]     || Faraday.default_adapter
  @raise_status_errors = params[:raise_status_errors] || false
  @faraday             = params[:faraday]             || default_faraday
  raise ArgumentError, ':api_key missing' unless @api_key
  raise ArgumentError, ':region missing' unless @region
end

Instance Method Details

#default_faradayObject



20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/riot_api/api.rb', line 20

def default_faraday
  Faraday.new(:url => @base_url, :ssl => @ssl) do |faraday|
    faraday.use Faraday::Response::RaiseError if @raise_status_errors
    faraday.request  :url_encoded
    faraday.response :rashify
    faraday.response :json
    faraday.response(:logger) if @debug
    faraday.adapter @faraday_adapter
    faraday.params['api_key'] = @api_key
    faraday.headers['User-Agent'] = "riot_api rubygem v#{RiotApi::VERSION}"
  end
end

#summonerObject



16
17
18
# File 'lib/riot_api/api.rb', line 16

def summoner
  RiotApi::Resource::Summoner.new(@faraday)
end