Class AbstractSnIndexerValueProvider<T extends ItemModel,D>
java.lang.Object
de.hybris.platform.searchservices.indexer.service.impl.AbstractSnIndexerValueProvider<T,D>
- Type Parameters:
T- the type of the modelD- the type of the data
- All Implemented Interfaces:
SnIndexerValueProvider<T>
- Direct Known Subclasses:
AbstractProductSnIndexerValueProvider,AbstractProductSnIndexerValueProvider,CatalogVersionSnIndexerValueProvider,DataQualitySnIndexerValueProvider,ItemModelLabelSnIndexerValueProvider,ItemtypeLabelSnIndexerValueProvider,ModelAttributeSnIndexerValueProvider,ProductPickupAvailabilitySnIndexerValueProvider,ProductPriceSnIndexerValueProvider,ProductReviewAverageRatingSnIndexerValueProvider,ProductStockLevelSnIndexerValueProvider,ProductStockLevelStatusSnIndexerValueProvider,ProductUrlSnIndexerValueProvider
public abstract class AbstractSnIndexerValueProvider<T extends ItemModel,D>
extends Object
implements SnIndexerValueProvider<T>
Base class for value providers.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract ObjectgetFieldValue(SnIndexerContext indexerContext, SnIndexerFieldWrapper fieldWrapper, T source, D data) Returns the value for a given field and source model.protected DloadData(SnIndexerContext indexerContext, Collection<SnIndexerFieldWrapper> fieldWrappers, T source) Loads data for the given indexer context.protected ObjectprocessValue(SnIndexerContext indexerContext, SnIndexerFieldWrapper fieldWrapper, Object source) voidprovide(SnIndexerContext indexerContext, Collection<SnIndexerFieldWrapper> fieldWrappers, T source, SnDocument target) Populates the document with values to be indexed.voidsetValueProcessors(List<SnIndexerValueProcessor> valueProcessors) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.hybris.platform.searchservices.indexer.service.SnIndexerValueProvider
getSupportedQualifierClasses
-
Constructor Details
-
AbstractSnIndexerValueProvider
public AbstractSnIndexerValueProvider()
-
-
Method Details
-
provide
public void provide(SnIndexerContext indexerContext, Collection<SnIndexerFieldWrapper> fieldWrappers, T source, SnDocument target) throws SnIndexerException Description copied from interface:SnIndexerValueProviderPopulates the document with values to be indexed. The fields that use the same value resolver are grouped and this method is called once for each one of these groups.- Specified by:
providein interfaceSnIndexerValueProvider<T extends ItemModel>- Parameters:
indexerContext- - the indexer contextfieldWrappers- - the field wrapperssource- - the source modeltarget- - the target document- Throws:
SnIndexerException- if an error occurs
-
loadData
protected D loadData(SnIndexerContext indexerContext, Collection<SnIndexerFieldWrapper> fieldWrappers, T source) throws SnIndexerException Loads data for the given indexer context.- Parameters:
indexerContext- - the current indexer contextfieldWrappers- - the field wrapperssource- - the source model- Throws:
SnIndexerException- if an error occurs
-
getFieldValue
protected abstract Object getFieldValue(SnIndexerContext indexerContext, SnIndexerFieldWrapper fieldWrapper, T source, D data) throws SnIndexerException Returns the value for a given field and source model.- Parameters:
indexerContext- - the current indexer contextfieldWrapper- - the field wrappersource- - the source modeldata- - the data- Throws:
SnIndexerException- if an error occurs
-
processValue
protected Object processValue(SnIndexerContext indexerContext, SnIndexerFieldWrapper fieldWrapper, Object source) throws SnIndexerException - Throws:
SnIndexerException
-
getValueProcessors
-
setValueProcessors
-