public class ADMLuceneIndexerImpl extends AbstractLuceneIndexerImpl implements ADMLuceneIndexer
AbstractLuceneIndexerImpl.Action, AbstractLuceneIndexerImpl.Command, AbstractLuceneIndexerImpl.FTSStatus, AbstractLuceneIndexerImpl.IndexUpdateStatus
bulkLoader, commandList, containerDeletions, deletions, docs, indexUpdateStatus, maxAtomicTransformationTime, NOT_INDEXED_CONTENT_MISSING, NOT_INDEXED_NO_TRANSFORMATION, NOT_INDEXED_NO_TYPE_CONVERSION, NOT_INDEXED_TRANSFORMATION_FAILED, transactionService
deltaId, store
Modifier and Type | Method and Description |
---|---|
void |
createChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef)
Create a refernce link between a parent and child.
|
java.util.List |
createDocuments(java.lang.String stringNodeRef,
AbstractLuceneIndexerImpl.FTSStatus ftsStatus,
boolean indexAllProperties,
boolean includeDirectoryDocuments,
boolean cascade,
java.util.Set pathsToRegenerate,
java.util.Map childAssociationsSinceFlush,
org.apache.lucene.index.IndexReader deltaReader,
org.apache.lucene.index.IndexReader mainReader) |
void |
createNode(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef)
Create an index entry when a new node is created.
|
void |
deleteChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef)
Delete a relationship between a parent and child.
|
protected java.util.Set |
deleteImpl(java.lang.String nodeRef,
org.apache.lucene.index.IndexReader deltaReader,
org.apache.lucene.index.IndexReader mainReader) |
void |
deleteIndex(org.alfresco.service.cmr.repository.StoreRef storeRef)
Delete the index for a store
|
protected boolean |
deleteLeafOnly(java.lang.String nodeRef,
org.apache.lucene.index.IndexReader reader,
boolean delete) |
void |
deleteNode(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef)
Delete a node entry from an index.
|
void |
detectNodeChanges(org.alfresco.service.cmr.repository.NodeRef nodeRef,
org.alfresco.service.cmr.search.SearchService searcher,
java.util.Collection addedParents,
java.util.Collection deletedParents,
java.util.Collection createdNodes,
java.util.Collection updatedNodes)
Does a database vs index comparison for the given created/updated/renamed/referenced nodeRef in order to
determine the set of indexing operations required
|
protected void |
doCommit() |
protected void |
doPrepare() |
protected void |
doRollBack() |
protected void |
doSetRollbackOnly() |
void |
flushPending() |
boolean |
getDeleteOnlyNodes()
Are we deleting leaves only (not meta data)
|
static ADMLuceneNoActionIndexerImpl |
getNoActionIndexer(org.alfresco.service.cmr.repository.StoreRef storeRef,
java.lang.String deltaId,
LuceneConfig config) |
static ADMLuceneIndexerImpl |
getUpdateIndexer(org.alfresco.service.cmr.repository.StoreRef storeRef,
java.lang.String deltaId,
LuceneConfig config)
Generate an indexer
|
protected boolean |
indexProperty(org.alfresco.service.cmr.repository.NodeRef nodeRef,
org.alfresco.service.namespace.QName propertyName,
java.io.Serializable value,
org.apache.lucene.document.Document doc,
boolean indexAtomicPropertiesOnly,
boolean isContentIndexedForNode) |
protected java.util.List |
readDocuments(java.lang.String stringNodeRef,
AbstractLuceneIndexerImpl.FTSStatus ftsStatus,
boolean indexAllProperties,
boolean includeDirectoryDocuments,
boolean cascade,
java.util.Set pathsToRegenerate,
java.util.Map childAssociationsSinceFlush,
org.apache.lucene.index.IndexReader deltaReader,
org.apache.lucene.index.IndexReader mainReader) |
void |
registerCallBack(FTSIndexerAware callBack)
Register call back handler when the indexing chunk is done
|
void |
setContentService(ContentService contentService)
IOC setting of the content service
|
void |
setFullTextSearchIndexer(FullTextSearchIndexer fullTextSearchIndexer)
Set the back ground indexer manager
|
void |
setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
IOC setting of the node service
|
void |
setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
IOC setting of the tenant service
|
void |
setTransformerDebug(TransformerDebug transformerDebug)
Helper setter of the transformer debug.
|
void |
updateChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipBeforeRef,
org.alfresco.service.cmr.repository.ChildAssociationRef relationshipAfterRef)
Alter the relationship between parent and child nodes in the index.
|
int |
updateFullTextSearch(int size)
Peform a chunk of background FTS (and other non atomic property) indexing
|
void |
updateNode(org.alfresco.service.cmr.repository.NodeRef nodeRef)
Update an index entry due to property changes on a node.
|
checkAbleToDoWork, commit, delete, deleteContainerAndBelow, deletePrimary, deleteReference, doInReadthroughTransaction, getContainerDeletions, getDeletions, index, isModified, locateContainer, prepare, reindex, rollback, setBulkLoader, setMaxAtomicTransformationTime, setReadThrough, setRollbackOnly, setTransactionService
closeDeltaReader, closeDeltaWriter, deleteIndex, doReadOnly, getDeltaId, getDeltaReader, getDeltaWriter, getDictionaryService, getLuceneConfig, getReader, getSearcher, getSearcher, getStatus, initialise, saveDelta, setDictionaryService, setInfo, setLuceneConfig, setStatus
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
doReadOnly, getContainerDeletions, getDeletions, getDeltaId
setReadThrough
commit, isModified, prepare, rollback
public void setNodeService(org.alfresco.service.cmr.repository.NodeService nodeService)
nodeService
- public void setTenantService(org.alfresco.repo.tenant.TenantService tenantService)
tenantService
- public void setContentService(ContentService contentService)
contentService
- public void setTransformerDebug(TransformerDebug transformerDebug)
transformerDebug
- public void createNode(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef) throws LuceneIndexException
Indexer
createNode
in interface Indexer
LuceneIndexException
public void updateNode(org.alfresco.service.cmr.repository.NodeRef nodeRef) throws LuceneIndexException
Indexer
updateNode
in interface Indexer
LuceneIndexException
public void deleteNode(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef) throws LuceneIndexException
Indexer
deleteNode
in interface Indexer
LuceneIndexException
public void createChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef) throws LuceneIndexException
Indexer
createChildRelationship
in interface Indexer
LuceneIndexException
public void updateChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipBeforeRef, org.alfresco.service.cmr.repository.ChildAssociationRef relationshipAfterRef) throws LuceneIndexException
Indexer
updateChildRelationship
in interface Indexer
LuceneIndexException
public void deleteChildRelationship(org.alfresco.service.cmr.repository.ChildAssociationRef relationshipRef) throws LuceneIndexException
Indexer
deleteChildRelationship
in interface Indexer
LuceneIndexException
public boolean getDeleteOnlyNodes()
getDeleteOnlyNodes
in interface LuceneIndexer
public static ADMLuceneIndexerImpl getUpdateIndexer(org.alfresco.service.cmr.repository.StoreRef storeRef, java.lang.String deltaId, LuceneConfig config) throws LuceneIndexException
storeRef
- deltaId
- config
- LuceneIndexException
public static ADMLuceneNoActionIndexerImpl getNoActionIndexer(org.alfresco.service.cmr.repository.StoreRef storeRef, java.lang.String deltaId, LuceneConfig config) throws LuceneIndexException
LuceneIndexException
protected boolean deleteLeafOnly(java.lang.String nodeRef, org.apache.lucene.index.IndexReader reader, boolean delete) throws LuceneIndexException
LuceneIndexException
protected java.util.Set deleteImpl(java.lang.String nodeRef, org.apache.lucene.index.IndexReader deltaReader, org.apache.lucene.index.IndexReader mainReader) throws LuceneIndexException, java.io.IOException
LuceneIndexException
java.io.IOException
public java.util.List createDocuments(java.lang.String stringNodeRef, AbstractLuceneIndexerImpl.FTSStatus ftsStatus, boolean indexAllProperties, boolean includeDirectoryDocuments, boolean cascade, java.util.Set pathsToRegenerate, java.util.Map childAssociationsSinceFlush, org.apache.lucene.index.IndexReader deltaReader, org.apache.lucene.index.IndexReader mainReader)
public void detectNodeChanges(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.cmr.search.SearchService searcher, java.util.Collection addedParents, java.util.Collection deletedParents, java.util.Collection createdNodes, java.util.Collection updatedNodes) throws LuceneIndexException
Indexer
detectNodeChanges
in interface Indexer
nodeRef
- the nodeRef to processsearcher
- searcher to query the indexesaddedParents
- set to add new secondary parent associations todeletedParents
- set to add removed secondary parent associations tocreatedNodes
- set to add created nodes toupdatedNodes
- set to add updated nodes toLuceneIndexException
public void flushPending() throws LuceneIndexException
flushPending
in interface Indexer
LuceneIndexException
protected boolean indexProperty(org.alfresco.service.cmr.repository.NodeRef nodeRef, org.alfresco.service.namespace.QName propertyName, java.io.Serializable value, org.apache.lucene.document.Document doc, boolean indexAtomicPropertiesOnly, boolean isContentIndexedForNode)
indexAtomicPropertiesOnly
- true to ignore all properties that must be indexed non-atomicallypublic int updateFullTextSearch(int size) throws LuceneIndexException
BackgroundIndexerAware
updateFullTextSearch
in interface BackgroundIndexerAware
LuceneIndexException
protected java.util.List readDocuments(java.lang.String stringNodeRef, AbstractLuceneIndexerImpl.FTSStatus ftsStatus, boolean indexAllProperties, boolean includeDirectoryDocuments, boolean cascade, java.util.Set pathsToRegenerate, java.util.Map childAssociationsSinceFlush, org.apache.lucene.index.IndexReader deltaReader, org.apache.lucene.index.IndexReader mainReader)
public void registerCallBack(FTSIndexerAware callBack)
BackgroundIndexerAware
registerCallBack
in interface BackgroundIndexerAware
public void setFullTextSearchIndexer(FullTextSearchIndexer fullTextSearchIndexer)
SupportsBackgroundIndexing
setFullTextSearchIndexer
in interface SupportsBackgroundIndexing
protected void doPrepare() throws java.io.IOException
doPrepare
in class AbstractLuceneIndexerImpl
java.io.IOException
protected void doCommit() throws java.io.IOException
doCommit
in class AbstractLuceneIndexerImpl
java.io.IOException
protected void doRollBack() throws java.io.IOException
doRollBack
in class AbstractLuceneIndexerImpl
java.io.IOException
protected void doSetRollbackOnly() throws java.io.IOException
doSetRollbackOnly
in class AbstractLuceneIndexerImpl
java.io.IOException
public void deleteIndex(org.alfresco.service.cmr.repository.StoreRef storeRef)
Indexer
deleteIndex
in interface Indexer
Copyright © 2005 - 2010 Alfresco Software, Inc. All Rights Reserved.