battlenet-api 0.2.0 → 0.2.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 +4 -4
- data/lib/battlenet/api/api_response.rb +24 -0
- data/lib/battlenet/api/client.rb +1 -2
- data/lib/battlenet/api/d3_client.rb +7 -5
- data/lib/battlenet/api/sc2_client.rb +6 -3
- data/lib/battlenet/api/version.rb +1 -1
- data/lib/battlenet/api/wow_client.rb +5 -3
- data/lib/battlenet/modules/wow/achievement.rb +1 -1
- data/lib/battlenet/modules/wow/character/character_profile.rb +18 -0
- data/lib/battlenet/modules/wow/character_profile.rb +3 -1
- data/spec/battlenetapi_spec.rb +13 -3
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9ecdb5774de9edcb34ab00edd30e7860e6a39aa5
|
4
|
+
data.tar.gz: a195dd18da70851049ac3b383d9d0aa85fc15d39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7211cd747464e9629b52afa718c563bd14633244bd41cec7eb2c7d789adc3bdec4e41c5e397bc3f950d69bb5338ec060a8b196cd15c1451c9b384e205e12dee2
|
7
|
+
data.tar.gz: 42b651525a21eba9d339abc56337f44a8adb0103fd2e90937822aa72e629db6b47ecc08e2bb7cc299e1aead06950bd59d35873493357dbe5ee9fa8d32f116325
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Battlenet
|
2
|
+
class APIResponse
|
3
|
+
|
4
|
+
def initialize(options={})
|
5
|
+
@data = []
|
6
|
+
@client = options[:client]
|
7
|
+
end
|
8
|
+
|
9
|
+
def get_data
|
10
|
+
unless @client.nil?
|
11
|
+
@data = @client.get "/character/#{@realm}/#{@character_name}"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def method_missing *args
|
16
|
+
if @data.has_key? args[0].to_s
|
17
|
+
@data[args[0].to_s]
|
18
|
+
else
|
19
|
+
super
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
end
|
24
|
+
end
|
data/lib/battlenet/api/client.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'battlenet/api/version'
|
2
|
+
require 'battlenet/api/api_response'
|
2
3
|
require 'httparty'
|
3
4
|
|
4
5
|
module Battlenet
|
@@ -9,8 +10,6 @@ module Battlenet
|
|
9
10
|
attr_accessor *Configuration::OPTIONS_KEYS
|
10
11
|
|
11
12
|
def initialize(options={})
|
12
|
-
|
13
|
-
options = Battlenet.options.merge(client_defaults)
|
14
13
|
options = Battlenet.options.merge(options)
|
15
14
|
|
16
15
|
Configuration::OPTIONS_KEYS.each do |key|
|
@@ -1,7 +1,6 @@
|
|
1
|
-
require '
|
1
|
+
require File.expand_path('../client', __FILE__)
|
2
2
|
|
3
|
-
|
4
|
-
require 'battlenet/modules/d3/data'
|
3
|
+
Dir[File.expand_path('../../modules/d3/*.rb', __FILE__)].each{|f| require f}
|
5
4
|
|
6
5
|
module Battlenet
|
7
6
|
|
@@ -9,8 +8,11 @@ module Battlenet
|
|
9
8
|
|
10
9
|
include Battlenet::D3
|
11
10
|
|
12
|
-
def
|
13
|
-
{ :endpoint => '/d3'
|
11
|
+
def initialize(options = {})
|
12
|
+
client_settings = { :endpoint => '/d3' }
|
13
|
+
client_settings = client_settings.merge(options)
|
14
|
+
|
15
|
+
super(client_settings)
|
14
16
|
end
|
15
17
|
|
16
18
|
end
|
@@ -10,10 +10,13 @@ module Battlenet
|
|
10
10
|
|
11
11
|
include Battlenet::SC2
|
12
12
|
|
13
|
-
def
|
14
|
-
{ :endpoint => '/sc2'
|
13
|
+
def initialize(options = {})
|
14
|
+
client_settings = { :endpoint => '/sc2' }
|
15
|
+
client_settings = client_settings.merge(options)
|
16
|
+
|
17
|
+
super(client_settings)
|
15
18
|
end
|
16
19
|
|
17
20
|
end
|
18
|
-
|
21
|
+
|
19
22
|
end
|
@@ -17,11 +17,13 @@ require 'battlenet/modules/wow/data'
|
|
17
17
|
module Battlenet
|
18
18
|
|
19
19
|
class WOWClient < Client
|
20
|
-
|
21
20
|
include Battlenet::WOW
|
22
21
|
|
23
|
-
def
|
24
|
-
{ :endpoint => '/wow'
|
22
|
+
def initialize(options = {})
|
23
|
+
client_settings = { :endpoint => '/wow' }
|
24
|
+
client_settings = client_settings.merge(options)
|
25
|
+
|
26
|
+
super(client_settings)
|
25
27
|
end
|
26
28
|
|
27
29
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Battlenet
|
2
|
+
module WOW
|
3
|
+
class CharacterProfile < Battlenet::APIResponse
|
4
|
+
|
5
|
+
attr_accessor :name, :realm, :battlegroup, :klass, :race,
|
6
|
+
:gender, :level, :achievementPoints, :thumbnail,
|
7
|
+
:calcClass, :totalHonorableKills
|
8
|
+
|
9
|
+
def initialize(options={})
|
10
|
+
@realm = options.delete(:realm)
|
11
|
+
@character_name = options.delete(:character_name)
|
12
|
+
|
13
|
+
super(options)
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -1,5 +1,7 @@
|
|
1
1
|
require 'uri'
|
2
2
|
|
3
|
+
Dir[File.expand_path('../character/*.rb', __FILE__)].each{|f| require f}
|
4
|
+
|
3
5
|
module Battlenet
|
4
6
|
module WOW
|
5
7
|
def character_profile(realm, character_name, options = {})
|
@@ -111,4 +113,4 @@ module Battlenet
|
|
111
113
|
character_profile(realm, character_name, options)
|
112
114
|
end
|
113
115
|
end
|
114
|
-
end
|
116
|
+
end
|
data/spec/battlenetapi_spec.rb
CHANGED
@@ -1,11 +1,21 @@
|
|
1
1
|
require 'battlenet/api'
|
2
2
|
|
3
3
|
describe Battlenet::Client do
|
4
|
-
|
4
|
+
it "should allow you to configure it for a valid region" do
|
5
5
|
Battlenet.configure do |config|
|
6
6
|
config.api_key = 'test-api'
|
7
|
-
config.region = :
|
7
|
+
config.region = :eu
|
8
|
+
end
|
9
|
+
|
10
|
+
a = Battlenet.WOWClient
|
11
|
+
expect(a.region).to eq(:eu)
|
12
|
+
|
13
|
+
Battlenet.configure do |config|
|
14
|
+
config.region = :us
|
8
15
|
end
|
9
|
-
end
|
10
16
|
|
17
|
+
b = Battlenet.WOWClient
|
18
|
+
expect(b.region).to eq(:us)
|
19
|
+
|
20
|
+
end
|
11
21
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: battlenet-api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- goodcodeguy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-12-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -95,6 +95,7 @@ files:
|
|
95
95
|
- battlenet-api.gemspec
|
96
96
|
- examples/example_oauth.rb
|
97
97
|
- lib/battlenet/api.rb
|
98
|
+
- lib/battlenet/api/api_response.rb
|
98
99
|
- lib/battlenet/api/client.rb
|
99
100
|
- lib/battlenet/api/configuration.rb
|
100
101
|
- lib/battlenet/api/d3_client.rb
|
@@ -110,6 +111,7 @@ files:
|
|
110
111
|
- lib/battlenet/modules/wow/auction_data_status.rb
|
111
112
|
- lib/battlenet/modules/wow/battlepet.rb
|
112
113
|
- lib/battlenet/modules/wow/challenge_mode.rb
|
114
|
+
- lib/battlenet/modules/wow/character/character_profile.rb
|
113
115
|
- lib/battlenet/modules/wow/character_profile.rb
|
114
116
|
- lib/battlenet/modules/wow/data.rb
|
115
117
|
- lib/battlenet/modules/wow/guild.rb
|