Lucene Internal APIs


BytesRef
Represents byte[], as a slice (offset + length) into an existing byte[].
byte bytes[] = new byte[] { (byte)'a', (byte)'b', (byte)'c', (byte)'d' };
BytesRef b = new BytesRef(bytes);
BytesRef b2 = new BytesRef(bytes, 1, 3);
assertEquals("bcd", b2.utf8ToString());

public String utf8ToString() {
  final char[] ref = new char[length];
  final int len = UnicodeUtil.UTF8toUTF16(bytes, offset, length, ref);
  return new String(ref, 0, len);
}

Term
public final class Term implements Comparable {
  String field;
  BytesRef bytes;
}
A Term represents a word from text. This is the unit of search. It is composed of two elements, the text of the word, as a string, and the name of the field that the text occurred in.

Iterator to seek (seekCeil(BytesRef), seekExact(BytesRef)) or step through (next terms to obtain frequency information (docFreq), DocsEnum or DocsAndPositionsEnum for the current term (docs. 

Term enumerations are always ordered by getComparator. Each term in the enumeration is greater than the one before it.
TermsEnum
The TermsEnum is unpositioned when you first obtain it and you must first successfully call next or one of the seek methods.

org.apache.lucene.index.TestTermsEnum

DocsEnum
Iterates through the documents and term freqs. NOTE: you must first call nextDoc before using any of the per-doc methods. 

Labels

adsense (5) Algorithm (69) Algorithm Series (35) Android (7) ANT (6) bat (8) Big Data (7) Blogger (14) Bugs (6) Cache (5) Chrome (19) Code Example (29) Code Quality (7) Coding Skills (5) Database (7) Debug (16) Design (5) Dev Tips (63) Eclipse (32) Git (5) Google (33) Guava (7) How to (9) Http Client (8) IDE (7) Interview (88) J2EE (13) J2SE (49) Java (186) JavaScript (27) JSON (7) Learning code (9) Lesson Learned (6) Linux (26) Lucene-Solr (112) Mac (10) Maven (8) Network (9) Nutch2 (18) Performance (9) PowerShell (11) Problem Solving (11) Programmer Skills (6) regex (5) Scala (6) Security (9) Soft Skills (38) Spring (22) System Design (11) Testing (7) Text Mining (14) Tips (17) Tools (24) Troubleshooting (29) UIMA (9) Web Development (19) Windows (21) xml (5)