Class: Sonic::Protocol::HTTP

Inherits:
Object
  • Object
show all
Includes:
Base
Defined in:
lib/sonic/protocols/http.rb

Instance Method Summary collapse

Constructor Details

#initialize(service_checker) ⇒ HTTP

Returns a new instance of HTTP.



8
9
10
11
12
# File 'lib/sonic/protocols/http.rb', line 8

def initialize(service_checker)
  @service_checker = service_checker
  port_suffix = service_checker.port ? ":#{service_checker.port}" : ""
  @uri = URI.parse("#{service_checker.protocol}://#{service_checker.host}#{port_suffix}/#{service_checker.path}")
end

Instance Method Details

#getObject



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/sonic/protocols/http.rb', line 14

def get
  begin
    @service_checker.response = Net::HTTP.get_response(@uri)
    case @service_checker.response.code
    when '200', '201', '202', '203', '204', '205', '206'
      true
    else
      @service_checker.error = "service error"
      false
    end
  rescue Exception => e
    @service_checker.error = e.to_s
    false
  end
end