blizzard_api 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +4 -0
- data/.rubocop_todo.yml +0 -6
- data/CHANGELOG.md +3 -0
- data/Gemfile.lock +2 -2
- data/README.md +93 -34
- data/lib/blizzard_api/configuration.rb +32 -0
- data/lib/blizzard_api/request.rb +17 -10
- data/lib/blizzard_api/version.rb +1 -1
- data/lib/blizzard_api/wow.rb +111 -47
- data/lib/blizzard_api/wow/community/character.rb +1 -22
- data/lib/blizzard_api/wow/game_data/achievement.rb +101 -0
- data/lib/blizzard_api/wow/game_data/connected_realm.rb +1 -15
- data/lib/blizzard_api/wow/game_data/creature.rb +99 -0
- data/lib/blizzard_api/wow/game_data/generic_data_endpoint.rb +14 -7
- data/lib/blizzard_api/wow/{community → game_data}/guild.rb +42 -3
- data/lib/blizzard_api/wow/game_data/guild_crest.rb +50 -0
- data/lib/blizzard_api/wow/game_data/mount.rb +37 -0
- data/lib/blizzard_api/wow/game_data/mythic_keystone.rb +97 -0
- data/lib/blizzard_api/wow/game_data/mythic_keystone_leaderboard.rb +48 -0
- data/lib/blizzard_api/wow/game_data/mythic_raid_leaderboard.rb +28 -0
- data/lib/blizzard_api/wow/{community/pets.rb → game_data/pet.rb} +14 -1
- data/lib/blizzard_api/wow/game_data/playable_class.rb +10 -4
- data/lib/blizzard_api/wow/game_data/pvp_season.rb +53 -0
- data/lib/blizzard_api/wow/game_data/pvp_tier.rb +33 -0
- data/lib/blizzard_api/wow/game_data/race.rb +1 -15
- data/lib/blizzard_api/wow/game_data/realm.rb +0 -14
- data/lib/blizzard_api/wow/game_data/region.rb +0 -13
- data/lib/blizzard_api/wow/game_data/wow_token.rb +25 -0
- data/lib/blizzard_api/wow/profile/character_profile.rb +77 -0
- metadata +15 -6
- data/lib/blizzard_api/wow/community/achievements.rb +0 -45
- data/lib/blizzard_api/wow/community/mount.rb +0 -24
@@ -0,0 +1,97 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft achievements
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.mythic_keystone
|
12
|
+
class MythicKeystone < Wow::GenericDataEndpoint
|
13
|
+
def get
|
14
|
+
raise BlizzardApi::ApiException, 'Mythic keystone endpoint does not have a get method'
|
15
|
+
end
|
16
|
+
|
17
|
+
def complete
|
18
|
+
raise BlizzardApi::ApiException, 'There are too many creatures to fetch complete data'
|
19
|
+
end
|
20
|
+
|
21
|
+
##
|
22
|
+
# Fetch all mythic keystone dungeons
|
23
|
+
#
|
24
|
+
# @!macro request_options
|
25
|
+
#
|
26
|
+
# @!macro response
|
27
|
+
def dungeons(options = {})
|
28
|
+
api_request "#{endpoint_uri}/period/index", default_options.merge(options)
|
29
|
+
end
|
30
|
+
|
31
|
+
##
|
32
|
+
# Fetch all possible data for one of the items listed by the {#dungeons} using its *id*
|
33
|
+
#
|
34
|
+
# @param id [Integer] Dungeon id
|
35
|
+
#
|
36
|
+
# @!macro request_options
|
37
|
+
#
|
38
|
+
# @!macro response
|
39
|
+
def dungeon(id, options = {})
|
40
|
+
api_request "#{endpoint_uri}/dungeon/#{id}", default_options.merge(options)
|
41
|
+
end
|
42
|
+
|
43
|
+
##
|
44
|
+
# Fetch all mythic keystone periods
|
45
|
+
#
|
46
|
+
# @!macro request_options
|
47
|
+
#
|
48
|
+
# @!macro response
|
49
|
+
def periods(options = {})
|
50
|
+
api_request "#{endpoint_uri}/period/index", default_options.merge(options)
|
51
|
+
end
|
52
|
+
|
53
|
+
##
|
54
|
+
# Fetch all possible data for one of the items listed by the {#periods} using its *id*
|
55
|
+
#
|
56
|
+
# @param id [Integer] Mythic keystone period id
|
57
|
+
#
|
58
|
+
# @!macro request_options
|
59
|
+
#
|
60
|
+
# @!macro response
|
61
|
+
def period(id, options = {})
|
62
|
+
api_request "#{endpoint_uri}/period/#{id}", default_options.merge(options)
|
63
|
+
end
|
64
|
+
|
65
|
+
##
|
66
|
+
# Fetch all mythic keystone seasons
|
67
|
+
#
|
68
|
+
# @!macro request_options
|
69
|
+
#
|
70
|
+
# @!macro response
|
71
|
+
def seasons(options = {})
|
72
|
+
api_request "#{endpoint_uri}/season/index", default_options.merge(options)
|
73
|
+
end
|
74
|
+
|
75
|
+
##
|
76
|
+
# Fetch all possible data for one of the items listed by the {#seasons} using its *id*
|
77
|
+
#
|
78
|
+
# @param id [Integer] Mythic keystone season id
|
79
|
+
#
|
80
|
+
# @!macro request_options
|
81
|
+
#
|
82
|
+
# @!macro response
|
83
|
+
def season(id, options = {})
|
84
|
+
api_request "#{endpoint_uri}/season/#{id}", default_options.merge(options)
|
85
|
+
end
|
86
|
+
|
87
|
+
protected
|
88
|
+
|
89
|
+
def endpoint_setup
|
90
|
+
@endpoint = 'mythic-keystone'
|
91
|
+
@namespace = endpoint_namespace :dynamic
|
92
|
+
@collection = 'mythic-keystones'
|
93
|
+
@ttl = CACHE_TRIMESTER
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft mythic raid leaderboard
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.mythic_keystone_leaderboard
|
12
|
+
class MythicKeystoneLeaderboard < Wow::Request
|
13
|
+
##
|
14
|
+
# Fetch mythic keystone leaderboards for the specified realm
|
15
|
+
#
|
16
|
+
# @param connected_realm_id [Integer] One of the IDs returned by the {ConnectedRealm#index}
|
17
|
+
#
|
18
|
+
# @!macro request_options
|
19
|
+
#
|
20
|
+
# @!macro response
|
21
|
+
def index(connected_realm_id, options = {})
|
22
|
+
api_request "#{endpoint_uri(connected_realm_id)}/index", default_options(options)
|
23
|
+
end
|
24
|
+
|
25
|
+
##
|
26
|
+
# Fetch mythic keystone leaderboard for the specified realm, dungeon and period
|
27
|
+
#
|
28
|
+
# @param connected_realm_id [Integer] One of the IDs returned by the {ConnectedRealm#index}
|
29
|
+
#
|
30
|
+
# @!macro request_options
|
31
|
+
#
|
32
|
+
# @!macro response
|
33
|
+
def get(connected_realm_id, dungeon_id, period, options = {})
|
34
|
+
api_request "#{endpoint_uri(connected_realm_id)}/#{dungeon_id}/period/#{period}", default_options(options)
|
35
|
+
end
|
36
|
+
|
37
|
+
private
|
38
|
+
|
39
|
+
def default_options(options)
|
40
|
+
{ ttl: CACHE_DAY, namespace: endpoint_namespace(:dynamic) }.merge options
|
41
|
+
end
|
42
|
+
|
43
|
+
def endpoint_uri(connected_realm_id)
|
44
|
+
"#{base_url(:game_data)}/connected-realm/#{connected_realm_id}/mythic-leaderboard"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft mythic raid leaderboard
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.mythic_raid_leaderboard
|
12
|
+
class MythicRaidLeaderboard < Wow::Request
|
13
|
+
##
|
14
|
+
# Fetch leaderboard data for given raid and faction
|
15
|
+
#
|
16
|
+
# @param raid [String] Raid slug
|
17
|
+
# @param faction [String] Faction slug
|
18
|
+
#
|
19
|
+
# @!macro request_options
|
20
|
+
#
|
21
|
+
# @!macro response
|
22
|
+
def get(raid, faction, options = {})
|
23
|
+
opts = options.merge(namespace: endpoint_namespace(:dynamic), ttl: CACHE_DAY)
|
24
|
+
api_request "#{base_url(:game_data)}/leaderboard/hall-of-fame/#{raid}/#{faction}", opts
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -9,7 +9,7 @@ module BlizzardApi
|
|
9
9
|
#
|
10
10
|
# You can get an instance of this class using the default region as follows:
|
11
11
|
# api_instance = BlizzardApi::Wow.pet
|
12
|
-
class Pet < Wow::
|
12
|
+
class Pet < Wow::GenericDataEndpoint
|
13
13
|
# Poor (gray) quality pet
|
14
14
|
PET_QUALITY_POOR = 0
|
15
15
|
# Common (white) quality pet
|
@@ -27,9 +27,13 @@ module BlizzardApi
|
|
27
27
|
# Return a list of all available pets
|
28
28
|
#
|
29
29
|
# @!macro request_options
|
30
|
+
# @option options [Boolean] :use_community_endpoint If set to true, this method will call the community endpoint
|
31
|
+
# instead of the data endpoint https://develop.battle.net/documentation/api-reference/world-of-warcraft-community-api
|
30
32
|
#
|
31
33
|
# @!macro response
|
32
34
|
def index(options = {})
|
35
|
+
return super options unless options.include? :use_community_endpoint
|
36
|
+
|
33
37
|
api_request "#{base_url(:community)}/pet/", { ttl: CACHE_TRIMESTER }.merge(options)
|
34
38
|
end
|
35
39
|
|
@@ -80,6 +84,15 @@ module BlizzardApi
|
|
80
84
|
def types(options = {})
|
81
85
|
api_request "#{base_url(:community)}/data/pet/types", { ttl: CACHE_TRIMESTER }.merge(options)
|
82
86
|
end
|
87
|
+
|
88
|
+
protected
|
89
|
+
|
90
|
+
def endpoint_setup
|
91
|
+
@endpoint = 'pet'
|
92
|
+
@namespace = endpoint_namespace :static
|
93
|
+
@collection = 'pets'
|
94
|
+
@ttl = CACHE_TRIMESTER
|
95
|
+
end
|
83
96
|
end
|
84
97
|
end
|
85
98
|
end
|
@@ -32,7 +32,7 @@ module BlizzardApi
|
|
32
32
|
#
|
33
33
|
# @!macro response
|
34
34
|
def talent_slots(id, options = {})
|
35
|
-
api_request "#{
|
35
|
+
api_request "#{endpoint_uri}/#{id}/pvp-talent-slots", default_options.merge(options)
|
36
36
|
end
|
37
37
|
|
38
38
|
##
|
@@ -48,11 +48,17 @@ module BlizzardApi
|
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
|
+
##
|
52
|
+
# Return playable class data by its id
|
53
|
+
#
|
54
|
+
# @param id [Integer] Playable class id
|
55
|
+
#
|
56
|
+
# @!macro request_options
|
57
|
+
#
|
58
|
+
# @!macro response
|
51
59
|
def get(id, options = {})
|
52
|
-
data = api_request "#{
|
60
|
+
data = api_request "#{endpoint_uri}/#{id}", default_options.merge(options)
|
53
61
|
data[:icon] = get_class_icon data[:media], options
|
54
|
-
data.delete :_links
|
55
|
-
data.delete :media
|
56
62
|
data
|
57
63
|
end
|
58
64
|
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft PvP seasons
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.pvp_season
|
12
|
+
class PvpSeason < Wow::GenericDataEndpoint
|
13
|
+
##
|
14
|
+
# Returns a index of pvp leaderboard for a season
|
15
|
+
#
|
16
|
+
# @!macro request_options
|
17
|
+
#
|
18
|
+
# @!macro response
|
19
|
+
def leaderboards(season_id, options = {})
|
20
|
+
api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/index", default_options.merge(options)
|
21
|
+
end
|
22
|
+
|
23
|
+
##
|
24
|
+
# Returns the leaderboard for a given season and bracket
|
25
|
+
#
|
26
|
+
# @!macro request_options
|
27
|
+
#
|
28
|
+
# @!macro response
|
29
|
+
def leaderboard(season_id, brackets, options = {})
|
30
|
+
api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/#{brackets}", default_options.merge(options)
|
31
|
+
end
|
32
|
+
|
33
|
+
##
|
34
|
+
# Returns a list of pvp rewards for a season
|
35
|
+
#
|
36
|
+
# @!macro request_options
|
37
|
+
#
|
38
|
+
# @!macro response
|
39
|
+
def rewards(season_id, options = {})
|
40
|
+
api_request "#{endpoint_uri}/#{season_id}/pvp-reward/index", default_options.merge(options)
|
41
|
+
end
|
42
|
+
|
43
|
+
protected
|
44
|
+
|
45
|
+
def endpoint_setup
|
46
|
+
@endpoint = 'pvp-season'
|
47
|
+
@namespace = endpoint_namespace :dynamic
|
48
|
+
@collection = 'power_types'
|
49
|
+
@ttl = CACHE_TRIMESTER
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft power types
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.power_type
|
12
|
+
class PvpTier < Wow::GenericDataEndpoint
|
13
|
+
##
|
14
|
+
# Returns media assets for a pvp tier
|
15
|
+
#
|
16
|
+
# @!macro request_options
|
17
|
+
#
|
18
|
+
# @!macro response
|
19
|
+
def tier_media(id, options = {})
|
20
|
+
api_request "#{base_url(:media)}/#{@endpoint}/#{id}", default_options.merge(options)
|
21
|
+
end
|
22
|
+
|
23
|
+
protected
|
24
|
+
|
25
|
+
def endpoint_setup
|
26
|
+
@endpoint = 'pvp-tier'
|
27
|
+
@namespace = endpoint_namespace :static
|
28
|
+
@collection = 'tiers'
|
29
|
+
@ttl = CACHE_TRIMESTER
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -24,24 +24,10 @@ module BlizzardApi
|
|
24
24
|
api_request "#{base_url(:community)}/data/character/races", { ttl: CACHE_TRIMESTER }.merge(options)
|
25
25
|
end
|
26
26
|
|
27
|
-
##
|
28
|
-
# @!macro complete
|
29
|
-
def complete(options = {})
|
30
|
-
index_data = index options
|
31
|
-
[].tap do |races|
|
32
|
-
index_data[:races].each do |race|
|
33
|
-
race_id = %r{race/([0-9]+)}.match(race[:key].to_s)[1]
|
34
|
-
race_data = get race_id, options
|
35
|
-
race_data.delete :name
|
36
|
-
races.push race_data
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
27
|
protected
|
42
28
|
|
43
29
|
def endpoint_setup
|
44
|
-
@endpoint = 'race'
|
30
|
+
@endpoint = 'playable-race'
|
45
31
|
@namespace = endpoint_namespace :static
|
46
32
|
@collection = 'races'
|
47
33
|
@ttl = CACHE_TRIMESTER
|
@@ -21,20 +21,6 @@ module BlizzardApi
|
|
21
21
|
api_request "#{base_url(:community)}/realm/status", { ttl: CACHE_MINUTE }.merge(options)
|
22
22
|
end
|
23
23
|
|
24
|
-
##
|
25
|
-
# @!macro complete
|
26
|
-
def complete(options = {})
|
27
|
-
index_data = index options
|
28
|
-
[].tap do |realms|
|
29
|
-
index_data[:realms].each do |realm|
|
30
|
-
realm_data = get realm[:id], options
|
31
|
-
realm_data.delete :_links
|
32
|
-
realm_data[:region].delete :key
|
33
|
-
realms.push realm_data
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
24
|
protected
|
39
25
|
|
40
26
|
def endpoint_setup
|
@@ -10,19 +10,6 @@ module BlizzardApi
|
|
10
10
|
# You can get an instance of this class using the default region as follows:
|
11
11
|
# api_instance = BlizzardApi::Wow.region
|
12
12
|
class Region < Wow::GenericDataEndpoint
|
13
|
-
##
|
14
|
-
# @!macro complete
|
15
|
-
def complete(options = {})
|
16
|
-
[].tap do |data|
|
17
|
-
index_data = index options
|
18
|
-
index_data[:regions].each do |region|
|
19
|
-
region_data = request region[:href], options
|
20
|
-
region_data.delete :_links
|
21
|
-
data.push region_data
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
13
|
##
|
27
14
|
# Returns data about region battlegroups
|
28
15
|
#
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft tokens
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.wow_token
|
12
|
+
class WowToken < Wow::Request
|
13
|
+
##
|
14
|
+
# Returns wow token data
|
15
|
+
#
|
16
|
+
# @!macro request_options
|
17
|
+
#
|
18
|
+
# @!macro response
|
19
|
+
def get(options = {})
|
20
|
+
opts = { namespace: endpoint_namespace(:dynamic), ttl: CACHE_HOUR }.merge(options)
|
21
|
+
api_request "#{base_url(:game_data)}/token/index", opts
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,77 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft character profile data
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-game-data-api
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.achievement
|
12
|
+
class CharacterProfile < Wow::Request
|
13
|
+
##
|
14
|
+
# Return the mythic keystone profile of a character
|
15
|
+
#
|
16
|
+
# @note This endpoint requires a user token obtained through the user authorization flow
|
17
|
+
# @see https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow
|
18
|
+
#
|
19
|
+
# @param realm [String] The character realm's slug
|
20
|
+
# @param character [String] The character name
|
21
|
+
# @param user_token [String] A token obtained by the authorization flow. See link below.
|
22
|
+
# @param season [Integer] Season ID if you want only a specific season or nil to include all.
|
23
|
+
# @!macro request_options
|
24
|
+
#
|
25
|
+
# @!macro response
|
26
|
+
def get_keystone_profile(realm, character, user_token, season = nil, options = {})
|
27
|
+
url = "#{endpoint_uri(realm, character)}/mythic-keystone-profile"
|
28
|
+
url += "/season/#{season}" unless season.nil?
|
29
|
+
api_request url, default_options(user_token).merge(options)
|
30
|
+
end
|
31
|
+
|
32
|
+
##
|
33
|
+
# Return the pvp summary of a character
|
34
|
+
#
|
35
|
+
# @note This endpoint requires a user token obtained through the user authorization flow
|
36
|
+
# @see https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow
|
37
|
+
#
|
38
|
+
# @param realm [String] The character realm's slug
|
39
|
+
# @param character [String] The character name
|
40
|
+
# @param user_token [String] A token obtained by the authorization flow. See link below.
|
41
|
+
# @!macro request_options
|
42
|
+
#
|
43
|
+
# @!macro response
|
44
|
+
def pvp_summmary(realm, character, user_token, options = {})
|
45
|
+
api_request "#{endpoint_uri(realm, character)}/pvp-summary", default_options(user_token).merge(options)
|
46
|
+
end
|
47
|
+
|
48
|
+
##
|
49
|
+
# Return the pvp bracket of a character
|
50
|
+
#
|
51
|
+
# @note This endpoint requires a user token obtained through the user authorization flow
|
52
|
+
# @see https://develop.battle.net/documentation/guides/using-oauth/authorization-code-flow
|
53
|
+
#
|
54
|
+
# @param realm [String] The character realm's slug
|
55
|
+
# @param character [String] The character name
|
56
|
+
# @param bracket [String] Pvp bracket
|
57
|
+
# @param user_token [String] A token obtained by the authorization flow. See link below.
|
58
|
+
# @!macro request_options
|
59
|
+
#
|
60
|
+
# @!macro response
|
61
|
+
def pvp_bracket(realm, character, bracket, user_token, options = {})
|
62
|
+
api_request "#{endpoint_uri(realm, character)}/pvp-bracket/#{bracket}",
|
63
|
+
default_options(user_token).merge(options)
|
64
|
+
end
|
65
|
+
|
66
|
+
private
|
67
|
+
|
68
|
+
def default_options(user_token)
|
69
|
+
{ ttl: CACHE_HOUR, namespace: endpoint_namespace(:profile), access_token: user_token }
|
70
|
+
end
|
71
|
+
|
72
|
+
def endpoint_uri(realm, character)
|
73
|
+
"#{base_url(:profile)}/character/#{CGI.escape(realm)}/#{CGI.escape(character)}"
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|