org.apache.lucene.index

Interface TermPositions

public interface TermPositions extends TermDocs

TermPositions provides an interface for enumerating the <document, frequency, <position>* > tuples for a term.

The document and frequency are the same as for a TermDocs. The positions portion lists the ordinal positions of each occurrence of a term in a document.

See Also: termPositions

Method Summary
byte[]getPayload(byte[] data, int offset)
Returns the payload data at the current term position.
intgetPayloadLength()
Returns the length of the payload at the current term position.
booleanisPayloadAvailable()
Checks if a payload can be loaded at this position.
intnextPosition()
Returns next position in the current document.

Method Detail

getPayload

public byte[] getPayload(byte[] data, int offset)
Returns the payload data at the current term position. This is invalid until nextPosition is called for the first time. This method must not be called more than once after each call of nextPosition. However, payloads are loaded lazily, so if the payload data for the current position is not needed, this method may not be called at all for performance reasons.

WARNING: The status of the Payloads feature is experimental. The APIs introduced here might change in the future and will not be supported anymore in such a case.

Parameters: data the array into which the data of this payload is to be stored, if it is big enough; otherwise, a new byte[] array is allocated for this purpose. offset the offset in the array into which the data of this payload is to be stored.

Returns: a byte[] array containing the data of this payload

Throws: IOException

getPayloadLength

public int getPayloadLength()
Returns the length of the payload at the current term position. This is invalid until nextPosition is called for the first time.

WARNING: The status of the Payloads feature is experimental. The APIs introduced here might change in the future and will not be supported anymore in such a case.

Returns: length of the current payload in number of bytes

isPayloadAvailable

public boolean isPayloadAvailable()
Checks if a payload can be loaded at this position.

Payloads can only be loaded once per call to nextPosition.

WARNING: The status of the Payloads feature is experimental. The APIs introduced here might change in the future and will not be supported anymore in such a case.

Returns: true if there is a payload available at this position that can be loaded

nextPosition

public int nextPosition()
Returns next position in the current document. It is an error to call this more than TermPositions times without calling TermPositions

This is invalid until TermPositions is called for the first time.

Copyright © 2000-2007 Apache Software Foundation. All Rights Reserved.