Sha256: 29d394f7e50cf76ff97f24349bd79b45204cdb27105389171f8144b5f5a568b9
Contents?: true
Size: 952 Bytes
Versions: 5
Compression:
Stored size: 952 Bytes
Contents
module Tangany class Error < StandardError; end class InputError < Error def initialize(validation_errors) super(validation_errors.to_json) end end class RequestError < Error attr_reader :activity_id, :details, :error_code, :status_code, :validation_errors def initialize(message, activity_id: nil, details: nil, error_code: nil, status_code: nil, validation_errors: []) @activity_id = activity_id @details = details @error_code = error_code @message = message @status_code = status_code @validation_errors = validation_errors enrich_message super(@message) end private def enrich_message @message = "[#{status_code}] #{@message}" @message += " (#{details})" if details @message += " Validation errors: " + validation_errors.map { |error| "#{error[:source]}: #{error[:message]}" }.join(", ") if validation_errors&.any? end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
tangany-0.0.5 | lib/tangany/error.rb |
tangany-0.0.4 | lib/tangany/error.rb |
tangany-0.0.3 | lib/tangany/error.rb |
tangany-0.0.2 | lib/tangany/error.rb |
tangany-0.0.1 | lib/tangany/error.rb |