halo-api 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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 Metadata
|
3
|
+
module Halo5
|
4
|
+
class GameVariant < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(id, options = {})
|
11
|
+
get_data("#{@endpoint}/game-variants/#{id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class Impulses < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def all(options = {})
|
11
|
+
get_data("#{@endpoint}/impulses", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class MapVariant < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(id, options = {})
|
11
|
+
get_data("#{@endpoint}/map-variants/#{id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class Playlist < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def all(options = {})
|
11
|
+
get_data("#{@endpoint}/playlist", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class Requisition < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(id, options = {})
|
11
|
+
get_data("#{@endpoint}/requisitions/#{id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class RequisitionPack < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(id, options = {})
|
11
|
+
get_data("#{@endpoint}/requisitions/#{id}", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class SpartanRanks < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def all(options = {})
|
11
|
+
get_data("#{@endpoint}/spartan-ranks", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class TeamColors < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def all(options = {})
|
11
|
+
get_data("#{@endpoint}/team-colors", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Metadata
|
3
|
+
module Halo5
|
4
|
+
class Vehicles < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def all(options = {})
|
11
|
+
get_data("#{@endpoint}/vehicles", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,120 @@
|
|
1
|
+
require 'halo-api/client'
|
2
|
+
|
3
|
+
require 'halo-api/modules/metadata/halo5/campaign_missions'
|
4
|
+
require 'halo-api/modules/metadata/halo5/commendations'
|
5
|
+
require 'halo-api/modules/metadata/halo5/csr_designations'
|
6
|
+
require 'halo-api/modules/metadata/halo5/enemies'
|
7
|
+
require 'halo-api/modules/metadata/halo5/flexible_stats'
|
8
|
+
require 'halo-api/modules/metadata/halo5/game_base_variants'
|
9
|
+
require 'halo-api/modules/metadata/halo5/game_variant'
|
10
|
+
require 'halo-api/modules/metadata/halo5/impulses'
|
11
|
+
require 'halo-api/modules/metadata/halo5/map_variant'
|
12
|
+
require 'halo-api/modules/metadata/halo5/maps'
|
13
|
+
require 'halo-api/modules/metadata/halo5/medals'
|
14
|
+
require 'halo-api/modules/metadata/halo5/playlist'
|
15
|
+
require 'halo-api/modules/metadata/halo5/requisition'
|
16
|
+
require 'halo-api/modules/metadata/halo5/requisition_pack'
|
17
|
+
require 'halo-api/modules/metadata/halo5/seasons'
|
18
|
+
require 'halo-api/modules/metadata/halo5/skulls'
|
19
|
+
require 'halo-api/modules/metadata/halo5/spartan_ranks'
|
20
|
+
require 'halo-api/modules/metadata/halo5/team_colors'
|
21
|
+
require 'halo-api/modules/metadata/halo5/vehicles'
|
22
|
+
require 'halo-api/modules/metadata/halo5/weapons'
|
23
|
+
|
24
|
+
|
25
|
+
module Halo
|
26
|
+
module Metadata
|
27
|
+
|
28
|
+
# Halo 5 Metadata endpoints
|
29
|
+
class Halo5MetadataClient < Client
|
30
|
+
|
31
|
+
def initialize(options = {})
|
32
|
+
client_settings = { endpoint: '/metadata/h5/metadata' }
|
33
|
+
client_settings = client_settings.merge(options)
|
34
|
+
|
35
|
+
super(client_settings)
|
36
|
+
end
|
37
|
+
|
38
|
+
def campaign_missions(options = {})
|
39
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::CampaignMissions)
|
40
|
+
end
|
41
|
+
|
42
|
+
def commendations(options = {})
|
43
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Commendations)
|
44
|
+
end
|
45
|
+
|
46
|
+
def csr_designations(options = {})
|
47
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::CsrDesignations)
|
48
|
+
end
|
49
|
+
|
50
|
+
def enemies(options = {})
|
51
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Enemies)
|
52
|
+
end
|
53
|
+
|
54
|
+
def flexible_stats(options = {})
|
55
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::FlexibleStats)
|
56
|
+
end
|
57
|
+
|
58
|
+
def game_base_variants(options = {})
|
59
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::GameBaseVariants)
|
60
|
+
end
|
61
|
+
|
62
|
+
def game_variant(options = {})
|
63
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::GameVariant)
|
64
|
+
end
|
65
|
+
|
66
|
+
def impulses(options = {})
|
67
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Impulses)
|
68
|
+
end
|
69
|
+
|
70
|
+
def map_variant(options = {})
|
71
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::MapVariant)
|
72
|
+
end
|
73
|
+
|
74
|
+
def maps(options = {})
|
75
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Maps)
|
76
|
+
end
|
77
|
+
|
78
|
+
def medals(options = {})
|
79
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Medals)
|
80
|
+
end
|
81
|
+
|
82
|
+
def playlist(options = {})
|
83
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Playlist)
|
84
|
+
end
|
85
|
+
|
86
|
+
def requisition(options = {})
|
87
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Requisition)
|
88
|
+
end
|
89
|
+
|
90
|
+
def requisition_pack(options = {})
|
91
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::RequisitionPack)
|
92
|
+
end
|
93
|
+
|
94
|
+
def seasons(options = {})
|
95
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Seasons)
|
96
|
+
end
|
97
|
+
|
98
|
+
def skulls(options = {})
|
99
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Skulls)
|
100
|
+
end
|
101
|
+
|
102
|
+
def spartan_ranks(options = {})
|
103
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::SpartanRanks)
|
104
|
+
end
|
105
|
+
|
106
|
+
def team_colors(options = {})
|
107
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::TeamColors)
|
108
|
+
end
|
109
|
+
|
110
|
+
def vehicles(options = {})
|
111
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Vehicles)
|
112
|
+
end
|
113
|
+
|
114
|
+
def weapons(options = {})
|
115
|
+
merge_options_and_return_obj(options, Halo::Metadata::Halo5::Weapons)
|
116
|
+
end
|
117
|
+
end
|
118
|
+
|
119
|
+
end
|
120
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Profile
|
3
|
+
module Halo5
|
4
|
+
class PlayerAppearance < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}/#{player}/appearance", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Profile
|
3
|
+
module Halo5
|
4
|
+
class PlayerEmblemImage < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}/#{player}/emblem", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module Halo
|
2
|
+
module Profile
|
3
|
+
module Halo5
|
4
|
+
class PlayerSpartanImage < Halo::APIResponse
|
5
|
+
|
6
|
+
def initialize(options = {})
|
7
|
+
super(options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def find(player, options = {})
|
11
|
+
get_data("#{@endpoint}/#{player}/spartan", options)
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'halo-api/client'
|
2
|
+
|
3
|
+
require 'halo-api/modules/profile/halo5/player_appearance'
|
4
|
+
require 'halo-api/modules/profile/halo5/player_emblem_image'
|
5
|
+
require 'halo-api/modules/profile/halo5/player_spartan_image'
|
6
|
+
|
7
|
+
|
8
|
+
module Halo
|
9
|
+
module Profile
|
10
|
+
|
11
|
+
# Halo 5 Profile endpoints
|
12
|
+
class Halo5ProfileClient < Client
|
13
|
+
|
14
|
+
def initialize(options = {})
|
15
|
+
client_settings = { endpoint: '/profile/h5/profiles' }
|
16
|
+
client_settings = client_settings.merge(options)
|
17
|
+
|
18
|
+
super(client_settings)
|
19
|
+
end
|
20
|
+
|
21
|
+
def player_appearance(options = {})
|
22
|
+
merge_options_and_return_obj(options, Halo::Profile::Halo5::PlayerAppearance)
|
23
|
+
end
|
24
|
+
|
25
|
+
def player_emblem_image(options = {})
|
26
|
+
merge_options_and_return_obj(options, Halo::Profile::Halo5::PlayerEmblemImage)
|
27
|
+
end
|
28
|
+
|
29
|
+
def player_spartan_image(options = {})
|
30
|
+
merge_options_and_return_obj(options, Halo::Profile::Halo5::PlayerSpartanImage)
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|