# File lib/gitlab/request.rb, line 66
    def validate(response)
      error_klass = case response.code
      when 400 then Error::BadRequest
      when 401 then Error::Unauthorized
      when 403 then Error::Forbidden
      when 404 then Error::NotFound
      when 405 then Error::MethodNotAllowed
      when 409 then Error::Conflict
      when 422 then Error::Unprocessable
      when 500 then Error::InternalServerError
      when 502 then Error::BadGateway
      when 503 then Error::ServiceUnavailable
      end

      fail error_klass.new(response) if error_klass

      parsed = response.parsed_response
      parsed.client = self if parsed.respond_to?(:client=)
      parsed.parse_headers!(response.headers) if parsed.respond_to?(:parse_headers!)
      parsed
    end