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 FlexibleSearchQuerySpec
createIndexerQuery()
protected void
createLocalSessionContext()
protected abstract void
doExecute(IndexerContext indexerContext)
protected void
doExecute(Index resolvedIndex, long indexOperationId, boolean isExternalIndexOperation)
void
execute()
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)
CommonI18NService
getCommonI18NService()
FacetSearchConfig
getFacetSearchConfig()
FlexibleSearchQuerySpecFactory
getFlexibleSearchQuerySpecFactory()
Index
getIndex()
java.util.Collection<IndexedProperty>
getIndexedProperties()
IndexedType
getIndexedType()
IndexerContextFactory
getIndexerContextFactory()
java.util.Map<java.lang.String,java.lang.String>
getIndexerHints()
IndexerQueriesExecutor
getIndexerQueriesExecutor()
IndexOperation
getIndexOperation()
IndexOperationIdGenerator
getIndexOperationIdGenerator()
java.util.List<PK>
getPks()
SessionService
getSessionService()
SolrIndexService
getSolrIndexService()
SolrSearchProviderFactory
getSolrSearchProviderFactory()
TenantService
getTenantService()
UserService
getUserService()
protected void
logStrategyError(org.springframework.util.StopWatch operationTimer)
protected void
logStrategyStart()
protected void
logStrategySuccess(org.springframework.util.StopWatch operationTimer)
protected RevertibleUpdate
registerOrUpdateNonSuspendableThread()
protected void
removeLocalSessionContext()
protected Index
resolveIndex()
protected java.util.Collection<IndexedProperty>
resolveIndexedProperties()
protected java.util.Map<java.lang.String,java.lang.String>
resolveIndexerHints()
protected java.util.List<PK>
resolvePks()
protected CurrencyModel
resolveSessionCurrency()
protected LanguageModel
resolveSessionLanguage()
protected UserModel
resolveSessionUser()
protected java.lang.String
resolveTenantId()
protected void
revertOperationInfo(RevertibleUpdate revertibleInfo)
void
setCommonI18NService(CommonI18NService commonI18NService)
void
setFacetSearchConfig(FacetSearchConfig facetSearchConfig)
Sets the facet search configuration to be used.void
setFlexibleSearchQuerySpecFactory(FlexibleSearchQuerySpecFactory flexibleSearchQuerySpecFactory)
void
setIndex(Index index)
Sets the index to be used.void
setIndexedProperties(java.util.Collection<IndexedProperty> indexedProperties)
Sets the index operation to be used.void
setIndexedType(IndexedType indexedType)
Sets the indexed type to be used.void
setIndexerContextFactory(IndexerContextFactory<?> indexerContextFactory)
void
setIndexerHints(java.util.Map<java.lang.String,java.lang.String> indexerHints)
Sets the indexer hints to be used.void
setIndexerQueriesExecutor(IndexerQueriesExecutor indexerQueriesExecutor)
void
setIndexOperation(IndexOperation indexOperation)
Sets the index operation to be used.void
setIndexOperationIdGenerator(IndexOperationIdGenerator indexOperationIdGenerator)
void
setPks(java.util.List<PK> pks)
Sets the pks of the items to be indexed.void
setSessionService(SessionService sessionService)
void
setSolrIndexService(SolrIndexService solrIndexService)
void
setSolrSearchProviderFactory(SolrSearchProviderFactory solrSearchProviderFactory)
void
setTenantService(TenantService tenantService)
void
setUserService(UserService userService)
protected void
validateRequiredFields()
-
-
-
Method Detail
-
execute
public void execute() throws IndexerException
Description copied from interface:IndexerStrategy
Executes the strategy.- Specified by:
execute
in 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:IndexerStrategy
Sets the index operation to be used.- Specified by:
setIndexOperation
in interfaceIndexerStrategy
- Parameters:
indexOperation
- - the index operation
-
getFacetSearchConfig
public FacetSearchConfig getFacetSearchConfig()
-
setFacetSearchConfig
public void setFacetSearchConfig(FacetSearchConfig facetSearchConfig)
Description copied from interface:IndexerStrategy
Sets the facet search configuration to be used.- Specified by:
setFacetSearchConfig
in interfaceIndexerStrategy
- Parameters:
facetSearchConfig
- - the index operation
-
getIndexedType
public IndexedType getIndexedType()
-
setIndexedType
public void setIndexedType(IndexedType indexedType)
Description copied from interface:IndexerStrategy
Sets the indexed type to be used.- Specified by:
setIndexedType
in 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:IndexerStrategy
Sets the index operation to be used.- Specified by:
setIndexedProperties
in 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:IndexerStrategy
Sets the pks of the items to be indexed.- Specified by:
setPks
in 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:IndexerStrategy
Sets the index to be used.- Specified by:
setIndex
in 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:IndexerStrategy
Sets the indexer hints to be used.- Specified by:
setIndexerHints
in 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)
-
-