class KimsufiAvailability
Constants
- SERVER_STATUS_URI
Public Instance Methods
availabilities()
click to toggle source
# File lib/kimsufiavailability.rb, line 12 def availabilities @availabilities || update end
update()
click to toggle source
# File lib/kimsufiavailability.rb, line 16 def update @availabilities = simplify_kimsufi_hash JSON.parse open(SERVER_STATUS_URI).read end
Private Instance Methods
server_mapping()
click to toggle source
# File lib/kimsufiavailability.rb, line 36 def server_mapping { '142sk9' => 'ks1', '142sk2' => 'ks2', '142sk3' => 'ks3', '142sk4' => 'ks4', '142sk5' => 'ks5a', '142sk8' => 'ks5b', '142sk6' => 'ks6', } end
simplify_kimsufi_hash(hash)
click to toggle source
# File lib/kimsufiavailability.rb, line 22 def simplify_kimsufi_hash hash hash = hash['answer']['availability'].select{|e| e['reference']['sk']} availabilities = {} hash.each do |ks| next if server_mapping[ks['reference']].nil? zones = [] ks['zones'].each do |zone| zones << zone['zone'] if zone['availability'] != 'unavailable' end availabilities[server_mapping[ks['reference']]] = zones end availabilities end