it.sistematica.isharedoc.service.search.engine.impl
Class IndexManagerImpl
java.lang.Object
it.sistematica.isharedoc.service.search.engine.impl.IndexManagerImpl
- All Implemented Interfaces:
- IndexManager
public class IndexManagerImpl
- extends java.lang.Object
- implements IndexManager
Constructor Summary |
IndexManagerImpl(java.lang.String name,
java.lang.String directoryName,
java.util.List<Indexer> indexers)
|
Method Summary |
void |
addIndexer(Indexer idx)
|
org.apache.lucene.document.Document |
findById(org.apache.lucene.search.IndexSearcher isearcher,
java.lang.String id)
|
org.apache.lucene.analysis.Analyzer |
getAnalyzer()
|
java.lang.String |
getContentDirectory(java.lang.String partition)
|
java.util.Date |
getFullReindexDate(java.lang.String partitionId)
|
org.apache.lucene.index.Term |
getIdTerm(org.apache.lucene.document.Document doc)
|
org.apache.lucene.index.Term |
getIdTerm(java.lang.Object obj)
|
org.apache.lucene.index.Term |
getIdTerm(java.lang.String value)
|
java.lang.String |
getIdValue(org.apache.lucene.document.Document doc)
|
java.lang.String |
getIdValue(java.lang.Object obj)
|
Indexer |
getIndexerForClass(java.lang.Class<?> clazz)
|
java.util.Collection<Indexer> |
getIndexers()
|
java.lang.String |
getName()
|
java.util.Date |
getPartialReindexDate(java.lang.String name,
java.lang.String partitionId)
|
java.lang.String |
getPartitionValue(org.apache.lucene.document.Document doc)
|
java.lang.String |
getPartitionValue(java.lang.Object obj)
|
org.apache.lucene.document.Document |
getServiceDoc(java.lang.String partitionId)
|
int |
getTotalDocs(java.lang.String partitionId)
|
org.apache.lucene.util.Version |
getVersion()
|
void |
indexDelete(java.lang.Object obj)
|
void |
indexDelete(java.lang.String partition,
java.lang.String id)
|
void |
indexSave(java.lang.Object obj)
|
void |
indexSave(java.lang.Object obj,
java.lang.Class<?> clazz)
|
boolean |
isReindexInProgress()
|
org.apache.lucene.store.Directory |
openDirectory(java.lang.String partition)
|
org.apache.lucene.index.DirectoryReader |
openReader(java.lang.String partition)
|
org.apache.lucene.search.IndexSearcher |
openSearcher(java.lang.String partition)
|
void |
rebuild(java.util.Collection<java.lang.Class<?>> classes,
Partition partition)
|
void |
runCrawler(java.lang.Class<?> clazz,
java.lang.String attributeName,
int howMany)
|
void |
search(SearchAction action,
java.lang.String partitionId)
|
java.util.Date |
searchModified(java.lang.Class<?> clazz,
java.lang.String dateProperty,
java.util.Date lastDate,
int howMany)
|
void |
setContentDirectory(java.lang.String directoryName)
|
void |
updateFullReindexDate(java.util.Date date,
java.lang.String partitionId)
|
void |
updatePartialReindexDate(java.lang.String name,
java.util.Date date,
java.lang.String partitionId)
|
void |
write(IndexManager.WriteAction action,
java.lang.String partition)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
IndexManagerImpl
public IndexManagerImpl(java.lang.String name,
java.lang.String directoryName,
java.util.List<Indexer> indexers)
getName
public java.lang.String getName()
- Specified by:
getName
in interface IndexManager
setContentDirectory
public void setContentDirectory(java.lang.String directoryName)
- Specified by:
setContentDirectory
in interface IndexManager
getVersion
public org.apache.lucene.util.Version getVersion()
- Specified by:
getVersion
in interface IndexManager
indexSave
public void indexSave(java.lang.Object obj)
- Specified by:
indexSave
in interface IndexManager
indexSave
public void indexSave(java.lang.Object obj,
java.lang.Class<?> clazz)
- Specified by:
indexSave
in interface IndexManager
indexDelete
public void indexDelete(java.lang.String partition,
java.lang.String id)
- Specified by:
indexDelete
in interface IndexManager
indexDelete
public void indexDelete(java.lang.Object obj)
- Specified by:
indexDelete
in interface IndexManager
isReindexInProgress
public boolean isReindexInProgress()
- Specified by:
isReindexInProgress
in interface IndexManager
rebuild
public void rebuild(java.util.Collection<java.lang.Class<?>> classes,
Partition partition)
- Specified by:
rebuild
in interface IndexManager
findById
public org.apache.lucene.document.Document findById(org.apache.lucene.search.IndexSearcher isearcher,
java.lang.String id)
- Specified by:
findById
in interface IndexManager
openSearcher
public org.apache.lucene.search.IndexSearcher openSearcher(java.lang.String partition)
openReader
public org.apache.lucene.index.DirectoryReader openReader(java.lang.String partition)
openDirectory
public org.apache.lucene.store.Directory openDirectory(java.lang.String partition)
getFullReindexDate
public java.util.Date getFullReindexDate(java.lang.String partitionId)
- Specified by:
getFullReindexDate
in interface IndexManager
updateFullReindexDate
public void updateFullReindexDate(java.util.Date date,
java.lang.String partitionId)
- Specified by:
updateFullReindexDate
in interface IndexManager
getPartialReindexDate
public java.util.Date getPartialReindexDate(java.lang.String name,
java.lang.String partitionId)
- Specified by:
getPartialReindexDate
in interface IndexManager
updatePartialReindexDate
public void updatePartialReindexDate(java.lang.String name,
java.util.Date date,
java.lang.String partitionId)
- Specified by:
updatePartialReindexDate
in interface IndexManager
getServiceDoc
public org.apache.lucene.document.Document getServiceDoc(java.lang.String partitionId)
- Specified by:
getServiceDoc
in interface IndexManager
getIdTerm
public org.apache.lucene.index.Term getIdTerm(java.lang.Object obj)
getIdTerm
public org.apache.lucene.index.Term getIdTerm(org.apache.lucene.document.Document doc)
getPartitionValue
public java.lang.String getPartitionValue(org.apache.lucene.document.Document doc)
getIdValue
public java.lang.String getIdValue(java.lang.Object obj)
getPartitionValue
public java.lang.String getPartitionValue(java.lang.Object obj)
getIdTerm
public org.apache.lucene.index.Term getIdTerm(java.lang.String value)
getIdValue
public java.lang.String getIdValue(org.apache.lucene.document.Document doc)
addIndexer
public void addIndexer(Indexer idx)
- Specified by:
addIndexer
in interface IndexManager
getIndexerForClass
public Indexer getIndexerForClass(java.lang.Class<?> clazz)
- Specified by:
getIndexerForClass
in interface IndexManager
getIndexers
public java.util.Collection<Indexer> getIndexers()
- Specified by:
getIndexers
in interface IndexManager
write
public void write(IndexManager.WriteAction action,
java.lang.String partition)
- Specified by:
write
in interface IndexManager
runCrawler
@Transactional
public void runCrawler(java.lang.Class<?> clazz,
java.lang.String attributeName,
int howMany)
- Specified by:
runCrawler
in interface IndexManager
searchModified
@Transactional
public java.util.Date searchModified(java.lang.Class<?> clazz,
java.lang.String dateProperty,
java.util.Date lastDate,
int howMany)
- Specified by:
searchModified
in interface IndexManager
getAnalyzer
public org.apache.lucene.analysis.Analyzer getAnalyzer()
- Specified by:
getAnalyzer
in interface IndexManager
getContentDirectory
public java.lang.String getContentDirectory(java.lang.String partition)
- Specified by:
getContentDirectory
in interface IndexManager
search
public void search(SearchAction action,
java.lang.String partitionId)
- Specified by:
search
in interface IndexManager
getTotalDocs
public int getTotalDocs(java.lang.String partitionId)
- Specified by:
getTotalDocs
in interface IndexManager