Method: Glib::Json::NewDynamicText#retrieve_remote_texts

Defined in:
app/controllers/concerns/glib/json/new_dynamic_text.rb

#retrieve_remote_texts(keys) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'app/controllers/concerns/glib/json/new_dynamic_text.rb', line 43

def retrieve_remote_texts(keys)
  retries = 0

  begin
    response = RestClient.get(ENV['DTR_URL'], { params: { keys: keys } })
  rescue Errno::ECONNREFUSED, RestClient::InternalServerError, RestClient::Exceptions::OpenTimeout, RestClient::Exceptions::ReadTimeout
    if (retries += 1) <= 3
      puts "Timeout, retrying..."
      retry
    else
      raise
    end
  end

  JSON.parse(response)
end