1
package org.apache.lucene.store.instantiated;
3
import org.apache.lucene.index.TermVectorOffsetInfo;
5
import java.io.Serializable;
6
import java.util.Comparator;
9
* Copyright 2006 The Apache Software Foundation
11
* Licensed under the Apache License, Version 2.0 (the "License");
12
* you may not use this file except in compliance with the License.
13
* You may obtain a copy of the License at
15
* http://www.apache.org/licenses/LICENSE-2.0
17
* Unless required by applicable law or agreed to in writing, software
18
* distributed under the License is distributed on an "AS IS" BASIS,
19
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
* See the License for the specific language governing permissions and
21
* limitations under the License.
25
* There is one instance of this class per indexed term in a document
26
* and it contains the meta data about each occurrence of a term in a document.
28
* It is the inner glue of the inverted index.
31
* [Term]-- {0..*} | {0..*} --(field)[Document]
34
* [TermDocumentInformation]
41
public class InstantiatedTermDocumentInformation
42
implements Serializable {
44
private static final long serialVersionUID = 1l;
46
public static final Comparator<InstantiatedTermDocumentInformation> termComparator = new Comparator<InstantiatedTermDocumentInformation>() {
47
public int compare(InstantiatedTermDocumentInformation instantiatedTermDocumentInformation, InstantiatedTermDocumentInformation instantiatedTermDocumentInformation1) {
48
return instantiatedTermDocumentInformation.getTerm().getTerm().compareTo(instantiatedTermDocumentInformation1.getTerm().getTerm());
52
public static final Comparator<InstantiatedTermDocumentInformation> documentNumberComparator = new Comparator<InstantiatedTermDocumentInformation>() {
53
public int compare(InstantiatedTermDocumentInformation instantiatedTermDocumentInformation, InstantiatedTermDocumentInformation instantiatedTermDocumentInformation1) {
54
return instantiatedTermDocumentInformation.getDocument().getDocumentNumber().compareTo(instantiatedTermDocumentInformation1.getDocument().getDocumentNumber());
58
public static final Comparator doumentNumberIntegerComparator = new Comparator() {
59
public int compare(Object o1, Object o2) {
60
InstantiatedTermDocumentInformation di = (InstantiatedTermDocumentInformation) o1;
61
Integer i = (Integer) o2;
62
return di.getDocument().getDocumentNumber().compareTo(i);
67
private byte[][] payloads;
68
private int[] termPositions;
69
private InstantiatedTerm term;
70
private InstantiatedDocument document;
71
private TermVectorOffsetInfo[] termOffsets;
75
public InstantiatedTermDocumentInformation(InstantiatedTerm term, InstantiatedDocument document, int[] termPositions, byte[][] payloads) {
77
this.document = document;
78
this.termPositions = termPositions;
79
this.payloads = payloads;
83
// not quite sure why I wanted this.
85
// * [Term]--- {0..* ordered} ->[Info]
87
// private int indexFromTerm;
90
// public int getIndexFromTerm() {
91
// return indexFromTerm;
94
// void setIndexFromTerm(int indexFromTerm) {
95
// this.indexFromTerm = indexFromTerm;
99
public int[] getTermPositions() {
100
return termPositions;
104
public byte[][] getPayloads() {
108
public InstantiatedDocument getDocument() {
114
public InstantiatedTerm getTerm() {
119
void setTermPositions(int[] termPositions) {
120
this.termPositions = termPositions;
124
void setTerm(InstantiatedTerm term) {
128
void setDocument(InstantiatedDocument document) {
129
this.document = document;
132
public TermVectorOffsetInfo[] getTermOffsets() {
136
void setTermOffsets(TermVectorOffsetInfo[] termOffsets) {
137
this.termOffsets = termOffsets;