module Uptime::Call
Public Class Methods
checks()
click to toggle source
# File lib/uptime/call.rb, line 42 def self.checks process { Call.resource['checks'].get } end
create_check(attributes={})
click to toggle source
# File lib/uptime/call.rb, line 50 def self.create_check(attributes={}) process { Call.resource['checks'].post(attributes) } end
destroy_check(token)
click to toggle source
# File lib/uptime/call.rb, line 58 def self.destroy_check(token) process { Call.resource["checks/#{token}"].delete } end
downtimes(token, filters={})
click to toggle source
# File lib/uptime/call.rb, line 46 def self.downtimes(token, filters={}) process { Call.resource["checks/#{token}/downtimes"].get(params: filters) } end
execute(resource, method, payload={})
click to toggle source
# File lib/uptime/call.rb, line 10 def self.execute(resource, method, payload={}) puts "username: #{Uptime.configuration.username}" puts "password; #{Uptime.configuration.password}" puts "api_endpoint: #{Uptime.configuration.api_endpoint}" username = Uptime.configuration.username password = Uptime.configuration.password api_endpoint = Uptime.configuration.api_endpoint puts "resource: #{resource}" endpoint = api_endpoint + resource puts "endpoint: #{endpoint}" puts "method: #{method}" RestClient::Request.execute( method: method, url: endpoint, user: username, password: password, payload: payload ) rescue RestClient::BadRequest, RestClient::Unauthorized, RestClient::ResourceNotFound => e result = (JSON.parse(e.response) rescue {}) # raise Uptime::Error.new(result['error'] || e.reponse) raise e.response end
process() { || ... }
click to toggle source
# File lib/uptime/call.rb, line 62 def self.process JSON.parse yield rescue RestClient::BadRequest, RestClient::Unauthorized, RestClient::ResourceNotFound => e result = (JSON.parse(e.response) rescue {}) raise Uptime::Error.new(result['error'] || e.reponse) end
resource()
click to toggle source
# File lib/uptime/call.rb, line 37 def self.resource endpoint = 'https://Uptime.io/api/' RestClient::Resource.new endpoint, headers: { 'X-API-KEY' => Uptime.configuration.api_endpoint } end
update_check(token, attributes={})
click to toggle source
# File lib/uptime/call.rb, line 54 def self.update_check(token, attributes={}) process { Call.resource["checks/#{token}"].put(attributes) } end