class Eir::Request
Attributes
server_url[R]
uris[RW]
Public Class Methods
new()
click to toggle source
# File lib/eir/request.rb, line 6 def initialize path_to_yaml = find_yaml @uris = validate_yaml path_to_yaml @server_url = 'http://localhost:8700' end
Public Instance Methods
find_yaml()
click to toggle source
# File lib/eir/request.rb, line 12 def find_yaml if File.exist?("#{Dir.pwd}/uris.yaml") uris_yaml_file = "#{Dir.pwd}/uris.yaml" puts "Found local YAML file: #{uris_yaml_file}" else uris_yaml_file = "#{File.dirname(__FILE__)}/default_uris.yaml" puts "No local YAML file found. Using default YAML file: #{uris_yaml_file}" end uris_yaml_file end
get_http_response_code(uri)
click to toggle source
# File lib/eir/request.rb, line 31 def get_http_response_code(uri) Timeout.timeout(5) do request(uri).code end rescue false end
go()
click to toggle source
# File lib/eir/request.rb, line 39 def go responses = {} @uris.each do |uri_name_hash| uri_name_hash.each do |uri, name| responses.merge!(name => get_http_response_code(uri)) end end responses end
validate_yaml(path_to_yaml)
click to toggle source
# File lib/eir/request.rb, line 23 def validate_yaml(path_to_yaml) invalid_yaml_error = 'YAML structure incorrect. Please refer to the README.' yaml = YAML.load_file path_to_yaml fail(invalid_yaml_error) unless yaml.is_a? Array yaml.each { |hash| fail(invalid_yaml_error) unless hash.is_a? Hash } yaml end
Private Instance Methods
request(uri)
click to toggle source
# File lib/eir/request.rb, line 52 def request(uri) RestClient.get uri end