class PactBroker::Api::Resources::ErrorHandler
Public Class Methods
new(error_logger, error_response_generator, error_reporter)
click to toggle source
# File lib/pact_broker/api/resources/error_handler.rb, line 14 def initialize(error_logger, error_response_generator, error_reporter) @error_logger = error_logger @error_response_generator = error_response_generator @error_reporter = error_reporter end
Public Instance Methods
call(error, env, message = nil)
click to toggle source
# File lib/pact_broker/api/resources/error_handler.rb, line 20 def call(error, env, message = nil) error_reference = PactBroker::Errors.generate_error_reference # log error error_logger.call(error, error_reference, env) # report error error_reporter.call(error, error_reference, env) # generate response headers, body = error_response_generator.call(error, error_reference, env, message: message) headers.each { | key, value | response.headers[key] = value } return headers, body end