module Fog::Scaleway::Errors
Public Class Methods
decode_error(error)
click to toggle source
# File lib/fog/scaleway/errors.rb, line 4 def self.decode_error(error) body = begin Fog::JSON.decode(error.response.body) rescue Fog::JSON::DecodeError nil end return if body.nil? type = body['type'] message = body['message'] fields = body['fields'] return if type.nil? || message.nil? unless fields.nil? message << "\n" message << format_fields(fields) end { type: type, message: message } end
format_field(field, msgs)
click to toggle source
# File lib/fog/scaleway/errors.rb, line 31 def self.format_field(field, msgs) msgs = msgs.map { |msg| "\t\t- #{msg}" } "\t#{field}:\n#{msgs.join("\n")}" end
format_fields(fields)
click to toggle source
# File lib/fog/scaleway/errors.rb, line 27 def self.format_fields(fields) fields.map { |field, msgs| format_field(field, msgs) }.join("\n") end