class PactBroker::Api::Resources::ErrorResponseBodyGenerator
Public Class Methods
call(error, error_reference, _env = {})
click to toggle source
env not needed, just passing in in case PF ever needs it
# File lib/pact_broker/api/resources/error_response_body_generator.rb, line 10 def self.call error, error_reference, _env = {} response_body_hash(error, error_reference).to_json end
display_message(error, obfuscated_message)
click to toggle source
# File lib/pact_broker/api/resources/error_response_body_generator.rb, line 14 def self.display_message(error, obfuscated_message) if PactBroker.configuration.show_backtrace_in_error_response? error.message || obfuscated_message else PactBroker::Errors.reportable_error?(error) ? obfuscated_message : error.message end end
obfuscated_error_message(error_reference)
click to toggle source
# File lib/pact_broker/api/resources/error_response_body_generator.rb, line 22 def self.obfuscated_error_message(error_reference) "An error has occurred. The details have been logged with the reference #{error_reference}" end
response_body_hash(error, error_reference)
click to toggle source
# File lib/pact_broker/api/resources/error_response_body_generator.rb, line 26 def self.response_body_hash(error, error_reference) response_body = { error: { message: display_message(error, obfuscated_error_message(error_reference)), reference: error_reference } } if PactBroker.configuration.show_backtrace_in_error_response? response_body[:error][:backtrace] = error.backtrace end response_body end