Class: Blacklight::FacetSearchService
- Inherits:
-
Object
- Object
- Blacklight::FacetSearchService
- Defined in:
- app/services/blacklight/facet_search_service.rb
Instance Attribute Summary collapse
-
#blacklight_config ⇒ Object
readonly
The blacklight_config + controller are accessed by the search_builder.
-
#context ⇒ Object
readonly
The blacklight_config + controller are accessed by the search_builder.
Instance Method Summary collapse
-
#facet_field_response(facet_field, extra_controller_params = {}) ⇒ Blacklight::Solr::Response
Get the solr response when retrieving only a single facet field.
- #facet_suggest_response(facet_field, facet_suggestion_query, extra_controller_params = {}) ⇒ Object
-
#initialize(config:, search_state:, search_builder_class: config.facet_search_builder_class, **context) ⇒ FacetSearchService
constructor
A new instance of FacetSearchService.
- #search_builder ⇒ Object
- #search_state_class ⇒ Object
Constructor Details
#initialize(config:, search_state:, search_builder_class: config.facet_search_builder_class, **context) ⇒ FacetSearchService
Returns a new instance of FacetSearchService.
6 7 8 9 10 11 12 |
# File 'app/services/blacklight/facet_search_service.rb', line 6 def initialize(config:, search_state:, search_builder_class: config.facet_search_builder_class, **context) @blacklight_config = config @search_state = search_state @user_params = @search_state.params @search_builder_class = search_builder_class @context = context end |
Instance Attribute Details
#blacklight_config ⇒ Object (readonly)
The blacklight_config + controller are accessed by the search_builder
15 16 17 |
# File 'app/services/blacklight/facet_search_service.rb', line 15 def blacklight_config @blacklight_config end |
#context ⇒ Object (readonly)
The blacklight_config + controller are accessed by the search_builder
15 16 17 |
# File 'app/services/blacklight/facet_search_service.rb', line 15 def context @context end |
Instance Method Details
#facet_field_response(facet_field, extra_controller_params = {}) ⇒ Blacklight::Solr::Response
Get the solr response when retrieving only a single facet field
28 29 30 31 |
# File 'app/services/blacklight/facet_search_service.rb', line 28 def facet_field_response(facet_field, extra_controller_params = {}) query = search_builder.with(search_state).facet(facet_field) repository.search(params: query.merge(extra_controller_params)) end |
#facet_suggest_response(facet_field, facet_suggestion_query, extra_controller_params = {}) ⇒ Object
33 34 35 36 |
# File 'app/services/blacklight/facet_search_service.rb', line 33 def facet_suggest_response(facet_field, facet_suggestion_query, extra_controller_params = {}) query = search_builder.with(search_state).facet(facet_field).facet_suggestion_query(facet_suggestion_query) repository.search(params: query.merge(extra_controller_params)) end |
#search_builder ⇒ Object
17 18 19 |
# File 'app/services/blacklight/facet_search_service.rb', line 17 def search_builder search_builder_class.new(self) end |
#search_state_class ⇒ Object
21 22 23 |
# File 'app/services/blacklight/facet_search_service.rb', line 21 def search_state_class @search_state.class end |