halo-api 0.1.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/.gitignore +14 -0
- data/.rspec +2 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +5 -0
- data/Gemfile +6 -0
- data/LICENSE.txt +21 -0
- data/README.md +60 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/halo-api.gemspec +34 -0
- data/lib/halo-api.rb +33 -0
- data/lib/halo-api/api_response.rb +19 -0
- data/lib/halo-api/client.rb +56 -0
- data/lib/halo-api/configuration.rb +22 -0
- data/lib/halo-api/modules/metadata/halo5/campaign_missions.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/commendations.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/csr_designations.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/enemies.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/flexible_stats.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/game_base_variants.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/game_variant.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/impulses.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/map_variant.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/maps.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/medals.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/playlist.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/requisition.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/requisition_pack.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/seasons.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/skulls.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/spartan_ranks.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/team_colors.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/vehicles.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5/weapons.rb +17 -0
- data/lib/halo-api/modules/metadata/halo5_metadata_client.rb +120 -0
- data/lib/halo-api/modules/profile/halo5/player_appearance.rb +17 -0
- data/lib/halo-api/modules/profile/halo5/player_emblem_image.rb +17 -0
- data/lib/halo-api/modules/profile/halo5/player_spartan_image.rb +17 -0
- data/lib/halo-api/modules/profile/halo5_profile_client.rb +36 -0
- data/lib/halo-api/modules/stats/halo5/company.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/company_commendations.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/leaderboard_player_csr.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/match_events.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/match_result_arena.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/match_result_campaign.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/match_result_custom.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/match_result_warzone.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/pc_match_result_custom.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/pc_player_match_history.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/pc_player_service_records_custom.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_commendations.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_match_history.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_service_records_arena.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_service_records_campaign.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_service_records_custom.rb +17 -0
- data/lib/halo-api/modules/stats/halo5/player_service_records_warzone.rb +17 -0
- data/lib/halo-api/modules/stats/halo5_stats_client.rb +105 -0
- data/lib/halo-api/modules/ugc/halo5/player_game_variant.rb +17 -0
- data/lib/halo-api/modules/ugc/halo5/player_game_variants.rb +17 -0
- data/lib/halo-api/modules/ugc/halo5/player_map_variant.rb +17 -0
- data/lib/halo-api/modules/ugc/halo5/player_map_variants.rb +17 -0
- data/lib/halo-api/modules/ugc/halo5_ugc_client.rb +40 -0
- data/lib/halo-api/version.rb +3 -0
- metadata +227 -0
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class Company < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(company_id, options = {})
|
11
|
+
get_data("#{@endpoint}/companies/#{company_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class CompanyCommendations < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(company_id, options = {})
|
11
|
+
get_data("#{@endpoint}/companies/#{company_id}/commendations", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class LeaderboardPlayerCsr < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(season_id, playlist_id, options = {})
|
11
|
+
get_data("#{@endpoint}/player-leaderboards/csr/#{season_id}/#{playlist_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class MatchEvents < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}/matches/#{match_id}/events", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class MatchResultArena < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}/arena/matches/#{match_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class MatchResultCampaign < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}/campaign/matches/#{match_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class MatchResultCustom < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}/custom/matches/#{match_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class MatchResultWarzone < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}/warzone/matches/#{match_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PcMatchResultCustom < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(match_id, options = {})
|
11
|
+
get_data("#{@endpoint}pc/custom/matches/#{match_id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PcPlayerMatchHistory < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}pc/players/#{player}/matches", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PcPlayerServiceRecordsCustom < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(players, options = {})
|
11
|
+
get_data("#{@endpoint}pc/servicerecords/custom?players=#{players}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerCommendations < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}/players/#{player}/commendations", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerMatchHistory < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}/players/#{player}/matches", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerServiceRecordsArena < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(players, options = {})
|
11
|
+
get_data("#{@endpoint}/servicerecords/arena?players=#{players}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerServiceRecordsCampaign < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(players, options = {})
|
11
|
+
get_data("#{@endpoint}/servicerecords/campaign?players=#{players}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerServiceRecordsCustom < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(players, options = {})
|
11
|
+
get_data("#{@endpoint}/servicerecords/custom?players=#{players}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Stats
|
3
|
+
module Halo5
|
4
|
+
class PlayerServiceRecordsWarzone < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(players, options = {})
|
11
|
+
get_data("#{@endpoint}/servicerecords/warzone?players=#{players}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,105 @@
|
|
1
|
+
require 'halo-api/client'
|
2
|
+
|
3
|
+
require 'halo-api/modules/stats/halo5/company'
|
4
|
+
require 'halo-api/modules/stats/halo5/company_commendations'
|
5
|
+
require 'halo-api/modules/stats/halo5/leaderboard_player_csr'
|
6
|
+
require 'halo-api/modules/stats/halo5/match_events'
|
7
|
+
require 'halo-api/modules/stats/halo5/match_result_arena'
|
8
|
+
require 'halo-api/modules/stats/halo5/match_result_campaign'
|
9
|
+
require 'halo-api/modules/stats/halo5/match_result_custom'
|
10
|
+
require 'halo-api/modules/stats/halo5/match_result_warzone'
|
11
|
+
require 'halo-api/modules/stats/halo5/player_commendations'
|
12
|
+
require 'halo-api/modules/stats/halo5/player_match_history'
|
13
|
+
require 'halo-api/modules/stats/halo5/player_service_records_arena'
|
14
|
+
require 'halo-api/modules/stats/halo5/player_service_records_campaign'
|
15
|
+
require 'halo-api/modules/stats/halo5/player_service_records_custom'
|
16
|
+
require 'halo-api/modules/stats/halo5/player_service_records_warzone'
|
17
|
+
require 'halo-api/modules/stats/halo5/pc_match_result_custom'
|
18
|
+
require 'halo-api/modules/stats/halo5/pc_player_match_history'
|
19
|
+
require 'halo-api/modules/stats/halo5/pc_player_service_records_custom'
|
20
|
+
|
21
|
+
|
22
|
+
module Halo
|
23
|
+
module Stats
|
24
|
+
|
25
|
+
# Halo 5 Stats endpoints
|
26
|
+
class Halo5StatsClient < Client
|
27
|
+
|
28
|
+
def initialize(options = {})
|
29
|
+
client_settings = { endpoint: '/stats/h5' }
|
30
|
+
client_settings = client_settings.merge(options)
|
31
|
+
|
32
|
+
super(client_settings)
|
33
|
+
end
|
34
|
+
|
35
|
+
def company(options = {})
|
36
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::Company)
|
37
|
+
end
|
38
|
+
|
39
|
+
def company_commendations(options = {})
|
40
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::CompanyCommendations)
|
41
|
+
end
|
42
|
+
|
43
|
+
def leaderboard_player_csr(options = {})
|
44
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::LeaderboardPlayerCsr)
|
45
|
+
end
|
46
|
+
|
47
|
+
def match_events(options = {})
|
48
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::MatchEvents)
|
49
|
+
end
|
50
|
+
|
51
|
+
def match_result_arena(options = {})
|
52
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::MatchResultArena)
|
53
|
+
end
|
54
|
+
|
55
|
+
def match_result_campaign(options = {})
|
56
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::MatchResultCampaign)
|
57
|
+
end
|
58
|
+
|
59
|
+
def match_result_custom(options = {})
|
60
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::MatchResultCustom)
|
61
|
+
end
|
62
|
+
|
63
|
+
def match_result_warzone(options = {})
|
64
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::MatchResultWarzone)
|
65
|
+
end
|
66
|
+
|
67
|
+
def player_commendations(options = {})
|
68
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerCommendations)
|
69
|
+
end
|
70
|
+
|
71
|
+
def player_match_history(options = {})
|
72
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerMatchHistory)
|
73
|
+
end
|
74
|
+
|
75
|
+
def psr_arena(options = {})
|
76
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerServiceRecordsArena)
|
77
|
+
end
|
78
|
+
|
79
|
+
def psr_campaign(options = {})
|
80
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerServiceRecordsCampaign)
|
81
|
+
end
|
82
|
+
|
83
|
+
def psr_custom(options = {})
|
84
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerServiceRecordsCustom)
|
85
|
+
end
|
86
|
+
|
87
|
+
def psr_warzone(options = {})
|
88
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PlayerServiceRecordsWarzone)
|
89
|
+
end
|
90
|
+
|
91
|
+
def pc_match_result_custom(options = {})
|
92
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PcMatchResultCustom)
|
93
|
+
end
|
94
|
+
|
95
|
+
def pc_player_match_history(options = {})
|
96
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PcPlayerMatchHistory)
|
97
|
+
end
|
98
|
+
|
99
|
+
def pc_psr_custom(options = {})
|
100
|
+
merge_options_and_return_obj(options, Halo::Stats::Halo5::PcPlayerServiceRecordsWarzone)
|
101
|
+
end
|
102
|
+
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Ugc
|
3
|
+
module Halo5
|
4
|
+
class PlayerGameVariant < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, variant, options = {})
|
11
|
+
get_data("#{@endpoint}/#{player}/gamevariants/#{variant}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|