lib/blacklight/solr/repository.rb in blacklight-7.40.0 vs lib/blacklight/solr/repository.rb in blacklight-8.0.0.beta1
- old
+ new
@@ -1,6 +1,7 @@
# frozen_string_literal: true
+
module Blacklight::Solr
class Repository < Blacklight::AbstractRepository
##
# Find a single solr document result (by id) using the document configuration
# @param [String] id document's unique key value
@@ -14,24 +15,15 @@
raise Blacklight::Exceptions::RecordNotFound if solr_response.documents.empty?
solr_response
end
- # Find multiple documents by their ids
- # @param [Hash] _params query parameters
- def find_many(params)
- search(params: params, path: blacklight_config.fetch_many_documents_path)
- end
-
##
# Execute a search query against solr
# @param [Hash] params solr query parameters
- # @param [String] path solr request handler path
- def search pos_params = {}, path: nil, params: nil, **kwargs
- request_params = (params || pos_params).reverse_merge(kwargs).reverse_merge({ qt: blacklight_config.qt })
-
- send_and_receive(path || default_search_path(request_params), request_params)
+ def search params = {}
+ send_and_receive blacklight_config.solr_path, params.reverse_merge(qt: blacklight_config.qt)
end
# @param [Hash] request_params
# @return [Blacklight::Suggest::Response]
def suggestions(request_params)
@@ -84,11 +76,11 @@
end
# @return [Hash]
# @!visibility private
def build_solr_request(solr_params)
- if uses_json_query_dsl?(solr_params)
+ if solr_params[:json].present?
{
data: { params: solr_params.to_hash.except(:json) }.merge(solr_params[:json]).to_json,
method: :post,
headers: { 'Content-Type' => 'application/json' }
}
@@ -127,20 +119,8 @@
if defined?(RSolr::Error::Timeout)
[RSolr::Error::Timeout]
else
[]
end
- end
-
- # @return [String]
- def default_search_path(solr_params)
- return blacklight_config.json_solr_path if blacklight_config.json_solr_path && uses_json_query_dsl?(solr_params)
-
- blacklight_config.solr_path
- end
-
- # @return [Boolean]
- def uses_json_query_dsl?(solr_params)
- solr_params[:json].present?
end
end
end