Sha256: f9243e5b9934fc750bd4290d68b173214ab9bc8566eea74bb97d09d06b90cc1d
Contents?: true
Size: 1.04 KB
Versions: 9
Compression:
Stored size: 1.04 KB
Contents
require "pact_broker/configuration" require "securerandom" # Logs the error # Reports the error # Generates and returns response headers and response body module PactBroker module Api module Resources class ErrorHandler include PactBroker::Logging def initialize(error_logger, error_response_generator, error_reporter) @error_logger = error_logger @error_response_generator = error_response_generator @error_reporter = error_reporter end 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 end end end end
Version data entries
9 entries across 9 versions & 1 rubygems