Package org.opencms.search
Interface I_CmsIndexer
-
- All Known Implementing Classes:
CmsDependencyIndexer
,CmsVfsIndexer
public interface I_CmsIndexer
Indexes resources for the OpenCms search.This is a high level interface that abstracts the index generation process from the search index itself. Implement this in case special handling of the index generation process is required.
- Since:
- 6.0.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
deleteResources(I_CmsIndexWriter indexWriter, java.util.List<CmsPublishedResource> resourcesToDelete)
Incremental index update - delete the index entry for all resources in the given list.CmsSearchIndexUpdateData
getUpdateData(CmsSearchIndexSource source, java.util.List<CmsPublishedResource> publishedResources)
Calculates the data for an incremental search index update.boolean
isLocaleDependenciesEnable()
Returnstrue
if this VFS indexer is able to resolve locale dependencies between documents.I_CmsIndexer
newInstance(CmsObject cms, I_CmsReport report, I_CmsSearchIndex index)
Creates and initializes a new instance of this indexer implementation.void
rebuildIndex(I_CmsIndexWriter writer, CmsIndexingThreadManager threadManager, CmsSearchIndexSource source)
Rebuilds the index for the given configured index source.void
updateResources(I_CmsIndexWriter writer, CmsIndexingThreadManager threadManager, java.util.List<CmsPublishedResource> resourcesToUpdate)
Incremental index update - create a new index entry for all resources in the given list.
-
-
-
Method Detail
-
deleteResources
void deleteResources(I_CmsIndexWriter indexWriter, java.util.List<CmsPublishedResource> resourcesToDelete) throws CmsIndexException
Incremental index update - delete the index entry for all resources in the given list.- Parameters:
indexWriter
- the writer to the index to delete the entries fromresourcesToDelete
- a list of
instances that must be deletedCmsPublishedResource
- Throws:
CmsIndexException
- if something goes wrong
-
getUpdateData
CmsSearchIndexUpdateData getUpdateData(CmsSearchIndexSource source, java.util.List<CmsPublishedResource> publishedResources) throws CmsIndexException
Calculates the data for an incremental search index update.- Parameters:
source
- the search index source to updatepublishedResources
- a list of
objects that are to be updatedCmsPublishedResource
- Returns:
- a container with the information about the resources to delete and / or update
- Throws:
CmsIndexException
- if something goes wrong
-
isLocaleDependenciesEnable
boolean isLocaleDependenciesEnable()
Returnstrue
if this VFS indexer is able to resolve locale dependencies between documents.- Returns:
true
if this VFS indexer is able to resolve locale dependencies between documents
-
newInstance
I_CmsIndexer newInstance(CmsObject cms, I_CmsReport report, I_CmsSearchIndex index)
Creates and initializes a new instance of this indexer implementation.- Parameters:
cms
- the OpenCms user context to use when reading resources from the VFS during indexingreport
- the report to write the indexing output toindex
- the search index to update- Returns:
- a new instance of this indexer implementation
-
rebuildIndex
void rebuildIndex(I_CmsIndexWriter writer, CmsIndexingThreadManager threadManager, CmsSearchIndexSource source) throws CmsIndexException
Rebuilds the index for the given configured index source.This is used when the index is fully rebuild, not for updating only some parts of an existing index.
- Parameters:
writer
- the index writer to write the update tosource
- the search index source to updatethreadManager
- the thread manager to use when extracting the document text- Throws:
CmsIndexException
- if something goes wrong
-
updateResources
void updateResources(I_CmsIndexWriter writer, CmsIndexingThreadManager threadManager, java.util.List<CmsPublishedResource> resourcesToUpdate) throws CmsIndexException
Incremental index update - create a new index entry for all resources in the given list.- Parameters:
writer
- the index writer to write the update toresourcesToUpdate
- a list of
instances that must be updatedCmsPublishedResource
threadManager
- the thread manager to use when extracting the document text- Throws:
CmsIndexException
- if something goes wrong
-
-