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 theResponseParserusing Solr'sQueryResponse. This creates theSearchResponsewith theDocumentObjectMappermapped results, requested page, response total, and raw query response. TheSolrResponseDecorators are executed to perform any other logic to populate result content and other response information.
-
-
Field Summary
Fields Modifier and Type Field Description protected static com.broadleafcommerce.search.core.service.SearchRequestPropertiesDEFAULT_PROPS
-
Constructor Summary
Constructors Constructor Description DefaultSolrResponseParser(DocumentObjectMapper documentObjectMapper, List<SolrResponseDecorator> solrResponseDecorators)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.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.SearchRequestPropertiesgetDefaultProps()protected DocumentObjectMappergetDocumentObjectMapper()protected List<SolrResponseDecorator>getSolrResponseDecorators()
-
-
-
Constructor Detail
-
DefaultSolrResponseParser
public DefaultSolrResponseParser(DocumentObjectMapper documentObjectMapper, List<SolrResponseDecorator> solrResponseDecorators)
-
-
Method Detail
-
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
protected DocumentObjectMapper getDocumentObjectMapper()
-
getSolrResponseDecorators
protected List<SolrResponseDecorator> getSolrResponseDecorators()
-
-