Class DefaultSearchServicesProductSearchStrategy<ITEM>
java.lang.Object
de.hybris.platform.commerceservices.search.searchservices.impl.DefaultSearchServicesProductSearchStrategy<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>
public class DefaultSearchServicesProductSearchStrategy<ITEM>
extends Object
implements ProductSearchStrategy<SolrSearchQueryData,ITEM,ProductCategorySearchPageData<SolrSearchQueryData,ITEM,CategoryModel>,AutocompleteSuggestion>
Default implementation of the
ProductSearchStrategy for search services-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncategorySearch(String categoryCode, SearchQueryContext searchQueryContext, PageableData pageable) Initiate a new search in category in a search query context.categorySearch(String categoryCode, PageableData pageable) Initiate a new search in category.protected SolrSearchQueryDatacloneSearchQuery(SolrSearchQueryData source) protected SnSearchQueryconvertSearchQuery(String indexTypeId, SolrSearchQueryData searchQuery, PageableData pageable) convertSearchResult(SnSearchQuery snSearchQuery, SnSearchResponse snSearchResponse, SolrSearchQueryData searchQuery) protected List<AutocompleteSuggestion>convertSuggestResponse(SnSuggestResponse suggestResponse) protected AutocompleteSuggestionprotected SolrSearchQueryDataprotected SnSuggestQuerycreateSuggestQuery(String input) doSearch(SolrSearchQueryData searchQuery, PageableData pageable) protected StringgetAutocompleteSuggestions(String input) Get the auto complete suggestions for the input provided.protected BaseStoreModelgetBaseStore(String baseSiteId) getIndexTypes(String baseSiteId, String catalogId, String catalogVersion) Get the index types for baseSiteId, catalogId and catalogversionorg.springframework.core.convert.converter.Converter<SnSearchQueryConverterData,SnSearchQuery> org.springframework.core.convert.converter.Converter<SnSearchResultConverterData<SnSearchQuery,SnSearchResult>, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> searchAgain(SolrSearchQueryData searchQuery, PageableData pageable) Refine an exiting search.voidsetBaseSiteService(BaseSiteService baseSiteService) voidsetBaseStoreService(BaseStoreService baseStoreService) voidsetProductTypeSelectionStrategy(SnProductIndexTypeSelectionStrategy snProductIndexTypeSelectionStrategy) voidsetSearchQueryConverter(org.springframework.core.convert.converter.Converter<SnSearchQueryConverterData, SnSearchQuery> searchQueryConverter) voidsetSearchResultConverter(org.springframework.core.convert.converter.Converter<SnSearchResultConverterData<SnSearchQuery, SnSearchResult>, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> searchResultConverter) voidsetSessionService(SessionService sessionService) voidsetSnSearchService(SnSearchService snSearchService) voidsetSnSuggestService(SnSuggestService snSuggestService) textSearch(String text, SearchQueryContext searchQueryContext, PageableData pageable) Initiate a new search using simple free text query in a search query context.textSearch(String text, PageableData pageable) Initiate a new search using simple free text query.
-
Field Details
-
DEFAULT_TOP
protected static final int DEFAULT_TOP- See Also:
-
-
Constructor Details
-
DefaultSearchServicesProductSearchStrategy
public DefaultSearchServicesProductSearchStrategy()
-
-
Method Details
-
textSearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, textSearchCategoryModel> (String text, PageableData pageable) 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 textpageable- 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 pageable) 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 contextpageable- the page to return, can be null to use defaults- Returns:
- the search results
-
categorySearch
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, categorySearchCategoryModel> (String categoryCode, PageableData pageable) 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 inpageable- 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 pageable) 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 contextpageable- the page to return, can be null to use defaults- Returns:
- the search results
-
searchAgain
public ProductCategorySearchPageData<SolrSearchQueryData,ITEM, searchAgainCategoryModel> (SolrSearchQueryData searchQuery, PageableData pageable) 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:
searchQuery- the search query objectpageable- 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
-
getBaseStore
-
createSuggestQuery
-
convertSuggestResponse
-
createAutocompleteSuggestion
-
doSearch
protected ProductCategorySearchPageData<SolrSearchQueryData,ITEM, doSearchCategoryModel> (SolrSearchQueryData searchQuery, PageableData pageable) -
createEmptyProductCategorySearchPageData
protected ProductCategorySearchPageData<SolrSearchQueryData,ITEM, createEmptyProductCategorySearchPageDataCategoryModel> (SolrSearchQueryData searchQuery) -
cloneSearchQuery
-
findIndexTypeId
- Throws:
SnException
-
convertSearchQuery
protected SnSearchQuery convertSearchQuery(String indexTypeId, SolrSearchQueryData searchQuery, PageableData pageable) -
convertSearchResult
protected ProductCategorySearchPageData<SolrSearchQueryData,ITEM, convertSearchResultCategoryModel> (SnSearchQuery snSearchQuery, SnSearchResponse snSearchResponse, SolrSearchQueryData searchQuery) -
createSearchQuery
-
getSnSearchService
-
setSnSearchService
-
getProductTypeSelectionStrategy
-
setProductTypeSelectionStrategy
public void setProductTypeSelectionStrategy(SnProductIndexTypeSelectionStrategy snProductIndexTypeSelectionStrategy) -
getSnSuggestService
-
setSnSuggestService
-
getSessionService
-
setSessionService
-
getBaseSiteService
-
setBaseSiteService
-
getBaseStoreService
-
setBaseStoreService
-
getSearchQueryConverter
public org.springframework.core.convert.converter.Converter<SnSearchQueryConverterData,SnSearchQuery> getSearchQueryConverter() -
setSearchQueryConverter
public void setSearchQueryConverter(org.springframework.core.convert.converter.Converter<SnSearchQueryConverterData, SnSearchQuery> searchQueryConverter) -
getSearchResultConverter
public org.springframework.core.convert.converter.Converter<SnSearchResultConverterData<SnSearchQuery,SnSearchResult>, getSearchResultConverter()ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> -
setSearchResultConverter
public void setSearchResultConverter(org.springframework.core.convert.converter.Converter<SnSearchResultConverterData<SnSearchQuery, SnSearchResult>, ProductCategorySearchPageData<SolrSearchQueryData, ITEM, CategoryModel>> searchResultConverter)
-