Class DefaultSolrResponseParser
java.lang.Object
com.broadleafcommerce.search.provider.solr.response.DefaultSolrResponseParser
- All Implemented Interfaces:
com.broadleafcommerce.search.core.service.ResponseParser<org.apache.solr.client.solrj.response.QueryResponse,com.broadleafcommerce.search.api.domain.SearchResponse>
public class DefaultSolrResponseParser
extends Object
implements com.broadleafcommerce.search.core.service.ResponseParser<org.apache.solr.client.solrj.response.QueryResponse,com.broadleafcommerce.search.api.domain.SearchResponse>
Default implementation of the
ResponseParser using Solr's QueryResponse. This
creates the SearchResponse with the DocumentObjectMapper mapped results,
requested page, response total, and raw query response. The SolrResponseDecorators are
executed to perform any other logic to populate result content and other response information.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final com.broadleafcommerce.search.core.service.SearchRequestProperties -
Constructor Summary
ConstructorsConstructorDescriptionDefaultSolrResponseParser(DocumentObjectMapper documentObjectMapper, List<SolrResponseDecorator> solrResponseDecorators) -
Method Summary
Modifier and TypeMethodDescriptioncom.broadleafcommerce.search.api.domain.SearchResponseconstructResponse(org.apache.solr.client.solrj.response.QueryResponse queryResponse, com.broadleafcommerce.search.api.domain.SearchRequest searchRequest, List<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitions, org.springframework.data.domain.Pageable page, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) com.broadleafcommerce.search.api.domain.SearchResponseconstructResponse(org.apache.solr.client.solrj.response.QueryResponse queryResponse, com.broadleafcommerce.search.api.domain.SearchRequest searchRequest, List<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitions, org.springframework.data.domain.Pageable page, com.broadleafcommerce.search.core.service.SearchRequestProperties properties, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Create the search response and populate it with the raw Solr response.protected com.broadleafcommerce.search.core.service.SearchRequestPropertiesprotected DocumentObjectMapperprotected List<SolrResponseDecorator>
-
Field Details
-
DEFAULT_PROPS
protected static final com.broadleafcommerce.search.core.service.SearchRequestProperties DEFAULT_PROPS
-
-
Constructor Details
-
DefaultSolrResponseParser
public DefaultSolrResponseParser(DocumentObjectMapper documentObjectMapper, List<SolrResponseDecorator> solrResponseDecorators)
-
-
Method Details
-
constructResponse
public com.broadleafcommerce.search.api.domain.SearchResponse constructResponse(org.apache.solr.client.solrj.response.QueryResponse queryResponse, com.broadleafcommerce.search.api.domain.SearchRequest searchRequest, List<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitions, org.springframework.data.domain.Pageable page, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) throws com.broadleafcommerce.search.api.SearchException - Specified by:
constructResponsein interfacecom.broadleafcommerce.search.core.service.ResponseParser<org.apache.solr.client.solrj.response.QueryResponse,com.broadleafcommerce.search.api.domain.SearchResponse> - Throws:
com.broadleafcommerce.search.api.SearchException
-
constructResponse
public com.broadleafcommerce.search.api.domain.SearchResponse constructResponse(org.apache.solr.client.solrj.response.QueryResponse queryResponse, com.broadleafcommerce.search.api.domain.SearchRequest searchRequest, List<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitions, org.springframework.data.domain.Pageable page, com.broadleafcommerce.search.core.service.SearchRequestProperties properties, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Create the search response and populate it with the raw Solr response.Delegates to the
DocumentObjectMapperto map Solr documents into response content.Executes all registered
SolrResponseDecoratorto populate extra response information.- Specified by:
constructResponsein interfacecom.broadleafcommerce.search.core.service.ResponseParser<org.apache.solr.client.solrj.response.QueryResponse,com.broadleafcommerce.search.api.domain.SearchResponse> - Parameters:
queryResponse- The query response from SolrsearchRequest- The original search request producing this responsefieldDefinitions- The field definitions used on the searchpage- The requested page for the searchproperties- additional properties for the search requestcontext- The context information surrounding sandboxing/multitenant state- Returns:
- SearchResponse representing search results
-
getDefaultProps
protected com.broadleafcommerce.search.core.service.SearchRequestProperties getDefaultProps() -
getDocumentObjectMapper
-
getSolrResponseDecorators
-