Sha256: 6025abcbde4b3c01ae7aec95c6c81f5c9a4cd4d1d95f354ab67443cee5dcb6f2

Contents?: true

Size: 586 Bytes

Versions: 10

Compression:

Stored size: 586 Bytes

Contents

module ZendeskAPI
  module Error
    class ClientError < Faraday::Error::ClientError; end

    class RecordInvalid < ClientError
      attr_accessor :response, :errors

      def initialize(response)
        @response = response

        if response[:body].is_a?(Hash) && response[:body].key?("details")
          @errors = response[:body]["details"]
        else
          @errors = {}
        end
      end

      def to_s
        "#{self.class.name}: #{@errors.to_s}"
      end
    end

    class NetworkError < ClientError; end
    class RecordNotFound < ClientError; end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
zendesk_api-1.1.3 lib/zendesk_api/error.rb
zendesk_api-1.1.2 lib/zendesk_api/error.rb
zendesk_api-1.1.1 lib/zendesk_api/error.rb
zendesk_api-1.1.0 lib/zendesk_api/error.rb
zendesk_api-1.0.7 lib/zendesk_api/error.rb
zendesk_api-1.0.6 lib/zendesk_api/error.rb
zendesk_api-1.0.5 lib/zendesk_api/error.rb
zendesk_api-1.0.4 lib/zendesk_api/error.rb
zendesk_api-1.0.3 lib/zendesk_api/error.rb
zendesk_api-1.0.2 lib/zendesk_api/error.rb