league_api 0.0.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: bcf760834cb818526f1b1075485fb02d91a41a03
4
+ data.tar.gz: 92183bc3867a2fa49bf59183dc14b3b350aa3009
5
+ SHA512:
6
+ metadata.gz: d4bf674daf0988a796b9f51deb758289a8b1d00ad26614ae5190561068e1770b6c6f34ed1d2bdeed434842cabc65fd8c327ff3caaecb07e0e2a9219604a5e19e
7
+ data.tar.gz: 16e7481ed3e951e968e5d41cfe0382e81d5abf2d1f58b4cce0c680cd228113b8fcbd1c81665d181f551b6524b42290740979954b03172cff49248c5c26ae0e6d
@@ -0,0 +1,26 @@
1
+ module LeagueApi
2
+
3
+ class Champion
4
+ @base_url = "nil"
5
+
6
+ def self.make_base_url(modifier)
7
+ options = LeagueApi.options
8
+ @base_url = options[:base_url]+'/'+options[:region]+'/'+'v1.2/'+modifier+'?api_key='+options[:key]
9
+ @base_url
10
+ end
11
+
12
+ def self.get_list
13
+ make_base_url('champion')
14
+ uri = URI.parse(@base_url)
15
+ JSON.parse(uri.read)["champions"]
16
+ end
17
+
18
+ def self.get_by_id(id)
19
+ make_base_url('champion/'+id.to_s)
20
+ uri = URI.parse(@base_url)
21
+ JSON.parse(uri.read)
22
+ end
23
+
24
+ end
25
+
26
+ end
@@ -0,0 +1,24 @@
1
+ module LeagueApi
2
+
3
+ class Game
4
+ @base_url
5
+
6
+ def self.build_base_url(modifier)
7
+ options = LeagueApi.options
8
+ @base_url = options[:base_url]+'/'+options[:region]+'/'+'v1.3/game/by-summoner/'+modifier+'/recent?api_key='+options[:key]
9
+ @base_url
10
+ end
11
+
12
+ def self.make_request(str)
13
+ build_base_url(str)
14
+ uri = URI.parse(@base_url)
15
+ JSON.parse(uri.read)
16
+ end
17
+
18
+ def self.recent_games(id)
19
+ make_request(id.to_s)
20
+ end
21
+
22
+ end
23
+
24
+ end
@@ -0,0 +1,74 @@
1
+ module LeagueApi
2
+
3
+ class Static
4
+ @base_url
5
+
6
+ def self.build_base_url(modifier)
7
+ options = LeagueApi.options
8
+ @base_url = options[:base_url]+'/static-data/'+options[:region]+'/'+'v1.2/'+modifier+'?api_key='+options[:key]
9
+ @base_url
10
+ end
11
+
12
+ def self.make_request(str)
13
+ build_base_url(str)
14
+ uri = URI.parse(@base_url)
15
+ JSON.parse(uri.read)
16
+ end
17
+
18
+ # Return a hash of all champions. [name, {data, ..}]
19
+ def self.get_champion_list
20
+ make_request('champion')["data"]
21
+ end
22
+
23
+ def self.get_champion_by_name(name)
24
+ make_request('champion')["data"].fetch(name)
25
+ end
26
+
27
+ def self.get_champion_by_id(id)
28
+ make_request('champion/'+id.to_s)
29
+ end
30
+
31
+ def self.get_item_list
32
+ make_request('item')["data"]
33
+ end
34
+
35
+ def self.get_item_by_id(id)
36
+ make_request('item/'+id.to_s)
37
+ end
38
+
39
+ def self.get_mastery_list
40
+ make_request('mastery')["data"]
41
+ end
42
+
43
+ def self.get_mastery_by_id(id)
44
+ make_request('mastery/'+id.to_s)
45
+ end
46
+
47
+ def self.get_realm
48
+ make_request('realm')
49
+ end
50
+
51
+ def self.get_rune_list
52
+ make_request('rune')["data"]
53
+ end
54
+
55
+ def self.get_rune_by_id(id)
56
+ make_request('rune/'+id.to_s)
57
+ end
58
+
59
+ def self.get_summoner_spells
60
+ make_request('summoner-spell')["data"]
61
+ end
62
+
63
+ def self.get_summoner_by_id(id)
64
+ make_request('summoner-spell/'+id.to_s)
65
+ end
66
+
67
+ def self.get_versions
68
+ make_request('versions')
69
+ end
70
+
71
+ end
72
+
73
+
74
+ end
@@ -0,0 +1,41 @@
1
+ module LeagueApi
2
+ class Summoner
3
+ @base_url
4
+
5
+ def self.build_base_url(modifier)
6
+ options = LeagueApi.options
7
+ @base_url = options[:base_url]+'/'+options[:region]+'/'+'v1.4/summoner/'+modifier+'?api_key='+options[:key]
8
+ @base_url
9
+ end
10
+
11
+ def self.make_request(str)
12
+ build_base_url(str)
13
+ uri = URI.parse(@base_url)
14
+ JSON.parse(uri.read)
15
+ end
16
+
17
+ def self.find_by_name(name)
18
+ make_request('by-name/'+name)[name.downcase]
19
+ end
20
+
21
+ # Get Summoner Objects mapped by summoner ID for a given list of summoner IDs
22
+ # => str - comma seperated list of summoner ids
23
+ def self.find_summoners(str)
24
+ make_request(str.gsub(" ", ""))
25
+ end
26
+
27
+ def self.get_masteries(summoners)
28
+ make_request(summoners.gsub(" ", "")+'/masteries')
29
+ end
30
+
31
+ def self.get_names(summoners)
32
+ make_request(summoners.gsub(" ", "")+'/name')
33
+ end
34
+
35
+ def self.get_runes(summoners)
36
+ make_request(summoners.gsub(" ", "")+'/runes')
37
+ end
38
+
39
+ end
40
+
41
+ end
data/lib/league_api.rb ADDED
@@ -0,0 +1,26 @@
1
+ require 'json'
2
+ require 'open-uri'
3
+ require 'league_api/champion'
4
+ require 'league_api/static'
5
+ require 'league_api/game'
6
+ require 'league_api/summoner'
7
+
8
+ module LeagueApi
9
+ #@api_key = "nil"
10
+ #for now default to development key
11
+ @api_key = "12c41a10-86fc-4d16-934c-277e891e1519"
12
+ @region = "na"
13
+
14
+ def self.authenticate(key)
15
+ @api_key = key
16
+ end
17
+
18
+ def self.options
19
+ {
20
+ key: @api_key,
21
+ base_url: 'https://prod.api.pvp.net/api/lol',
22
+ region: @region
23
+ }
24
+ end
25
+
26
+ end
metadata ADDED
@@ -0,0 +1,92 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: league_api
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - DanBradbury
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-04-21 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.6'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.6'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: 1-1 mapping of League of Legends API in a convenient gem
56
+ email:
57
+ - dan.luckydaisy@gmail.com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - lib/league_api.rb
63
+ - lib/league_api/champion.rb
64
+ - lib/league_api/game.rb
65
+ - lib/league_api/static.rb
66
+ - lib/league_api/summoner.rb
67
+ homepage: https://github.com/DanBradbury/LeagueApi
68
+ licenses:
69
+ - MIT
70
+ metadata: {}
71
+ post_install_message:
72
+ rdoc_options: []
73
+ require_paths:
74
+ - lib
75
+ required_ruby_version: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: '0'
80
+ required_rubygems_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ requirements: []
86
+ rubyforge_project:
87
+ rubygems_version: 2.2.2
88
+ signing_key:
89
+ specification_version: 4
90
+ summary: Requests to Riot Developer APIs
91
+ test_files: []
92
+ has_rdoc: