Class: Blacklight::Solr::DefaultFilterQueryBuilder

Inherits:
AbstractFilterQueryBuilder show all
Defined in:
lib/blacklight/solr/default_filter_query_builder.rb

Instance Attribute Summary

Attributes inherited from AbstractFilterQueryBuilder

#blacklight_config

Instance Method Summary collapse

Methods inherited from AbstractFilterQueryBuilder

#initialize

Constructor Details

This class inherits a constructor from Blacklight::Solr::AbstractFilterQueryBuilder

Instance Method Details

#call(filter, _solr_parameters) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/blacklight/solr/default_filter_query_builder.rb', line 5

def call(filter, _solr_parameters)
  filter_queries = []
  all_subqueries = {}
  filter.values.compact_blank.each do |value|
    filter_query, subqueries = if value.is_a?(Array)
                                 facet_inclusive_value_to_fq_string(filter.key, value.compact_blank)
                               else
                                 facet_value_to_fq_string(filter.config.key, value)
                               end
    filter_queries << filter_query
    all_subqueries.merge!(subqueries) if subqueries
  end
  [filter_queries, all_subqueries]
end