class PactBroker::Diagnostic::Resources::Dependencies
Public Class Methods
new()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 12 def initialize @return_status = 200 end
Public Instance Methods
allowed_methods()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 16 def allowed_methods ["GET"] end
content_types_provided()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 20 def content_types_provided [["application/hal+json", :to_json]] end
to_json()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 24 def to_json ok, report = database_connectivity_status response.body = { "database" => report, "_links" => { "self" => { "href" => base_url + "/diagnostic/status/dependencies" } } }.to_json ok ? 200 : 500 end
Private Instance Methods
database_connectivity_status()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 40 def database_connectivity_status begin valid = valid_database_connection? return valid, { "ok" => valid } rescue => e logger.error "#{e.class} - #{e.message}\n#{e.backtrace.join("\n")}" report = { "ok" => false, "error" => { "message" => "#{e.class} - #{e.message}" } } return false, report end end
valid_database_connection?()
click to toggle source
# File lib/pact_broker/diagnostic/resources/dependencies.rb, line 56 def valid_database_connection? connection = PactBroker::DB.connection connection.synchronize do |synchronized_connection| connection.valid_connection? synchronized_connection end end