league_api 0.7.2 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/league_api/champion.rb +1 -1
- data/lib/league_api/current_game.rb +18 -0
- data/lib/league_api/featured_games.rb +14 -0
- data/lib/league_api/static.rb +3 -3
- data/lib/league_api.rb +43 -69
- metadata +16 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c22f9622cfa0c53e5705e0ac1ee7b184ace3c968
|
4
|
+
data.tar.gz: 331599f857237ff4d6e003bd133b38ca4aa1b320
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30e43b67308a8740264855904c982cde45f1b04e4d5442aae135e0bc956a869f8093a6f04ca31d6c905bc31945b3d402b9953db94a978c815f1685e4796a3d8d
|
7
|
+
data.tar.gz: 4714a78563d7b7a9a86227c5ed31ba9a3f96bfdb71473a43afba3db2997ad5fced3a0f677bdf8586a963ea82e383bf25beb36206e669d414376764df9176f8bf
|
data/lib/league_api/champion.rb
CHANGED
@@ -4,7 +4,7 @@ module LeagueApi
|
|
4
4
|
@base_url = "https://na.api.pvp.net/api/lol/na/v1.2/"
|
5
5
|
|
6
6
|
def self.make_request(str, params=nil, region=nil)
|
7
|
-
LeagueApi.make_request(@base_url, str,params, region)
|
7
|
+
LeagueApi.make_request(@base_url, str, params, region)
|
8
8
|
end
|
9
9
|
|
10
10
|
def self.get_free_champs(region=nil)
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module LeagueApi
|
2
|
+
|
3
|
+
class CurrentGame
|
4
|
+
@base_url = "https://na.api.pvp.net/observer-mode/rest/consumer/getSpectatorGameInfo/"
|
5
|
+
|
6
|
+
def self.make_request(str, params=nil, region=nil)
|
7
|
+
LeagueApi.make_request(@base_url, str, params, region)
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.fetch(platformId, summonerId, region="na")
|
11
|
+
make_request("#{platformId}/#{summonerId}", nil, region)
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.requests
|
15
|
+
%w( fetch(platformId,summonerId,region) )
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module LeagueApi
|
2
|
+
|
3
|
+
class FeaturedGames
|
4
|
+
@base_url = "https://na.api.pvp.net/observer-mode/rest/featured"
|
5
|
+
|
6
|
+
def self.fetch(region="na")
|
7
|
+
LeagueApi.make_request(@base_url, "", nil, region)
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.requests
|
11
|
+
%w( fetch(region) )
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/league_api/static.rb
CHANGED
@@ -75,15 +75,15 @@ module LeagueApi
|
|
75
75
|
#TODO: Implement http://ddragon.leagueoflegends.com/cdn/4.7.8/img/sprite/rune0.png
|
76
76
|
|
77
77
|
def self.get_item_image(id)
|
78
|
-
"http://ddragon.leagueoflegends.com/cdn/"+$
|
78
|
+
"http://ddragon.leagueoflegends.com/cdn/"+$DDRAGON_VERSION+"/img/item/"+id.to_s+".png"
|
79
79
|
end
|
80
80
|
|
81
81
|
def self.get_champion_image(str)
|
82
|
-
"http://ddragon.leagueoflegends.com/cdn/"+$
|
82
|
+
"http://ddragon.leagueoflegends.com/cdn/"+$DDRAGON_VERSION+"/img/champion/"+str+".png"
|
83
83
|
end
|
84
84
|
|
85
85
|
def self.get_summoner_image(id)
|
86
|
-
"http://ddragon.leagueoflegends.com/cdn/"+$
|
86
|
+
"http://ddragon.leagueoflegends.com/cdn/"+$DDRAGON_VERSION+"/img/sprite/spell"+id.to_s+".png"
|
87
87
|
end
|
88
88
|
|
89
89
|
def self.requests
|
data/lib/league_api.rb
CHANGED
@@ -8,95 +8,36 @@ require 'league_api/league'
|
|
8
8
|
require 'league_api/team'
|
9
9
|
require 'league_api/stats'
|
10
10
|
require 'league_api/util'
|
11
|
+
require 'league_api/featured_games'
|
12
|
+
require 'league_api/current_game'
|
11
13
|
|
12
14
|
module LeagueApi
|
13
|
-
extend self
|
14
|
-
|
15
15
|
@api_key = ENV["LOL_KEY"]
|
16
|
-
|
17
|
-
|
16
|
+
@default_region = "na"
|
17
|
+
# third party versioning for image cdn (static info)
|
18
|
+
$DDRAGON_VERSION = "5.6.2"
|
18
19
|
|
19
|
-
|
20
|
+
extend self
|
20
21
|
|
21
22
|
def make_request(base, modifier=nil, params=nil, region=nil)
|
22
|
-
region =
|
23
|
-
base =
|
23
|
+
region = @default_region if region.nil?
|
24
|
+
base = change_base(base, region)
|
24
25
|
|
25
26
|
url = base + modifier
|
26
|
-
|
27
|
-
if params
|
28
|
-
|
29
|
-
params.each do |p|
|
30
|
-
url << '?'+p[0]+'='+p[1]
|
31
|
-
end
|
32
|
-
url += '&api_key=' + @api_key
|
33
|
-
|
34
|
-
else
|
35
|
-
|
36
|
-
url += '?api_key=' + @api_key
|
37
|
-
|
38
|
-
end
|
27
|
+
url << add_query_string(params)
|
39
28
|
|
40
29
|
uri = URI.parse(url)
|
41
30
|
JSON.parse(uri.read)
|
42
31
|
end
|
43
32
|
|
44
|
-
def default_region
|
45
|
-
@@default_region
|
46
|
-
end
|
47
|
-
|
48
|
-
def change_region(region)
|
49
|
-
@@default_region = region
|
50
|
-
end
|
51
|
-
|
52
|
-
def set_region(name)
|
53
|
-
$region = name
|
54
|
-
end
|
55
|
-
|
56
|
-
def get_region(region)
|
57
|
-
if region.nil?
|
58
|
-
$region
|
59
|
-
else
|
60
|
-
region
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
def change_base(url, region)
|
65
|
-
case region
|
66
|
-
when "euw"
|
67
|
-
url.gsub("na.api.pvp.net","euw.api.pvp.net").gsub("na","euw")
|
68
|
-
when "br"
|
69
|
-
url.gsub("na.api.pvp.net","br.api.pvp.net").gsub("na","br")
|
70
|
-
when "eune"
|
71
|
-
url.gsub("na.api.pvp.net","eune.api.pvp.net").gsub("na","eune")
|
72
|
-
when "kr"
|
73
|
-
url.gsub("na.api.pvp.net","kr.api.pvp.net").gsub("na","kr")
|
74
|
-
when "las"
|
75
|
-
url.gsub("na.api.pvp.net","las.api.pvp.net").gsub("na","las")
|
76
|
-
when "lan"
|
77
|
-
url.gsub("na.api.pvp.net","lan.api.pvp.net").gsub("na","lan")
|
78
|
-
when "oce"
|
79
|
-
url.gsub("na.api.pvp.net","oce.api.pvp.net").gsub("na","oce")
|
80
|
-
when "tr"
|
81
|
-
url.gsub("na.api.pvp.net","tr.api.pvp.net").gsub("na","tr")
|
82
|
-
when "ru"
|
83
|
-
url.gsub("na.api.pvp.net","ru.api.pvp.net").gsub("na","ru")
|
84
|
-
else
|
85
|
-
url #Cause USA #1
|
86
|
-
end
|
87
|
-
end
|
88
|
-
|
89
33
|
#Display all available Requests for all API classes
|
90
34
|
def available_requests
|
91
|
-
c = self.constants
|
92
35
|
requests = {}
|
93
|
-
|
94
36
|
requests[LeagueApi] = self.instance_methods.map &:to_s
|
95
37
|
|
96
|
-
|
38
|
+
self.constants.each do |i|
|
97
39
|
requests[eval(i.to_s)] = eval(i.to_s).requests
|
98
40
|
end
|
99
|
-
|
100
41
|
requests
|
101
42
|
end
|
102
43
|
|
@@ -135,4 +76,37 @@ module LeagueApi
|
|
135
76
|
Time.at( Game.recent_games(id, region).first["createDate"] / 1000 )
|
136
77
|
end
|
137
78
|
|
79
|
+
def before(*methods)
|
80
|
+
methods.each do |name|
|
81
|
+
m = instance_method(name)
|
82
|
+
define_method(name) do |*args, &block|
|
83
|
+
yield
|
84
|
+
m.bind(self).(*args, &block)
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
|
90
|
+
before(*instance_methods) { ENV["LOL_KEY"] or raise("Must provide an LOL KEY") }
|
91
|
+
|
92
|
+
private
|
93
|
+
|
94
|
+
def add_query_string(params)
|
95
|
+
query_string = ""
|
96
|
+
if params
|
97
|
+
params.each do |p|
|
98
|
+
query_string << "?"+p[0]+"="+p[1]
|
99
|
+
end
|
100
|
+
query_string << "&api_key=" + @api_key
|
101
|
+
else
|
102
|
+
query_string << "?api_key=" + @api_key
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
def change_base(url, region)
|
107
|
+
return url if region == "na"
|
108
|
+
return url.gsub("na.api.pvp.net", "#{region}.api.pvp.net").gsub("na", region)
|
109
|
+
end
|
110
|
+
|
111
|
+
|
138
112
|
end
|
metadata
CHANGED
@@ -1,55 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: league_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- DanBradbury
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-04-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ~>
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '2.10'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '2.10'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '10.3'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.3'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: pry
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ~>
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0.9'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ~>
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0.9'
|
55
55
|
description: Gem to access Riot Developer APIs.
|
@@ -61,13 +61,15 @@ extra_rdoc_files: []
|
|
61
61
|
files:
|
62
62
|
- lib/league_api.rb
|
63
63
|
- lib/league_api/champion.rb
|
64
|
-
- lib/league_api/game.rb
|
65
|
-
- lib/league_api/league.rb
|
66
64
|
- lib/league_api/static.rb
|
67
|
-
- lib/league_api/
|
65
|
+
- lib/league_api/game.rb
|
68
66
|
- lib/league_api/summoner.rb
|
67
|
+
- lib/league_api/league.rb
|
69
68
|
- lib/league_api/team.rb
|
69
|
+
- lib/league_api/stats.rb
|
70
70
|
- lib/league_api/util.rb
|
71
|
+
- lib/league_api/current_game.rb
|
72
|
+
- lib/league_api/featured_games.rb
|
71
73
|
homepage: http://danbradbury.github.io/LeagueApi/
|
72
74
|
licenses:
|
73
75
|
- MIT
|
@@ -78,19 +80,18 @@ require_paths:
|
|
78
80
|
- lib
|
79
81
|
required_ruby_version: !ruby/object:Gem::Requirement
|
80
82
|
requirements:
|
81
|
-
- -
|
83
|
+
- - '>='
|
82
84
|
- !ruby/object:Gem::Version
|
83
85
|
version: '0'
|
84
86
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
87
|
requirements:
|
86
|
-
- -
|
88
|
+
- - '>='
|
87
89
|
- !ruby/object:Gem::Version
|
88
90
|
version: '0'
|
89
91
|
requirements: []
|
90
92
|
rubyforge_project:
|
91
|
-
rubygems_version: 2.
|
93
|
+
rubygems_version: 2.0.14
|
92
94
|
signing_key:
|
93
95
|
specification_version: 4
|
94
96
|
summary: Mapping of Riot Developer API with additional helper methods
|
95
97
|
test_files: []
|
96
|
-
has_rdoc:
|