Class DefaultSolrFacetSearchProductSearchStrategy<ITEM>
java.lang.Object
de.hybris.platform.commerceservices.search.solrfacetsearch.impl.DefaultSolrFacetSearchProductSearchStrategy<ITEM>
- Type Parameters:
ITEM- the type of items returned as part of the search results
- All Implemented Interfaces:
ProductSearchStrategy<SolrSearchQueryData,,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> SolrFacetSearchProductSearchStrategy<ITEM>
public class DefaultSolrFacetSearchProductSearchStrategy<ITEM>
extends Object
implements SolrFacetSearchProductSearchStrategy<ITEM>
Default implementation of the
SolrFacetSearchProductSearchStrategy-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected SearchQueryPageableData<SolrSearchQueryData>buildSearchQueryPageableData(SolrSearchQueryData searchQueryData, PageableData pageableData) protected List<AutocompleteSuggestion>buildSuggestions(String precedingTerms, Collection<String> suggestions) categorySearch(String categoryCode, SearchQueryContext searchQueryContext, PageableData pageableData) Initiate a new search in category in a search query context.categorySearch(String categoryCode, PageableData pageableData) Initiate a new search in category.protected SolrSearchQueryDataprotected SearchQueryPageableData<SolrSearchQueryData>doSearch(SolrSearchQueryData searchQueryData, PageableData pageableData) protected List<AutocompleteSuggestion>findBestSuggestionsForLegacySuggester(SolrSuggestion solrSuggestion, String input) protected List<AutocompleteSuggestion>findBestSuggestionsForNewSuggester(SolrSuggestion solrSuggestion) protected SolrIndexedTypeModelfindIndexedTypeModel(SolrFacetSearchConfigModel facetSearchConfigModel, IndexedType indexedType) getAutocompleteSuggestions(String input) Get the auto complete suggestions for the input provided.protected CommonI18NServiceprotected FacetSearchConfigServiceprotected IndexedTypegetIndexedType(FacetSearchConfig config) getIndexTypes(String baseSiteId, String catalogId, String catalogVersion) Get the index types for baseSiteId, catalogId and catalogversionprotected org.springframework.core.convert.converter.Converter<SearchQueryPageableData<SolrSearchQueryData>,SolrSearchRequest> protected org.springframework.core.convert.converter.Converter<SolrSearchRequest,SolrSearchResponse> protected org.springframework.core.convert.converter.Converter<SolrSearchResponse,ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> protected SolrAutoSuggestServiceprotected SolrFacetSearchConfigModelgetSolrConfig(String baseSiteId) protected SolrFacetSearchConfigSelectionStrategyprotected SolrIndexedTypeCodeResolverprotected booleanisLegacySuggesterSuggestions(SolrSuggestion solrSuggestion) searchAgain(SolrSearchQueryData searchQueryData, PageableData pageableData) Refine an exiting search.voidsetBaseSiteService(BaseSiteService baseSiteService) voidsetBaseStoreService(BaseStoreService baseStoreService) voidsetCommonI18NService(CommonI18NService commonI18NService) voidsetFacetSearchConfigService(FacetSearchConfigService facetSearchConfigService) voidsetSearchQueryPageableConverter(org.springframework.core.convert.converter.Converter<SearchQueryPageableData<SolrSearchQueryData>, SolrSearchRequest> searchQueryPageableConverter) voidsetSearchRequestConverter(org.springframework.core.convert.converter.Converter<SolrSearchRequest, SolrSearchResponse> searchRequestConverter) voidsetSearchResponseConverter(org.springframework.core.convert.converter.Converter<SolrSearchResponse, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> searchResponseConverter) voidsetSessionService(SessionService sessionService) voidsetSolrAutoSuggestService(SolrAutoSuggestService solrAutoSuggestService) voidsetSolrFacetSearchConfigSelectionStrategy(SolrFacetSearchConfigSelectionStrategy solrFacetSearchConfigSelectionStrategy) voidsetSolrIndexedTypeCodeResolver(SolrIndexedTypeCodeResolver solrIndexedTypeCodeResolver) textSearch(String text, SearchQueryContext searchQueryContext, PageableData pageableData) Initiate a new search using simple free text query in a search query context.textSearch(String text, PageableData pageableData) Initiate a new search using simple free text query.
-
Constructor Details
-
DefaultSolrFacetSearchProductSearchStrategy
public DefaultSolrFacetSearchProductSearchStrategy()
-
-
Method Details
-
textSearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, textSearchCategoryModel> (String text, PageableData pageableData) Description copied from interface:ProductSearchStrategyInitiate a new search using simple free text query.- Specified by:
textSearchin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
text- the search textpageableData- the page to return, can be null to use defaults- Returns:
- the search results
-
textSearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, textSearchCategoryModel> (String text, SearchQueryContext searchQueryContext, PageableData pageableData) Description copied from interface:ProductSearchStrategyInitiate a new search using simple free text query in a search query context.- Specified by:
textSearchin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
text- the search textsearchQueryContext- search query contextpageableData- the page to return, can be null to use defaults- Returns:
- the search results
-
categorySearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, categorySearchCategoryModel> (String categoryCode, PageableData pageableData) Description copied from interface:ProductSearchStrategyInitiate a new search in category.- Specified by:
categorySearchin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
categoryCode- the code for category to search inpageableData- the page to return, can be null to use defaults- Returns:
- the search results
-
categorySearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, categorySearchCategoryModel> (String categoryCode, SearchQueryContext searchQueryContext, PageableData pageableData) Description copied from interface:ProductSearchStrategyInitiate a new search in category in a search query context.- Specified by:
categorySearchin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
categoryCode- the code for category to search insearchQueryContext- search query contextpageableData- the page to return, can be null to use defaults- Returns:
- the search results
-
searchAgain
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, searchAgainCategoryModel> (SolrSearchQueryData searchQueryData, PageableData pageableData) Description copied from interface:ProductSearchStrategyRefine an exiting search. The query object allows more complex queries using facet selection. The SearchQueryData must have been obtained from the results of a call to eitherProductSearchStrategy.textSearch(String, PageableData)orProductSearchStrategy.categorySearch(String, PageableData).- Specified by:
searchAgainin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
searchQueryData- the search query objectpageableData- the page to return- Returns:
- the search results
-
getAutocompleteSuggestions
Description copied from interface:ProductSearchStrategyGet the auto complete suggestions for the input provided.- Specified by:
getAutocompleteSuggestionsin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
input- the user's input on which the autocomplete is based- Returns:
- a list of suggested search terms
-
getIndexTypes
Description copied from interface:ProductSearchStrategyGet the index types for baseSiteId, catalogId and catalogversion- Specified by:
getIndexTypesin interfaceProductSearchStrategy<SolrSearchQueryData,ITEM, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>, AutocompleteSuggestion> - Parameters:
baseSiteId- the base site identifiercatalogId- the catalog identifiercatalogVersion- the catalog version- Returns:
- a list of suggested search terms
-
getSolrConfig
-
getIndexedType
-
findIndexedTypeModel
protected SolrIndexedTypeModel findIndexedTypeModel(SolrFacetSearchConfigModel facetSearchConfigModel, IndexedType indexedType) throws IndexerException - Throws:
IndexerException
-
isLegacySuggesterSuggestions
-
findBestSuggestionsForLegacySuggester
protected List<AutocompleteSuggestion> findBestSuggestionsForLegacySuggester(SolrSuggestion solrSuggestion, String input) -
findBestSuggestionsForNewSuggester
protected List<AutocompleteSuggestion> findBestSuggestionsForNewSuggester(SolrSuggestion solrSuggestion) -
buildSuggestions
protected List<AutocompleteSuggestion> buildSuggestions(String precedingTerms, Collection<String> suggestions) -
doSearch
protected ProductCategorySearchPageData<SolrSearchQueryData,ITEM, doSearchCategoryModel> (SolrSearchQueryData searchQueryData, PageableData pageableData) -
buildSearchQueryPageableData
protected SearchQueryPageableData<SolrSearchQueryData> buildSearchQueryPageableData(SolrSearchQueryData searchQueryData, PageableData pageableData) -
createSearchQueryPageableData
-
createSearchQueryData
-
getSolrFacetSearchConfigSelectionStrategy
-
setSolrFacetSearchConfigSelectionStrategy
public void setSolrFacetSearchConfigSelectionStrategy(SolrFacetSearchConfigSelectionStrategy solrFacetSearchConfigSelectionStrategy) -
getBaseSiteService
-
setBaseSiteService
-
getBaseStoreService
-
setBaseStoreService
-
getSessionService
-
setSessionService
-
getSearchQueryPageableConverter
protected org.springframework.core.convert.converter.Converter<SearchQueryPageableData<SolrSearchQueryData>,SolrSearchRequest> getSearchQueryPageableConverter() -
setSearchQueryPageableConverter
public void setSearchQueryPageableConverter(org.springframework.core.convert.converter.Converter<SearchQueryPageableData<SolrSearchQueryData>, SolrSearchRequest> searchQueryPageableConverter) -
getSearchRequestConverter
protected org.springframework.core.convert.converter.Converter<SolrSearchRequest,SolrSearchResponse> getSearchRequestConverter() -
setSearchRequestConverter
public void setSearchRequestConverter(org.springframework.core.convert.converter.Converter<SolrSearchRequest, SolrSearchResponse> searchRequestConverter) -
getSearchResponseConverter
protected org.springframework.core.convert.converter.Converter<SolrSearchResponse,ProductCategorySearchPageData<SolrSearchQueryData, getSearchResponseConverter()ITEM, CategoryModel>> -
setSearchResponseConverter
public void setSearchResponseConverter(org.springframework.core.convert.converter.Converter<SolrSearchResponse, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> searchResponseConverter) -
getFacetSearchConfigService
-
setFacetSearchConfigService
-
getCommonI18NService
-
setCommonI18NService
-
getSolrAutoSuggestService
-
setSolrAutoSuggestService
-
getSolrIndexedTypeCodeResolver
-
setSolrIndexedTypeCodeResolver
-