Class AbstractIndexerStrategy
- java.lang.Object
-
- de.hybris.platform.solrfacetsearch.indexer.strategies.impl.AbstractIndexerStrategy
-
- All Implemented Interfaces:
IndexerStrategy
- Direct Known Subclasses:
DefaultIndexerStrategy,DistributedIndexerStrategy
public abstract class AbstractIndexerStrategy extends java.lang.Object implements IndexerStrategy
Base implementation for indexer strategies.
-
-
Constructor Summary
Constructors Constructor Description AbstractIndexerStrategy()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected FlexibleSearchQuerySpeccreateIndexerQuery()protected voidcreateLocalSessionContext()protected abstract voiddoExecute(IndexerContext indexerContext)protected voiddoExecute(Index resolvedIndex, long indexOperationId, boolean isExternalIndexOperation)voidexecute()Executes the strategy.protected java.util.List<PK>executeIndexerQuery(FacetSearchConfig facetSearchConfig, IndexedType indexedType, java.lang.String query, java.util.Map<java.lang.String,java.lang.Object> queryParameters)CommonI18NServicegetCommonI18NService()FacetSearchConfiggetFacetSearchConfig()FlexibleSearchQuerySpecFactorygetFlexibleSearchQuerySpecFactory()IndexgetIndex()java.util.Collection<IndexedProperty>getIndexedProperties()IndexedTypegetIndexedType()IndexerContextFactorygetIndexerContextFactory()java.util.Map<java.lang.String,java.lang.String>getIndexerHints()IndexerQueriesExecutorgetIndexerQueriesExecutor()IndexOperationgetIndexOperation()IndexOperationIdGeneratorgetIndexOperationIdGenerator()java.util.List<PK>getPks()SessionServicegetSessionService()SolrIndexServicegetSolrIndexService()SolrSearchProviderFactorygetSolrSearchProviderFactory()TenantServicegetTenantService()UserServicegetUserService()protected voidlogStrategyError(org.springframework.util.StopWatch operationTimer)protected voidlogStrategyStart()protected voidlogStrategySuccess(org.springframework.util.StopWatch operationTimer)protected RevertibleUpdateregisterOrUpdateNonSuspendableThread()protected voidremoveLocalSessionContext()protected IndexresolveIndex()protected java.util.Collection<IndexedProperty>resolveIndexedProperties()protected java.util.Map<java.lang.String,java.lang.String>resolveIndexerHints()protected java.util.List<PK>resolvePks()protected CurrencyModelresolveSessionCurrency()protected LanguageModelresolveSessionLanguage()protected UserModelresolveSessionUser()protected java.lang.StringresolveTenantId()protected voidrevertOperationInfo(RevertibleUpdate revertibleInfo)voidsetCommonI18NService(CommonI18NService commonI18NService)voidsetFacetSearchConfig(FacetSearchConfig facetSearchConfig)Sets the facet search configuration to be used.voidsetFlexibleSearchQuerySpecFactory(FlexibleSearchQuerySpecFactory flexibleSearchQuerySpecFactory)voidsetIndex(Index index)Sets the index to be used.voidsetIndexedProperties(java.util.Collection<IndexedProperty> indexedProperties)Sets the index operation to be used.voidsetIndexedType(IndexedType indexedType)Sets the indexed type to be used.voidsetIndexerContextFactory(IndexerContextFactory<?> indexerContextFactory)voidsetIndexerHints(java.util.Map<java.lang.String,java.lang.String> indexerHints)Sets the indexer hints to be used.voidsetIndexerQueriesExecutor(IndexerQueriesExecutor indexerQueriesExecutor)voidsetIndexOperation(IndexOperation indexOperation)Sets the index operation to be used.voidsetIndexOperationIdGenerator(IndexOperationIdGenerator indexOperationIdGenerator)voidsetPks(java.util.List<PK> pks)Sets the pks of the items to be indexed.voidsetSessionService(SessionService sessionService)voidsetSolrIndexService(SolrIndexService solrIndexService)voidsetSolrSearchProviderFactory(SolrSearchProviderFactory solrSearchProviderFactory)voidsetTenantService(TenantService tenantService)voidsetUserService(UserService userService)protected voidvalidateRequiredFields()
-
-
-
Method Detail
-
execute
public void execute() throws IndexerExceptionDescription copied from interface:IndexerStrategyExecutes the strategy.- Specified by:
executein interfaceIndexerStrategy- Throws:
IndexerException- if an error occurs during the strategy execution
-
doExecute
protected void doExecute(Index resolvedIndex, long indexOperationId, boolean isExternalIndexOperation) throws IndexerException
- Throws:
IndexerException
-
doExecute
protected abstract void doExecute(IndexerContext indexerContext) throws IndexerException
- Throws:
IndexerException
-
validateRequiredFields
protected void validateRequiredFields()
-
resolveIndex
protected Index resolveIndex() throws IndexerException
- Throws:
IndexerException
-
createIndexerQuery
protected FlexibleSearchQuerySpec createIndexerQuery() throws IndexerException
- Throws:
IndexerException
-
executeIndexerQuery
protected java.util.List<PK> executeIndexerQuery(FacetSearchConfig facetSearchConfig, IndexedType indexedType, java.lang.String query, java.util.Map<java.lang.String,java.lang.Object> queryParameters) throws IndexerException
- Throws:
IndexerException
-
createLocalSessionContext
protected void createLocalSessionContext()
-
removeLocalSessionContext
protected void removeLocalSessionContext()
-
registerOrUpdateNonSuspendableThread
protected RevertibleUpdate registerOrUpdateNonSuspendableThread()
-
revertOperationInfo
protected void revertOperationInfo(RevertibleUpdate revertibleInfo)
-
logStrategyStart
protected void logStrategyStart()
-
logStrategySuccess
protected void logStrategySuccess(org.springframework.util.StopWatch operationTimer)
-
logStrategyError
protected void logStrategyError(org.springframework.util.StopWatch operationTimer)
-
resolvePks
protected java.util.List<PK> resolvePks() throws IndexerException
- Throws:
IndexerException
-
resolveIndexedProperties
protected java.util.Collection<IndexedProperty> resolveIndexedProperties()
-
resolveIndexerHints
protected java.util.Map<java.lang.String,java.lang.String> resolveIndexerHints()
-
resolveTenantId
protected java.lang.String resolveTenantId()
-
resolveSessionUser
protected UserModel resolveSessionUser()
-
resolveSessionLanguage
protected LanguageModel resolveSessionLanguage()
-
resolveSessionCurrency
protected CurrencyModel resolveSessionCurrency()
-
getIndexOperation
public IndexOperation getIndexOperation()
-
setIndexOperation
public void setIndexOperation(IndexOperation indexOperation)
Description copied from interface:IndexerStrategySets the index operation to be used.- Specified by:
setIndexOperationin interfaceIndexerStrategy- Parameters:
indexOperation- - the index operation
-
getFacetSearchConfig
public FacetSearchConfig getFacetSearchConfig()
-
setFacetSearchConfig
public void setFacetSearchConfig(FacetSearchConfig facetSearchConfig)
Description copied from interface:IndexerStrategySets the facet search configuration to be used.- Specified by:
setFacetSearchConfigin interfaceIndexerStrategy- Parameters:
facetSearchConfig- - the index operation
-
getIndexedType
public IndexedType getIndexedType()
-
setIndexedType
public void setIndexedType(IndexedType indexedType)
Description copied from interface:IndexerStrategySets the indexed type to be used.- Specified by:
setIndexedTypein interfaceIndexerStrategy- Parameters:
indexedType- - the index operation
-
getIndexedProperties
public java.util.Collection<IndexedProperty> getIndexedProperties()
-
setIndexedProperties
public void setIndexedProperties(java.util.Collection<IndexedProperty> indexedProperties)
Description copied from interface:IndexerStrategySets the index operation to be used.- Specified by:
setIndexedPropertiesin interfaceIndexerStrategy- Parameters:
indexedProperties- - the indexed properties
-
getPks
public java.util.List<PK> getPks()
-
setPks
public void setPks(java.util.List<PK> pks)
Description copied from interface:IndexerStrategySets the pks of the items to be indexed.- Specified by:
setPksin interfaceIndexerStrategy- Parameters:
pks- - the pks of the items to be indexed
-
getIndex
public Index getIndex()
-
setIndex
public void setIndex(Index index)
Description copied from interface:IndexerStrategySets the index to be used.- Specified by:
setIndexin interfaceIndexerStrategy- Parameters:
index- - the index
-
getIndexerHints
public java.util.Map<java.lang.String,java.lang.String> getIndexerHints()
-
setIndexerHints
public void setIndexerHints(java.util.Map<java.lang.String,java.lang.String> indexerHints)
Description copied from interface:IndexerStrategySets the indexer hints to be used.- Specified by:
setIndexerHintsin interfaceIndexerStrategy- Parameters:
indexerHints- - the indexer hints to be used
-
getSessionService
public SessionService getSessionService()
-
setSessionService
public void setSessionService(SessionService sessionService)
-
getUserService
public UserService getUserService()
-
setUserService
public void setUserService(UserService userService)
-
getFlexibleSearchQuerySpecFactory
public FlexibleSearchQuerySpecFactory getFlexibleSearchQuerySpecFactory()
-
setFlexibleSearchQuerySpecFactory
public void setFlexibleSearchQuerySpecFactory(FlexibleSearchQuerySpecFactory flexibleSearchQuerySpecFactory)
-
getIndexerQueriesExecutor
public IndexerQueriesExecutor getIndexerQueriesExecutor()
-
setIndexerQueriesExecutor
public void setIndexerQueriesExecutor(IndexerQueriesExecutor indexerQueriesExecutor)
-
getIndexOperationIdGenerator
public IndexOperationIdGenerator getIndexOperationIdGenerator()
-
setIndexOperationIdGenerator
public void setIndexOperationIdGenerator(IndexOperationIdGenerator indexOperationIdGenerator)
-
getCommonI18NService
public CommonI18NService getCommonI18NService()
-
setCommonI18NService
public void setCommonI18NService(CommonI18NService commonI18NService)
-
getTenantService
public TenantService getTenantService()
-
setTenantService
public void setTenantService(TenantService tenantService)
-
getIndexerContextFactory
public IndexerContextFactory getIndexerContextFactory()
-
setIndexerContextFactory
public void setIndexerContextFactory(IndexerContextFactory<?> indexerContextFactory)
-
getSolrIndexService
public SolrIndexService getSolrIndexService()
-
setSolrIndexService
public void setSolrIndexService(SolrIndexService solrIndexService)
-
getSolrSearchProviderFactory
public SolrSearchProviderFactory getSolrSearchProviderFactory()
-
setSolrSearchProviderFactory
public void setSolrSearchProviderFactory(SolrSearchProviderFactory solrSearchProviderFactory)
-
-