ruby_sightstone 0.2.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 +7 -0
- data/lib/ruby_sightstone.rb +53 -0
- metadata +44 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 6916fe0f7a05d98391c0885e4d6274a5f5b2bbca
|
4
|
+
data.tar.gz: b7eb67985d72d4ed996fb3f0fdfca1002a853982
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 2a77d6b40ddec4856b534b33c9148da7da582d08c9712d9995074487ed728f688a2699fd38364e1171868a6891950cac1f9493dbba0e87267c06458e5ac09d2a
|
7
|
+
data.tar.gz: b3f8fd0e8dd00f9cf7bed1da33beb31bed150707f0eb2b4c35cfde86d737db40eb96a2220f145ee5576076e7f008e14ebee595c09fa8ab090d9250c2685aaeb1
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# @author Boyang Niu
|
2
|
+
# Lightweight wrapper for some of the Riot API
|
3
|
+
class RubySightstone
|
4
|
+
# Creates a new client to the Riot API given a key and a region
|
5
|
+
#
|
6
|
+
# @param api_key [String] the api key to be used with this client
|
7
|
+
# @param region [String] the region that this client will use to get responses (na, eu, kr, ...)
|
8
|
+
def initialize(api_key, region)
|
9
|
+
@base_params = {api_key: api_key}
|
10
|
+
@base_url = "https://na.api.pvp.net/api/lol"
|
11
|
+
@region = region
|
12
|
+
end
|
13
|
+
|
14
|
+
def get_latest_match_for_summoner(summoner_id)
|
15
|
+
req = URI("#{@base_url}/#{@region}/v2.2/matchlist/by-summoner/#{summoner_id}")
|
16
|
+
req.query = URI.encode_www_form(@base_params.merge!({beginIndex: 0, endIndex: 1}))
|
17
|
+
resp = Net::HTTP.get_response(req)
|
18
|
+
|
19
|
+
validate_and_respond(resp){ JSON(resp.body)["matches"].first }
|
20
|
+
end
|
21
|
+
|
22
|
+
def get_static_data(type, id)
|
23
|
+
req = URI("#{@base_url}/static-data/#{@region}/v1.2/#{type}")
|
24
|
+
req.query = URI.encode_www_form(@base_params.merge!({beginIndex: 0, endIndex: 1}))
|
25
|
+
resp = Net::HTTP.get_response(req)
|
26
|
+
|
27
|
+
validate_and_respond(resp){ JSON(resp.body) }
|
28
|
+
end
|
29
|
+
|
30
|
+
def get_match_details(match_id)
|
31
|
+
req = URI("#{@base_url}/#{@region}/v2.2/match/#{match_id}")
|
32
|
+
req.query = URI.encode_www_form(@base_params)
|
33
|
+
resp = Net::HTTP.get_response(req)
|
34
|
+
|
35
|
+
validate_and_respond(resp){ JSON(resp.body) }
|
36
|
+
end
|
37
|
+
|
38
|
+
def get_summoner_id(name)
|
39
|
+
req = URI("#{@base_url}/#{@region}/v1.4/summoner/by-name/#{name}")
|
40
|
+
req.query = URI.encode_www_form(@base_params)
|
41
|
+
resp = Net::HTTP.get_response(req)
|
42
|
+
|
43
|
+
validate_and_respond(resp){ JSON(resp.body)[name] }
|
44
|
+
end
|
45
|
+
|
46
|
+
def validate_and_respond(resp, &data)
|
47
|
+
if resp.kind_of? Net::HTTPSuccess
|
48
|
+
yield
|
49
|
+
else
|
50
|
+
raise "#{resp.code} encountered from riot for #{resp.uri}"
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
metadata
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ruby_sightstone
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Boyang Niu
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-10-25 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: A lightweight wrapper around the Riot API
|
14
|
+
email: boyangniu@gmail.com
|
15
|
+
executables: []
|
16
|
+
extensions: []
|
17
|
+
extra_rdoc_files: []
|
18
|
+
files:
|
19
|
+
- lib/ruby_sightstone.rb
|
20
|
+
homepage: http://rubygems.org/gems/ruby-sightstone
|
21
|
+
licenses:
|
22
|
+
- MIT
|
23
|
+
metadata: {}
|
24
|
+
post_install_message:
|
25
|
+
rdoc_options: []
|
26
|
+
require_paths:
|
27
|
+
- lib
|
28
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
34
|
+
requirements:
|
35
|
+
- - ">="
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
requirements: []
|
39
|
+
rubyforge_project:
|
40
|
+
rubygems_version: 2.4.5
|
41
|
+
signing_key:
|
42
|
+
specification_version: 4
|
43
|
+
summary: Riot wrapper in ruby
|
44
|
+
test_files: []
|