Package org.apache.lucene.index
Class TermVectorMapper
- java.lang.Object
-
- org.apache.lucene.index.TermVectorMapper
-
- Direct Known Subclasses:
FieldSortedTermVectorMapper
,PositionBasedTermVectorMapper
,SortedTermVectorMapper
public abstract class TermVectorMapper extends Object
The TermVectorMapper can be used to map Term Vectors into your own structure instead of the parallel array structure used byIndexReader.getTermFreqVector(int,String)
. It is up to the implementation to make sure it is thread-safe.
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TermVectorMapper()
protected
TermVectorMapper(boolean ignoringPositions, boolean ignoringOffsets)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
isIgnoringOffsets()
boolean
isIgnoringPositions()
Indicate to Lucene that even if there are positions stored, this mapper is not interested in them and they can be skipped over.abstract void
map(String term, int frequency, TermVectorOffsetInfo[] offsets, int[] positions)
Map the Term Vector information into your own structurevoid
setDocumentNumber(int documentNumber)
Passes down the index of the document whose term vector is currently being mapped, once for each top level call to a term vector reader.abstract void
setExpectations(String field, int numTerms, boolean storeOffsets, boolean storePositions)
Tell the mapper what to expect in regards to field, number of terms, offset and position storage.
-
-
-
Constructor Detail
-
TermVectorMapper
protected TermVectorMapper()
-
TermVectorMapper
protected TermVectorMapper(boolean ignoringPositions, boolean ignoringOffsets)
- Parameters:
ignoringPositions
- true if this mapper should tell Lucene to ignore positions even if they are storedignoringOffsets
- similar to ignoringPositions
-
-
Method Detail
-
setExpectations
public abstract void setExpectations(String field, int numTerms, boolean storeOffsets, boolean storePositions)
Tell the mapper what to expect in regards to field, number of terms, offset and position storage. This method will be called once before retrieving the vector for a field. This method will be called beforemap(String,int,TermVectorOffsetInfo[],int[])
.- Parameters:
field
- The field the vector is fornumTerms
- The number of terms that need to be mappedstoreOffsets
- true if the mapper should expect offset informationstorePositions
- true if the mapper should expect positions info
-
map
public abstract void map(String term, int frequency, TermVectorOffsetInfo[] offsets, int[] positions)
Map the Term Vector information into your own structure- Parameters:
term
- The term to add to the vectorfrequency
- The frequency of the term in the documentoffsets
- null if the offset is not specified, otherwise the offset into the field of the termpositions
- null if the position is not specified, otherwise the position in the field of the term
-
isIgnoringPositions
public boolean isIgnoringPositions()
Indicate to Lucene that even if there are positions stored, this mapper is not interested in them and they can be skipped over. Derived classes should set this to true if they want to ignore positions. The default is false, meaning positions will be loaded if they are stored.- Returns:
- false
-
isIgnoringOffsets
public boolean isIgnoringOffsets()
- Returns:
- false
- See Also:
Same principal as , but applied to offsets. false by default.
-
setDocumentNumber
public void setDocumentNumber(int documentNumber)
Passes down the index of the document whose term vector is currently being mapped, once for each top level call to a term vector reader. Default implementation IGNORES the document number. Override if your implementation needs the document number. NOTE: Document numbers are internal to Lucene and subject to change depending on indexing operations.- Parameters:
documentNumber
- index of document currently being mapped
-
-