Sha256: 8bf553fad8ee6c19cbfb54e4648453623476403cdc5c93548c7e65370b1899ab

Contents?: true

Size: 839 Bytes

Versions: 4

Compression:

Stored size: 839 Bytes

Contents

module OpenIDConnect
  class Exception < StandardError; end

  class ValidationFailed < Exception
    attr_reader :errors

    def initialize(errors)
      super errors.full_messages.to_sentence
      @errors = errors
    end
  end

  class HttpError < Exception
    attr_accessor :status, :response
    def initialize(status, message = nil, response = nil)
      super message
      @status = status
      @response = response
    end
  end

  class BadRequest < HttpError
    def initialize(message = nil, response = nil)
      super 400, message, response
    end
  end

  class Unauthorized < HttpError
    def initialize(message = nil, response = nil)
      super 401, message, response
    end
  end

  class Forbidden < HttpError
    def initialize(message = nil, response = nil)
      super 403, message, response
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
openid_connect-0.1.1 lib/openid_connect/exception.rb
openid_connect-0.1.0 lib/openid_connect/exception.rb
openid_connect-0.0.33 lib/openid_connect/exception.rb
openid_connect-0.0.32 lib/openid_connect/exception.rb