class Celsius::Primo::SoapApi::Searcher::SearchBrief::SearchResultTransformation::SortFacetsBySearchRequest
Public Instance Methods
call()
click to toggle source
# File lib/celsius/primo/soap_api/searcher/search_brief/search_result_transformation/sort_facets_by_search_request.rb, line 7 def call if requested_facets_names = Celsius::Hash.deep_find_key(search_request, [:facets, :field]) original_target_facets = target["facets"] # ruby has a order-preserving hash, so sorting means recreating with the desired order target["facets"] = {}.tap do |target_facets| requested_facets_names.each do |facet_name| if original_target_facet_value = original_target_facets[facet_name] target_facets[facet_name] = original_target_facet_value end end end end end