Class: Lol::SummonerRequest

Inherits:
Request
  • Object
show all
Defined in:
lib/lol/summoner_request.rb

Instance Attribute Summary

Attributes inherited from Request

#api_key, #cache_store, #region

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Request

#api_url, #cached?, #initialize, #perform_request, #store, #ttl

Constructor Details

This class inherits a constructor from Lol::Request

Class Method Details

.api_versionString

Returns the supported API Version

Returns:

  • (String)

    the supported api version



5
6
7
# File 'lib/lol/summoner_request.rb', line 5

def self.api_version
  "v1.3"
end

Instance Method Details

#by_name(*names) ⇒ Array

Looks for a summoner name and returns the associated summoner

Parameters:

  • summoner (Array)

    names

Returns:

  • (Array)

    matching summoners



12
13
14
15
16
17
# File 'lib/lol/summoner_request.rb', line 12

def by_name *names
  escaped_names = names.flatten.map { |name| CGI.escape name.downcase.gsub(/\s/, '') }
  perform_request(api_url("summoner/by-name/#{escaped_names.join(",")}")).map do |key, data|
    Summoner.new data
  end
end

#get(*summoner_ids) ⇒ Array

Get a list of summoners by summoner ID

Parameters:

  • summoner_ids (Array)

Returns:

  • (Array)

    matching summoners



29
30
31
32
33
# File 'lib/lol/summoner_request.rb', line 29

def get *summoner_ids
  perform_request(api_url("summoner/#{summoner_ids.join(",")}")).map do |key, data|
    Summoner.new data
  end
end

#masteries(*summoner_ids) ⇒ Array

Get mastery pages by summoner ID

Parameters:

  • summoner_ids (Array)

Returns:

  • (Array)

    array of Lol::MasteryPage



45
46
47
# File 'lib/lol/summoner_request.rb', line 45

def masteries *summoner_ids
  extract_pages MasteryPage, "masteries", summoner_ids
end

#name(*summoner_ids) ⇒ Hash

Get list of summoner names by summoner IDs

Parameters:

  • summoner_ids (Array)

Returns:

  • (Hash)

    Hash in the form { “id” => “name” }



22
23
24
# File 'lib/lol/summoner_request.rb', line 22

def name *summoner_ids
  perform_request(api_url("summoner/#{summoner_ids.join(",")}/name"))
end

#runes(*summoner_ids) ⇒ Array

Get rune pages by summoner ID

Parameters:

  • summoner_ids (Array)

Returns:

  • (Array)

    array of Lol::RunePage



38
39
40
# File 'lib/lol/summoner_request.rb', line 38

def runes *summoner_ids
  extract_pages RunePage, "runes", summoner_ids
end