Sha256: 0c7603185eaf2b7b44726693da1124499bc79aafa2b819f27dc4272760120631

Contents?: true

Size: 644 Bytes

Versions: 13

Compression:

Stored size: 644 Bytes

Contents

# frozen_string_literal: true

module Onfido
  class OnfidoError < StandardError
    attr_accessor :response_code, :response_body

    def initialize(message = nil,
                   response_code: nil,
                   response_body: nil)
      @response_code = response_code
      @response_body = response_body

      super(message)
    end

    def json_body
      JSON.parse(response_body.to_s)
    rescue JSON::ParserError
      nil
    end

    def type
      json_body && json_body['error'] && json_body['error']['type']
    end

    def fields
      json_body && json_body['error'] && json_body['error']['fields']
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
onfido-2.9.0 lib/onfido/errors/onfido_error.rb
onfido-2.8.0 lib/onfido/errors/onfido_error.rb
onfido-2.7.0 lib/onfido/errors/onfido_error.rb
onfido-2.6.0 lib/onfido/errors/onfido_error.rb
onfido-2.5.0 lib/onfido/errors/onfido_error.rb
onfido-2.4.0 lib/onfido/errors/onfido_error.rb
onfido-2.3.0 lib/onfido/errors/onfido_error.rb
onfido-2.2.0 lib/onfido/errors/onfido_error.rb
onfido-2.1.1 lib/onfido/errors/onfido_error.rb
onfido-2.1.0 lib/onfido/errors/onfido_error.rb
onfido-2.0.2 lib/onfido/errors/onfido_error.rb
onfido-2.0.1 lib/onfido/errors/onfido_error.rb
onfido-2.0.0 lib/onfido/errors/onfido_error.rb