class HotsApi::Repositories::ReplayRepository
Public Instance Methods
fingerprint_uploaded?(fingerprint)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 16 def fingerprint_uploaded?(fingerprint) response = HotsApi.get("replays/fingerprints/v3/#{fingerprint}") response.parse['exists'] end
fingerprints_uploaded?(fingerprints)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 21 def fingerprints_uploaded?(fingerprints) return {} if fingerprints.empty? response = HotsApi.post('replays/fingerprints', body: fingerprints.join("\n")) upload_statuses = response.parse {}.tap do |fingerprint_statuses| upload_statuses['exists'].each do |fingerprint| fingerprint_statuses[fingerprint] = true end upload_statuses['absent'].each do |fingerprint| fingerprint_statuses[fingerprint] = false end end end
minimum_supported_build()
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 38 def minimum_supported_build HotsApi.get('replays/min-build').to_s.to_i end
trigger_hotslogs_upload(fingerprint)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 11 def trigger_hotslogs_upload(fingerprint) response = HotsApi.get("replays/fingerprints/v3/#{fingerprint}", params: {uploadToHotslogs: 1}) response.parse['exists'] end
upload(file)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 6 def upload(file) response = HotsApi.post('replays', file: file) Models::UploadedReplay.new(response.parse) end
with_players()
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 42 def with_players copy { @where_values[:with_players] = 1 } end
Private Instance Methods
collection_path()
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 90 def collection_path 'replays' end
date_string_for(date)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 78 def date_string_for(date) if date.respond_to?(:strftime) date.strftime('%F %T') else date.to_s end end
end_date=(date)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 52 def end_date=(date) @where_values[:end_date] = date_string_for(date) end
game_map=(map)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 56 def game_map=(map) @where_values[:game_map] = map end
game_type=(game_type)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 60 def game_type=(game_type) @where_values[:game_type] = game_type end
hero=(hero)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 73 def hero=(hero) raise 'filtering by hero is currently deactivated on hotsapi.net' @where_values[:hero] = hero end
instantiate_record_with(attributes)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 86 def instantiate_record_with(attributes) Models::Replay.new(attributes) end
min_id=(id)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 64 def min_id=(id) @where_values[:min_id] = id end
player=(player)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 68 def player=(player) raise 'filtering by player is currently deactivated on hotsapi.net' @where_values[:player] = player end
start_date=(date)
click to toggle source
# File lib/hots_api/repositories/replay_repository.rb, line 48 def start_date=(date) @where_values[:start_date] = date_string_for(date) end