Class BaseStructuredArticleComponentValueResolver
java.lang.Object
com.sap.retail.commercesuite.saparticlesearch.provider.BaseStructuredArticleComponentValueResolver
- All Implemented Interfaces:
de.hybris.platform.solrfacetsearch.provider.ValueResolver<ProductModel>
- Direct Known Subclasses:
StructuredArticleComponentKeywordsValueResolver,StructuredArticleComponentNamesValueResolver
public abstract class BaseStructuredArticleComponentValueResolver
extends Object
implements de.hybris.platform.solrfacetsearch.provider.ValueResolver<ProductModel>
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringOptional parameter.static final booleanOptional parameter default value.static final StringSeparator parameter.static final StringSeparator parameter default value.static final StringSplit parameter.static final booleanSplit parameter default value. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddFieldValues(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, IndexedProperty indexedProperty, ProductModel product, LanguageModel language) Adds the field value depending from the configuration (multivalue, localized).protected de.hybris.platform.servicelayer.i18n.CommonI18NServiceReturns theCommonI18NService.protected abstract ObjectgetComponentPropertyValue(ArticleComponentModel articleComponent, LanguageModel language) Gets the property value of the article component.getComponentPropertyValues(ProductModel product, LanguageModel language, String separator) Returns the values of the requested article component properties.protected StringgetComponentPropertyValuesAsString(ProductModel product, LanguageModel language, String separator) Returns the values of the requested article component properties as string.protected abstract org.apache.log4j.LoggerGets the logger of the current implementation class.voidresolve(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, de.hybris.platform.solrfacetsearch.indexer.IndexerBatchContext batchContext, Collection<IndexedProperty> indexedProperties, ProductModel model) voidsetCommonI18NService(de.hybris.platform.servicelayer.i18n.CommonI18NService commonI18NService) Injection setter forCommonI18NService.
-
Field Details
-
OPTIONAL_PARAM
Optional parameter.- See Also:
-
OPTIONAL_PARAM_DEFAULT_VALUE
public static final boolean OPTIONAL_PARAM_DEFAULT_VALUEOptional parameter default value.- See Also:
-
SPLIT_PARAM
Split parameter.- See Also:
-
SPLIT_PARAM_DEFAULT_VALUE
public static final boolean SPLIT_PARAM_DEFAULT_VALUESplit parameter default value.- See Also:
-
SEPARATOR_PARAM
Separator parameter.- See Also:
-
SEPARATOR_PARAM_DEFAULT_VALUE
Separator parameter default value.- See Also:
-
-
Constructor Details
-
BaseStructuredArticleComponentValueResolver
public BaseStructuredArticleComponentValueResolver()
-
-
Method Details
-
getCommonI18NService
protected de.hybris.platform.servicelayer.i18n.CommonI18NService getCommonI18NService()Returns theCommonI18NService.- Returns:
CommonI18NService
-
setCommonI18NService
public void setCommonI18NService(de.hybris.platform.servicelayer.i18n.CommonI18NService commonI18NService) Injection setter forCommonI18NService.- Parameters:
commonI18NService-CommonI18NService
-
resolve
public void resolve(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, de.hybris.platform.solrfacetsearch.indexer.IndexerBatchContext batchContext, Collection<IndexedProperty> indexedProperties, ProductModel model) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException - Specified by:
resolvein interfacede.hybris.platform.solrfacetsearch.provider.ValueResolver<ProductModel>- Throws:
de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException
-
addFieldValues
protected void addFieldValues(de.hybris.platform.solrfacetsearch.indexer.spi.InputDocument document, IndexedProperty indexedProperty, ProductModel product, LanguageModel language) throws de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException Adds the field value depending from the configuration (multivalue, localized).- Parameters:
document- solr document to be enhancedindexedProperty- indexed propertyproduct- product modellanguage- language- Throws:
de.hybris.platform.solrfacetsearch.config.exceptions.FieldValueProviderException- exception if field value cannot be provided
-
getComponentPropertyValuesAsString
protected String getComponentPropertyValuesAsString(ProductModel product, LanguageModel language, String separator) Returns the values of the requested article component properties as string.- Parameters:
product- product modellanguage- languageseparator- value separator- Returns:
- component property values as string
-
getComponentPropertyValues
protected List<Object> getComponentPropertyValues(ProductModel product, LanguageModel language, String separator) Returns the values of the requested article component properties.- Parameters:
product- product modellanguage- languageseparator- value separator- Returns:
- component property values as string
-
getComponentPropertyValue
protected abstract Object getComponentPropertyValue(ArticleComponentModel articleComponent, LanguageModel language) Gets the property value of the article component.- Parameters:
articleComponent- article component modellanguage- language model- Returns:
- property value
-
getLogger
protected abstract org.apache.log4j.Logger getLogger()Gets the logger of the current implementation class.- Returns:
- logger
-