lib/creditsafe/messages.rb in creditsafe-0.5.0 vs lib/creditsafe/messages.rb in creditsafe-0.5.1

- old
+ new

@@ -1,8 +1,9 @@ # frozen_string_literal: true -require 'creditsafe/errors' +require "creditsafe/errors" + module Creditsafe module Messages class Message attr_reader :code, :message, :error @@ -12,11 +13,11 @@ @code = code @message = message @error = error end - alias error? error + alias_method :error?, :error def error_class return unless error? case code[1].to_i @@ -28,32 +29,32 @@ end end end # rubocop:disable Metrics/LineLength - NO_RESULTS = Message.new(code: '010101', message: 'No results') - TOO_MANY_RESULTS = Message.new(code: '010102', message: 'Too many results') - REPORT_UNAVAILABLE = Message.new(code: '010103', message: 'Report unavailable', error: true) - REPORT_UNAVAILABLE_LEGAL = Message.new(code: '010104', message: 'Report unavailable due to legal causes', error: true) - REPORT_UNAVAILABLE_ONLINE = Message.new(code: '010105', message: 'Report unavailable online', error: true) - LEGAL_NOTICE = Message.new(code: '010106', message: 'Legal notice') - INVALID_CREDENTIALS = Message.new(code: '020101', message: 'Invalid credentials', error: true) - ACCESS_RESTRICTED = Message.new(code: '020102', message: 'Access restricted', error: true) - ACCESS_LIMITS_NEARING = Message.new(code: '020103', message: 'Access limits nearing') - REPORTBOX_ALMOST_FULL = Message.new(code: '020201', message: 'Reportbox almost full', error: true) - REPORTBOX_FULL = Message.new(code: '020202', message: 'Reportbox full', error: true) - INVALID_REQUEST_XML = Message.new(code: '030101', message: 'Invalid request XML', error: true) - INVALID_OPERATION_PARAMS = Message.new(code: '030102', message: 'Invalid operation parameters', error: true) - OPERATION_NOT_SUPPORTED = Message.new(code: '030103', message: 'Operation not supported', error: true) - INVALID_CUSTOM_DATA_SPECIFIED = Message.new(code: '030104', message: 'Invalid custom data specified', error: true) - CHANGE_NOTIFICATION = Message.new(code: '030201', message: 'Change notification') - TEMPORARY_SYSTEM_PROBLEM = Message.new(code: '030202', message: 'Temporary system problem', error: true) - ENDPOINT_SHUTDOWN = Message.new(code: '030203', message: 'Endpoint shutdown', error: true) - UNEXPECTED_INTERNAL_ERROR = Message.new(code: '040101', message: 'Unexpected internal error', error: true) - OTHER_ERROR = Message.new(code: '040102', message: 'Other', error: true) - DATA_SERVICE_PROBLEMS = Message.new(code: '040103', message: 'Data service access problems', error: true) - DATA_SERVICE_INVALID_RESPONSE = Message.new(code: '040104', message: 'Data service invalid response', error: true) + NO_RESULTS = Message.new(code: "010101", message: "No results") + TOO_MANY_RESULTS = Message.new(code: "010102", message: "Too many results") + REPORT_UNAVAILABLE = Message.new(code: "010103", message: "Report unavailable", error: true) + REPORT_UNAVAILABLE_LEGAL = Message.new(code: "010104", message: "Report unavailable due to legal causes", error: true) + REPORT_UNAVAILABLE_ONLINE = Message.new(code: "010105", message: "Report unavailable online", error: true) + LEGAL_NOTICE = Message.new(code: "010106", message: "Legal notice") + INVALID_CREDENTIALS = Message.new(code: "020101", message: "Invalid credentials", error: true) + ACCESS_RESTRICTED = Message.new(code: "020102", message: "Access restricted", error: true) + ACCESS_LIMITS_NEARING = Message.new(code: "020103", message: "Access limits nearing") + REPORTBOX_ALMOST_FULL = Message.new(code: "020201", message: "Reportbox almost full", error: true) + REPORTBOX_FULL = Message.new(code: "020202", message: "Reportbox full", error: true) + INVALID_REQUEST_XML = Message.new(code: "030101", message: "Invalid request XML", error: true) + INVALID_OPERATION_PARAMS = Message.new(code: "030102", message: "Invalid operation parameters", error: true) + OPERATION_NOT_SUPPORTED = Message.new(code: "030103", message: "Operation not supported", error: true) + INVALID_CUSTOM_DATA_SPECIFIED = Message.new(code: "030104", message: "Invalid custom data specified", error: true) + CHANGE_NOTIFICATION = Message.new(code: "030201", message: "Change notification") + TEMPORARY_SYSTEM_PROBLEM = Message.new(code: "030202", message: "Temporary system problem", error: true) + ENDPOINT_SHUTDOWN = Message.new(code: "030203", message: "Endpoint shutdown", error: true) + UNEXPECTED_INTERNAL_ERROR = Message.new(code: "040101", message: "Unexpected internal error", error: true) + OTHER_ERROR = Message.new(code: "040102", message: "Other", error: true) + DATA_SERVICE_PROBLEMS = Message.new(code: "040103", message: "Data service access problems", error: true) + DATA_SERVICE_INVALID_RESPONSE = Message.new(code: "040104", message: "Data service invalid response", error: true) # rubocop:enable Metrics/LineLength ALL = [ NO_RESULTS, TOO_MANY_RESULTS, @@ -74,21 +75,21 @@ TEMPORARY_SYSTEM_PROBLEM, ENDPOINT_SHUTDOWN, UNEXPECTED_INTERNAL_ERROR, OTHER_ERROR, DATA_SERVICE_PROBLEMS, - DATA_SERVICE_INVALID_RESPONSE + DATA_SERVICE_INVALID_RESPONSE, ].freeze # Creditsafe documentation shows a 6 digit error code, however their API # strips the leading 0. To comply with the docs, we pad the API code here to # ensure we find the right match def self.for_code(code) - padded_code = code.rjust(6, '0') + padded_code = code.rjust(6, "0") message = ALL.find { |msg| msg.code == padded_code } if message.nil? - message = Message.new(code: code, message: 'Unknown error', error: true) + message = Message.new(code: code, message: "Unknown error", error: true) end message end end