You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2014/11/30 12:07:19 UTC
svn commit: r1642535 [13/19] - in /lucene/dev/branches/lucene6005/lucene:
analysis/common/src/java/org/apache/lucene/collation/
analysis/common/src/test/org/apache/lucene/analysis/core/
analysis/common/src/test/org/apache/lucene/analysis/miscellaneous/...
Modified: lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupFacetCollectorTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupFacetCollectorTest.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupFacetCollectorTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupFacetCollectorTest.java Sun Nov 30 11:07:09 2014
@@ -33,11 +33,7 @@ import java.util.TreeSet;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.SortedDocValuesField;
-import org.apache.lucene.document.SortedSetDocValuesField;
-import org.apache.lucene.document.StringField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.NoMergePolicy;
import org.apache.lucene.index.RandomIndexWriter;
@@ -55,50 +51,47 @@ public class GroupFacetCollectorTest ext
public void testSimple() throws Exception {
final String groupField = "hotel";
- FieldType customType = new FieldType();
- customType.setStored(true);
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(
random(),
dir,
newIndexWriterConfig(new MockAnalyzer(random())).setMergePolicy(newLogMergePolicy()));
- boolean useDv = true;
// 0
- Document doc = new Document();
- addField(doc, groupField, "a", useDv);
- addField(doc, "airport", "ams", useDv);
- addField(doc, "duration", "5", useDv);
+ Document doc = w.newDocument();
+ addField(doc, groupField, "a");
+ addField(doc, "airport", "ams");
+ addField(doc, "duration", "5");
w.addDocument(doc);
// 1
- doc = new Document();
- addField(doc, groupField, "a", useDv);
- addField(doc, "airport", "dus", useDv);
- addField(doc, "duration", "10", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "a");
+ addField(doc, "airport", "dus");
+ addField(doc, "duration", "10");
w.addDocument(doc);
// 2
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- addField(doc, "airport", "ams", useDv);
- addField(doc, "duration", "10", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "ams");
+ addField(doc, "duration", "10");
w.addDocument(doc);
w.commit(); // To ensure a second segment
// 3
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- addField(doc, "airport", "ams", useDv);
- addField(doc, "duration", "5", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "ams");
+ addField(doc, "duration", "5");
w.addDocument(doc);
// 4
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- addField(doc, "airport", "ams", useDv);
- addField(doc, "duration", "5", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "ams");
+ addField(doc, "duration", "5");
w.addDocument(doc);
IndexSearcher indexSearcher = newSearcher(w.getReader());
@@ -111,8 +104,8 @@ public class GroupFacetCollectorTest ext
// any of these limits is plenty for the data we have
groupedAirportFacetCollector = createRandomCollector
- (useDv ? "hotel_dv" : "hotel",
- useDv ? "airport_dv" : "airport", null, false);
+ ("hotel_dv",
+ "airport_dv", null, false);
indexSearcher.search(new MatchAllDocsQuery(), groupedAirportFacetCollector);
int maxOffset = 5;
airportResult = groupedAirportFacetCollector.mergeSegmentResults
@@ -137,7 +130,7 @@ public class GroupFacetCollectorTest ext
assertEquals(1, entries.get(0).getCount());
}
- AbstractGroupFacetCollector groupedDurationFacetCollector = createRandomCollector(useDv ? "hotel_dv" : "hotel", useDv ? "duration_dv" : "duration", null, false);
+ AbstractGroupFacetCollector groupedDurationFacetCollector = createRandomCollector("hotel_dv", "duration_dv", null, false);
indexSearcher.search(new MatchAllDocsQuery(), groupedDurationFacetCollector);
TermGroupFacetCollector.GroupedFacetResult durationResult = groupedDurationFacetCollector.mergeSegmentResults(10, 0, false);
assertEquals(4, durationResult.getTotalCount());
@@ -151,60 +144,48 @@ public class GroupFacetCollectorTest ext
assertEquals(2, entries.get(1).getCount());
// 5
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- // missing airport
- if (useDv) {
- addField(doc, "airport", "", useDv);
- }
- addField(doc, "duration", "5", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "");
+ addField(doc, "duration", "5");
w.addDocument(doc);
// 6
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- addField(doc, "airport", "bru", useDv);
- addField(doc, "duration", "10", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "bru");
+ addField(doc, "duration", "10");
w.addDocument(doc);
// 7
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- addField(doc, "airport", "bru", useDv);
- addField(doc, "duration", "15", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ addField(doc, "airport", "bru");
+ addField(doc, "duration", "15");
w.addDocument(doc);
// 8
- doc = new Document();
- addField(doc, groupField, "a", useDv);
- addField(doc, "airport", "bru", useDv);
- addField(doc, "duration", "10", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "a");
+ addField(doc, "airport", "bru");
+ addField(doc, "duration", "10");
w.addDocument(doc);
indexSearcher.getIndexReader().close();
indexSearcher = newSearcher(w.getReader());
- groupedAirportFacetCollector = createRandomCollector(useDv ? "hotel_dv" : "hotel", useDv ? "airport_dv" : "airport", null, !useDv);
+ groupedAirportFacetCollector = createRandomCollector("hotel_dv", "airport_dv", null, false);
indexSearcher.search(new MatchAllDocsQuery(), groupedAirportFacetCollector);
airportResult = groupedAirportFacetCollector.mergeSegmentResults(3, 0, true);
entries = airportResult.getFacetEntries(1, 2);
assertEquals(2, entries.size());
- if (useDv) {
- assertEquals(6, airportResult.getTotalCount());
- assertEquals(0, airportResult.getTotalMissingCount());
- assertEquals("bru", entries.get(0).getValue().utf8ToString());
- assertEquals(2, entries.get(0).getCount());
- assertEquals("", entries.get(1).getValue().utf8ToString());
- assertEquals(1, entries.get(1).getCount());
- } else {
- assertEquals(5, airportResult.getTotalCount());
- assertEquals(1, airportResult.getTotalMissingCount());
- assertEquals("bru", entries.get(0).getValue().utf8ToString());
- assertEquals(2, entries.get(0).getCount());
- assertEquals("dus", entries.get(1).getValue().utf8ToString());
- assertEquals(1, entries.get(1).getCount());
- }
+ assertEquals(6, airportResult.getTotalCount());
+ assertEquals(0, airportResult.getTotalMissingCount());
+ assertEquals("bru", entries.get(0).getValue().utf8ToString());
+ assertEquals(2, entries.get(0).getCount());
+ assertEquals("", entries.get(1).getValue().utf8ToString());
+ assertEquals(1, entries.get(1).getCount());
- groupedDurationFacetCollector = createRandomCollector(useDv ? "hotel_dv" : "hotel", useDv ? "duration_dv" : "duration", null, false);
+ groupedDurationFacetCollector = createRandomCollector("hotel_dv", "duration_dv", null, false);
indexSearcher.search(new MatchAllDocsQuery(), groupedDurationFacetCollector);
durationResult = groupedDurationFacetCollector.mergeSegmentResults(10, 2, true);
assertEquals(5, durationResult.getTotalCount());
@@ -216,50 +197,38 @@ public class GroupFacetCollectorTest ext
assertEquals(2, entries.get(0).getCount());
// 9
- doc = new Document();
- addField(doc, groupField, "c", useDv);
- addField(doc, "airport", "bru", useDv);
- addField(doc, "duration", "15", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "c");
+ addField(doc, "airport", "bru");
+ addField(doc, "duration", "15");
w.addDocument(doc);
// 10
- doc = new Document();
- addField(doc, groupField, "c", useDv);
- addField(doc, "airport", "dus", useDv);
- addField(doc, "duration", "10", useDv);
+ doc = w.newDocument();
+ addField(doc, groupField, "c");
+ addField(doc, "airport", "dus");
+ addField(doc, "duration", "10");
w.addDocument(doc);
indexSearcher.getIndexReader().close();
indexSearcher = newSearcher(w.getReader());
- groupedAirportFacetCollector = createRandomCollector(useDv ? "hotel_dv" : "hotel", useDv ? "airport_dv" : "airport", null, false);
+ groupedAirportFacetCollector = createRandomCollector("hotel_dv", "airport_dv", null, false);
indexSearcher.search(new MatchAllDocsQuery(), groupedAirportFacetCollector);
airportResult = groupedAirportFacetCollector.mergeSegmentResults(10, 0, false);
entries = airportResult.getFacetEntries(0, 10);
- if (useDv) {
- assertEquals(8, airportResult.getTotalCount());
- assertEquals(0, airportResult.getTotalMissingCount());
- assertEquals(4, entries.size());
- assertEquals("", entries.get(0).getValue().utf8ToString());
- assertEquals(1, entries.get(0).getCount());
- assertEquals("ams", entries.get(1).getValue().utf8ToString());
- assertEquals(2, entries.get(1).getCount());
- assertEquals("bru", entries.get(2).getValue().utf8ToString());
- assertEquals(3, entries.get(2).getCount());
- assertEquals("dus", entries.get(3).getValue().utf8ToString());
- assertEquals(2, entries.get(3).getCount());
- } else {
- assertEquals(7, airportResult.getTotalCount());
- assertEquals(1, airportResult.getTotalMissingCount());
- assertEquals(3, entries.size());
- assertEquals("ams", entries.get(0).getValue().utf8ToString());
- assertEquals(2, entries.get(0).getCount());
- assertEquals("bru", entries.get(1).getValue().utf8ToString());
- assertEquals(3, entries.get(1).getCount());
- assertEquals("dus", entries.get(2).getValue().utf8ToString());
- assertEquals(2, entries.get(2).getCount());
- }
+ assertEquals(8, airportResult.getTotalCount());
+ assertEquals(0, airportResult.getTotalMissingCount());
+ assertEquals(4, entries.size());
+ assertEquals("", entries.get(0).getValue().utf8ToString());
+ assertEquals(1, entries.get(0).getCount());
+ assertEquals("ams", entries.get(1).getValue().utf8ToString());
+ assertEquals(2, entries.get(1).getCount());
+ assertEquals("bru", entries.get(2).getValue().utf8ToString());
+ assertEquals(3, entries.get(2).getCount());
+ assertEquals("dus", entries.get(3).getValue().utf8ToString());
+ assertEquals(2, entries.get(3).getCount());
- groupedDurationFacetCollector = createRandomCollector(useDv ? "hotel_dv" : "hotel", useDv ? "duration_dv" : "duration", "1", false);
+ groupedDurationFacetCollector = createRandomCollector("hotel_dv", "duration_dv", "1", false);
indexSearcher.search(new MatchAllDocsQuery(), groupedDurationFacetCollector);
durationResult = groupedDurationFacetCollector.mergeSegmentResults(10, 0, true);
assertEquals(5, durationResult.getTotalCount());
@@ -279,8 +248,6 @@ public class GroupFacetCollectorTest ext
public void testMVGroupedFacetingWithDeletes() throws Exception {
final String groupField = "hotel";
- FieldType customType = new FieldType();
- customType.setStored(true);
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(
@@ -288,58 +255,60 @@ public class GroupFacetCollectorTest ext
dir,
newIndexWriterConfig(new MockAnalyzer(random())).setMergePolicy(NoMergePolicy.INSTANCE));
boolean useDv = true;
+ FieldTypes fieldTypes = w.getFieldTypes();
+ fieldTypes.setMultiValued("airport");
// Cannot assert this since we use NoMergePolicy:
w.setDoRandomForceMergeAssert(false);
// 0
- Document doc = new Document();
- doc.add(new StringField("x", "x", Field.Store.NO));
+ Document doc = w.newDocument();
+ doc.addAtom("x", "x");
w.addDocument(doc);
// 1
- doc = new Document();
- addField(doc, groupField, "a", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("ams")));
+ doc = w.newDocument();
+ addField(doc, groupField, "a");
+ doc.addAtom("airport", new BytesRef("ams"));
w.addDocument(doc);
w.commit();
w.deleteDocuments(new TermQuery(new Term("airport", "ams")));
// 2
- doc = new Document();
- addField(doc, groupField, "a", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("ams")));
+ doc = w.newDocument();
+ addField(doc, groupField, "a");
+ doc.addAtom("airport", new BytesRef("ams"));
w.addDocument(doc);
// 3
- doc = new Document();
- addField(doc, groupField, "a", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("dus")));
+ doc = w.newDocument();
+ addField(doc, groupField, "a");
+ doc.addAtom("airport", new BytesRef("dus"));
w.addDocument(doc);
// 4
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("ams")));
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ doc.addAtom("airport", new BytesRef("ams"));
w.addDocument(doc);
// 5
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("ams")));
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ doc.addAtom("airport", new BytesRef("ams"));
w.addDocument(doc);
// 6
- doc = new Document();
- addField(doc, groupField, "b", useDv);
- doc.add(new SortedSetDocValuesField("airport", new BytesRef("ams")));
+ doc = w.newDocument();
+ addField(doc, groupField, "b");
+ doc.addAtom("airport", new BytesRef("ams"));
w.addDocument(doc);
w.commit();
// 7
- doc = new Document();
- doc.add(new StringField("x", "x", Field.Store.NO));
+ doc = w.newDocument();
+ doc.addAtom("x", "x");
w.addDocument(doc);
w.commit();
@@ -362,9 +331,8 @@ public class GroupFacetCollectorTest ext
dir.close();
}
- private void addField(Document doc, String field, String value, boolean canUseIDV) {
- assert canUseIDV;
- doc.add(new SortedDocValuesField(field + "_dv", new BytesRef(value)));
+ private void addField(Document doc, String field, String value) {
+ doc.addAtom(field + "_dv", new BytesRef(value));
}
public void testRandom() throws Exception {
@@ -506,38 +474,10 @@ public class GroupFacetCollectorTest ext
dir,
newIndexWriterConfig(new MockAnalyzer(random))
);
- Document doc = new Document();
- Document docNoGroup = new Document();
- Document docNoFacet = new Document();
- Document docNoGroupNoFacet = new Document();
- Field group = newStringField("group", "", Field.Store.NO);
- Field groupDc = new SortedDocValuesField("group", new BytesRef());
- doc.add(groupDc);
- docNoFacet.add(groupDc);
- doc.add(group);
- docNoFacet.add(group);
- Field[] facetFields;
- if (multipleFacetValuesPerDocument == false) {
- facetFields = new Field[2];
- facetFields[0] = newStringField("facet", "", Field.Store.NO);
- doc.add(facetFields[0]);
- docNoGroup.add(facetFields[0]);
- facetFields[1] = new SortedDocValuesField("facet", new BytesRef());
- doc.add(facetFields[1]);
- docNoGroup.add(facetFields[1]);
- } else {
- facetFields = multipleFacetValuesPerDocument ? new Field[2 + random.nextInt(6)] : new Field[1];
- for (int i = 0; i < facetFields.length; i++) {
- facetFields[i] = new SortedSetDocValuesField("facet", new BytesRef());
- doc.add(facetFields[i]);
- docNoGroup.add(facetFields[i]);
- }
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ if (multipleFacetValuesPerDocument) {
+ fieldTypes.setMultiValued("facet");
}
- Field content = newStringField("content", "", Field.Store.NO);
- doc.add(content);
- docNoGroup.add(content);
- docNoFacet.add(content);
- docNoGroupNoFacet.add(content);
NavigableSet<String> uniqueFacetValues = new TreeSet<>(new Comparator<String>() {
@@ -557,6 +497,7 @@ public class GroupFacetCollectorTest ext
});
Map<String, Map<String, Set<String>>> searchTermToFacetToGroups = new HashMap<>();
int facetWithMostGroups = 0;
+ int numFacetValues = 2 + random.nextInt(6);
for (int i = 0; i < numDocs; i++) {
final String groupValue;
if (random.nextInt(24) == 17) {
@@ -573,6 +514,7 @@ public class GroupFacetCollectorTest ext
}
Map<String, Set<String>> facetToGroups = searchTermToFacetToGroups.get(contentStr);
+ Document doc = writer.newDocument();
List<String> facetVals = new ArrayList<>();
if (multipleFacetValuesPerDocument == false) {
String facetValue = facetValues.get(random.nextInt(facetValues.size()));
@@ -585,12 +527,12 @@ public class GroupFacetCollectorTest ext
if (groupsInFacet.size() > facetWithMostGroups) {
facetWithMostGroups = groupsInFacet.size();
}
- facetFields[0].setStringValue(facetValue);
- facetFields[1].setBytesValue(new BytesRef(facetValue));
facetVals.add(facetValue);
+ doc.addAtom("facet", facetValue);
} else {
- for (Field facetField : facetFields) {
+ for (int j=0;j<numFacetValues;j++) {
String facetValue = facetValues.get(random.nextInt(facetValues.size()));
+ doc.addAtom("facet", facetValue);
uniqueFacetValues.add(facetValue);
if (!facetToGroups.containsKey(facetValue)) {
facetToGroups.put(facetValue, new HashSet<String>());
@@ -600,33 +542,17 @@ public class GroupFacetCollectorTest ext
if (groupsInFacet.size() > facetWithMostGroups) {
facetWithMostGroups = groupsInFacet.size();
}
- facetField.setBytesValue(new BytesRef(facetValue));
facetVals.add(facetValue);
}
}
if (VERBOSE) {
- System.out.println(" doc content=" + contentStr + " group=" + (groupValue == null ? "null" : groupValue) + " facetVals=" + facetVals);
+ System.out.println(" doc content=" + contentStr + " group=" + groupValue + " facetVals=" + facetVals);
}
- if (groupValue != null) {
- groupDc.setBytesValue(new BytesRef(groupValue));
- group.setStringValue(groupValue);
- } else {
- // TODO: not true
- // DV cannot have missing values:
- groupDc.setBytesValue(new BytesRef());
- }
- content.setStringValue(contentStr);
- if (groupValue == null && facetVals.isEmpty()) {
- writer.addDocument(docNoGroupNoFacet);
- } else if (facetVals.isEmpty()) {
- writer.addDocument(docNoFacet);
- } else if (groupValue == null) {
- writer.addDocument(docNoGroup);
- } else {
- writer.addDocument(doc);
- }
+ doc.addAtom("content", contentStr);
+ doc.addAtom("group", groupValue);
+ writer.addDocument(doc);
}
DirectoryReader reader = writer.getReader();
Modified: lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupingSearchTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupingSearchTest.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupingSearchTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/GroupingSearchTest.java Sun Nov 30 11:07:09 2014
@@ -17,13 +17,12 @@ package org.apache.lucene.search.groupin
* limitations under the License.
*/
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.SortedDocValuesField;
-import org.apache.lucene.document.StringField;
-import org.apache.lucene.document.TextField;
import org.apache.lucene.index.RandomIndexWriter;
import org.apache.lucene.index.Term;
import org.apache.lucene.queries.function.ValueSource;
@@ -39,10 +38,6 @@ import org.apache.lucene.util.BytesRef;
import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.mutable.MutableValueStr;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
public class GroupingSearchTest extends LuceneTestCase {
// Tests some very basic usages...
@@ -50,70 +45,67 @@ public class GroupingSearchTest extends
final String groupField = "author";
- FieldType customType = new FieldType();
- customType.setStored(true);
-
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(
random(),
dir,
newIndexWriterConfig(new MockAnalyzer(random())).setMergePolicy(newLogMergePolicy()));
- boolean canUseIDV = true;
+
List<Document> documents = new ArrayList<>();
// 0
- Document doc = new Document();
- addGroupField(doc, groupField, "author1", canUseIDV);
- doc.add(new TextField("content", "random text", Field.Store.YES));
- doc.add(new Field("id", "1", customType));
+ Document doc = w.newDocument();
+ addGroupField(doc, groupField, "author1");
+ doc.addLargeText("content", "random text");
+ doc.addStored("id", "1");
documents.add(doc);
// 1
- doc = new Document();
- addGroupField(doc, groupField, "author1", canUseIDV);
- doc.add(new TextField("content", "some more random text", Field.Store.YES));
- doc.add(new Field("id", "2", customType));
+ doc = w.newDocument();
+ addGroupField(doc, groupField, "author1");
+ doc.addLargeText("content", "some more random text");
+ doc.addStored("id", "2");
documents.add(doc);
// 2
- doc = new Document();
- addGroupField(doc, groupField, "author1", canUseIDV);
- doc.add(new TextField("content", "some more random textual data", Field.Store.YES));
- doc.add(new Field("id", "3", customType));
- doc.add(new StringField("groupend", "x", Field.Store.NO));
+ doc = w.newDocument();
+ addGroupField(doc, groupField, "author1");
+ doc.addLargeText("content", "some more random textual data");
+ doc.addStored("id", "3");
+ doc.addAtom("groupend", "x");
documents.add(doc);
w.addDocuments(documents);
documents.clear();
// 3
- doc = new Document();
- addGroupField(doc, groupField, "author2", canUseIDV);
- doc.add(new TextField("content", "some random text", Field.Store.YES));
- doc.add(new Field("id", "4", customType));
- doc.add(new StringField("groupend", "x", Field.Store.NO));
+ doc = w.newDocument();
+ addGroupField(doc, groupField, "author2");
+ doc.addLargeText("content", "some random text");
+ doc.addStored("id", "4");
+ doc.addAtom("groupend", "x");
w.addDocument(doc);
// 4
- doc = new Document();
- addGroupField(doc, groupField, "author3", canUseIDV);
- doc.add(new TextField("content", "some more random text", Field.Store.YES));
- doc.add(new Field("id", "5", customType));
+ doc = w.newDocument();
+ addGroupField(doc, groupField, "author3");
+ doc.addLargeText("content", "some more random text");
+ doc.addStored("id", "5");
documents.add(doc);
// 5
- doc = new Document();
- addGroupField(doc, groupField, "author3", canUseIDV);
- doc.add(new TextField("content", "random", Field.Store.YES));
- doc.add(new Field("id", "6", customType));
- doc.add(new StringField("groupend", "x", Field.Store.NO));
+ doc = w.newDocument();
+ addGroupField(doc, groupField, "author3");
+ doc.addLargeText("content", "random");
+ doc.addStored("id", "6");
+ doc.addAtom("groupend", "x");
documents.add(doc);
w.addDocuments(documents);
documents.clear();
// 6 -- no author field
- doc = new Document();
- doc.add(new TextField("content", "random word stuck in alot of other text", Field.Store.YES));
- doc.add(new Field("id", "6", customType));
- doc.add(new StringField("groupend", "x", Field.Store.NO));
+ doc = w.newDocument();
+ doc.addLargeText("content", "random word stuck in alot of other text");
+ doc.addStored("id", "6");
+ doc.addAtom("groupend", "x");
w.addDocument(doc);
@@ -121,7 +113,7 @@ public class GroupingSearchTest extends
w.close();
Sort groupSort = Sort.RELEVANCE;
- GroupingSearch groupingSearch = createRandomGroupingSearch(groupField, groupSort, 5, canUseIDV);
+ GroupingSearch groupingSearch = createRandomGroupingSearch(groupField, groupSort, 5);
TopGroups<?> groups = groupingSearch.search(indexSearcher, null, new TermQuery(new Term("content", "random")), 0, 10);
@@ -172,11 +164,8 @@ public class GroupingSearchTest extends
dir.close();
}
- private void addGroupField(Document doc, String groupField, String value, boolean canUseIDV) {
- doc.add(new TextField(groupField, value, Field.Store.YES));
- if (canUseIDV) {
- doc.add(new SortedDocValuesField(groupField, new BytesRef(value)));
- }
+ private void addGroupField(Document doc, String groupField, String value) {
+ doc.addAtom(groupField, value);
}
private void compareGroupValue(String expected, GroupDocs<?> group) {
@@ -202,7 +191,7 @@ public class GroupingSearchTest extends
}
}
- private GroupingSearch createRandomGroupingSearch(String groupField, Sort groupSort, int docsInGroup, boolean canUseIDV) {
+ private GroupingSearch createRandomGroupingSearch(String groupField, Sort groupSort, int docsInGroup) {
GroupingSearch groupingSearch;
if (random().nextBoolean()) {
ValueSource vs = new BytesRefFieldSource(groupField);
@@ -227,9 +216,8 @@ public class GroupingSearchTest extends
random(),
dir,
newIndexWriterConfig(new MockAnalyzer(random())).setMergePolicy(newLogMergePolicy()));
- Document doc = new Document();
- doc.add(newField("group", "foo", StringField.TYPE_NOT_STORED));
- doc.add(new SortedDocValuesField("group", new BytesRef("foo")));
+ Document doc = w.newDocument();
+ doc.addAtom("group", new BytesRef("foo"));
w.addDocument(doc);
IndexSearcher indexSearcher = newSearcher(w.getReader());
Modified: lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java (original)
+++ lucene/dev/branches/lucene6005/lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGrouping.java Sun Nov 30 11:07:09 2014
@@ -23,7 +23,6 @@ import java.util.*;
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.document.*;
import org.apache.lucene.index.DirectoryReader;
-import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexReaderContext;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.MultiDocValues;
@@ -60,60 +59,57 @@ public class TestGrouping extends Lucene
String groupField = "author";
- FieldType customType = new FieldType();
- customType.setStored(true);
-
Directory dir = newDirectory();
RandomIndexWriter w = new RandomIndexWriter(
random(),
dir,
newIndexWriterConfig(new MockAnalyzer(random())).setMergePolicy(newLogMergePolicy()));
// 0
- Document doc = new Document();
+ Document doc = w.newDocument();
addGroupField(doc, groupField, "author1");
- doc.add(new TextField("content", "random text", Field.Store.YES));
- doc.add(new Field("id", "1", customType));
+ doc.addLargeText("content", "random text");
+ doc.addStored("id", "1");
w.addDocument(doc);
// 1
- doc = new Document();
+ doc = w.newDocument();
addGroupField(doc, groupField, "author1");
- doc.add(new TextField("content", "some more random text", Field.Store.YES));
- doc.add(new Field("id", "2", customType));
+ doc.addLargeText("content", "some more random text");
+ doc.addStored("id", "2");
w.addDocument(doc);
// 2
- doc = new Document();
+ doc = w.newDocument();
addGroupField(doc, groupField, "author1");
- doc.add(new TextField("content", "some more random textual data", Field.Store.YES));
- doc.add(new Field("id", "3", customType));
+ doc.addLargeText("content", "some more random textual data");
+ doc.addStored("id", "3");
w.addDocument(doc);
// 3
- doc = new Document();
+ doc = w.newDocument();
addGroupField(doc, groupField, "author2");
- doc.add(new TextField("content", "some random text", Field.Store.YES));
- doc.add(new Field("id", "4", customType));
+ doc.addLargeText("content", "some random text");
+ doc.addStored("id", "4");
w.addDocument(doc);
// 4
- doc = new Document();
+ doc = w.newDocument();
addGroupField(doc, groupField, "author3");
- doc.add(new TextField("content", "some more random text", Field.Store.YES));
- doc.add(new Field("id", "5", customType));
+ doc.addLargeText("content", "some more random text");
+ doc.addStored("id", "5");
w.addDocument(doc);
// 5
- doc = new Document();
+ doc = w.newDocument();
addGroupField(doc, groupField, "author3");
- doc.add(new TextField("content", "random", Field.Store.YES));
- doc.add(new Field("id", "6", customType));
+ doc.addLargeText("content", "random");
+ doc.addStored("id", "6");
w.addDocument(doc);
// 6 -- no author field
- doc = new Document();
- doc.add(new TextField("content", "random word stuck in alot of other text", Field.Store.YES));
- doc.add(new Field("id", "6", customType));
+ doc = w.newDocument();
+ doc.addLargeText("content", "random word stuck in alot of other text");
+ doc.addStored("id", "6");
w.addDocument(doc);
IndexSearcher indexSearcher = newSearcher(w.getReader());
@@ -169,7 +165,7 @@ public class TestGrouping extends Lucene
}
private void addGroupField(Document doc, String groupField, String value) {
- doc.add(new SortedDocValuesField(groupField, new BytesRef(value)));
+ doc.addAtom(groupField, new BytesRef(value));
}
private AbstractFirstPassGroupingCollector<?> createRandomFirstPassCollector(String groupField, Sort groupSort, int topDocs) throws IOException {
@@ -550,14 +546,14 @@ public class TestGrouping extends Lucene
dir,
newIndexWriterConfig(new MockAnalyzer(random())));
- final List<List<Document2>> updateDocs = new ArrayList<>();
+ final List<List<Document>> updateDocs = new ArrayList<>();
//System.out.println("TEST: index groups");
for(BytesRef group : groupValues) {
- final List<Document2> docs = new ArrayList<>();
+ final List<Document> docs = new ArrayList<>();
//System.out.println("TEST: group=" + (group == null ? "null" : group.utf8ToString()));
for(GroupDoc groupValue : groupMap.get(group)) {
- Document2 doc = w.newDocument();
+ Document doc = w.newDocument();
docs.add(doc);
if (groupValue.group != null) {
doc.addAtom("group", groupValue.group.utf8ToString());
@@ -577,7 +573,7 @@ public class TestGrouping extends Lucene
}
}
- for(List<Document2> docs : updateDocs) {
+ for(List<Document> docs : updateDocs) {
// Just replaces docs w/ same docs:
w.updateDocuments(new Term("group", docs.get(0).getString("group")), docs);
}
@@ -680,7 +676,7 @@ public class TestGrouping extends Lucene
}
groupDocs[i] = groupDoc;
- Document2 doc = w.newDocument();
+ Document doc = w.newDocument();
if (groupDoc.group != null) {
doc.addAtom("group", groupDoc.group.utf8ToString());
}
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenSources.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenSources.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenSources.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/highlight/TokenSources.java Sun Nov 30 11:07:09 2014
@@ -31,7 +31,7 @@ import org.apache.lucene.analysis.tokena
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.document.Document2;
+import org.apache.lucene.document.Document;
import org.apache.lucene.index.DocsAndPositionsEnum;
import org.apache.lucene.index.Fields;
import org.apache.lucene.index.IndexReader;
@@ -67,7 +67,7 @@ public class TokenSources {
*/
public static TokenStream getAnyTokenStream(IndexReader reader, int docId,
- String field, Document2 document, Analyzer analyzer) throws IOException {
+ String field, Document document, Analyzer analyzer) throws IOException {
TokenStream ts = null;
Fields vectors = reader.getTermVectors(docId);
@@ -315,11 +315,11 @@ public class TokenSources {
// convenience method
public static TokenStream getTokenStream(IndexReader reader, int docId,
String field, Analyzer analyzer) throws IOException {
- Document2 doc = reader.document(docId);
+ Document doc = reader.document(docId);
return getTokenStream(doc, field, analyzer);
}
- public static TokenStream getTokenStream(Document2 doc, String field,
+ public static TokenStream getTokenStream(Document doc, String field,
Analyzer analyzer) {
String contents = doc.getString(field);
if (contents == null) {
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/postingshighlight/PostingsHighlighter.java Sun Nov 30 11:07:09 2014
@@ -77,6 +77,7 @@ import org.apache.lucene.util.automaton.
* <b>WARNING</b>: The code is very new and probably still has some exciting bugs!
* <p>
* Example usage:
+// nocommit fixme
* <pre class="prettyprint">
* // configure field with offsets at index time
* FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/BaseFragmentsBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/BaseFragmentsBuilder.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/BaseFragmentsBuilder.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/BaseFragmentsBuilder.java Sun Nov 30 11:07:09 2014
@@ -17,9 +17,6 @@ package org.apache.lucene.search.vectorh
* limitations under the License.
*/
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.TextField;
import org.apache.lucene.index.FieldInfo;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.StoredFieldVisitor;
@@ -60,6 +57,20 @@ public abstract class BaseFragmentsBuild
private char multiValuedSeparator = ' ';
private final BoundaryScanner boundaryScanner;
private boolean discreteMultiValueHighlighting = false;
+
+ protected static class FieldValue {
+ public final String name;
+ public final String value;
+ public final boolean hasTermVectors;
+ public final boolean tokenized;
+
+ public FieldValue(String name, String value, boolean hasTermVectors, boolean tokenized) {
+ this.name = name;
+ this.value = value;
+ this.hasTermVectors = hasTermVectors;
+ this.tokenized = tokenized;
+ }
+ }
protected BaseFragmentsBuilder(){
this( new String[]{ "<b>" }, new String[]{ "</b>" } );
@@ -124,7 +135,7 @@ public abstract class BaseFragmentsBuild
}
List<WeightedFragInfo> fragInfos = fieldFragList.getFragInfos();
- Field[] values = getFields( reader, docId, fieldName );
+ FieldValue[] values = getFields( reader, docId, fieldName );
if( values.length == 0 ) {
return null;
}
@@ -146,16 +157,14 @@ public abstract class BaseFragmentsBuild
return fragments.toArray( new String[fragments.size()] );
}
- protected Field[] getFields( IndexReader reader, int docId, final String fieldName) throws IOException {
+ protected FieldValue[] getFields( IndexReader reader, int docId, final String fieldName) throws IOException {
// according to javadoc, doc.getFields(fieldName) cannot be used with lazy loaded field???
- final List<Field> fields = new ArrayList<>();
+ final List<FieldValue> fields = new ArrayList<>();
reader.document(docId, new StoredFieldVisitor() {
@Override
public void stringField(FieldInfo fieldInfo, String value) {
- FieldType ft = new FieldType(TextField.TYPE_STORED);
- ft.setStoreTermVectors(fieldInfo.hasVectors());
- fields.add(new Field(fieldInfo.name, value, ft));
+ fields.add(new FieldValue(fieldInfo.name, value, fieldInfo.hasVectors(), true));
}
@Override
@@ -163,10 +172,10 @@ public abstract class BaseFragmentsBuild
return fieldInfo.name.equals(fieldName) ? Status.YES : Status.NO;
}
});
- return fields.toArray(new Field[fields.size()]);
+ return fields.toArray(new FieldValue[fields.size()]);
}
- protected String makeFragment( StringBuilder buffer, int[] index, Field[] values, WeightedFragInfo fragInfo,
+ protected String makeFragment( StringBuilder buffer, int[] index, FieldValue[] values, WeightedFragInfo fragInfo,
String[] preTags, String[] postTags, Encoder encoder ){
StringBuilder fragment = new StringBuilder();
final int s = fragInfo.getStartOffset();
@@ -187,15 +196,15 @@ public abstract class BaseFragmentsBuild
return fragment.toString();
}
- protected String getFragmentSourceMSO( StringBuilder buffer, int[] index, Field[] values,
+ protected String getFragmentSourceMSO( StringBuilder buffer, int[] index, FieldValue[] values,
int startOffset, int endOffset, int[] modifiedStartOffset ){
while( buffer.length() < endOffset && index[0] < values.length ){
- buffer.append( values[index[0]++].stringValue() );
+ buffer.append( values[index[0]++].value );
buffer.append( getMultiValuedSeparator() );
}
int bufferLength = buffer.length();
// we added the multi value char to the last buffer, ignore it
- if (values[index[0] - 1].fieldType().tokenized()) {
+ if (values[index[0] - 1].tokenized) {
bufferLength--;
}
int eo = bufferLength < endOffset ? bufferLength : boundaryScanner.findEndOffset( buffer, endOffset );
@@ -203,10 +212,10 @@ public abstract class BaseFragmentsBuild
return buffer.substring( modifiedStartOffset[0], eo );
}
- protected String getFragmentSource( StringBuilder buffer, int[] index, Field[] values,
+ protected String getFragmentSource( StringBuilder buffer, int[] index, FieldValue[] values,
int startOffset, int endOffset ){
while( buffer.length() < endOffset && index[0] < values.length ){
- buffer.append( values[index[0]].stringValue() );
+ buffer.append( values[index[0]].value );
buffer.append( multiValuedSeparator );
index[0]++;
}
@@ -214,26 +223,26 @@ public abstract class BaseFragmentsBuild
return buffer.substring( startOffset, eo );
}
- protected List<WeightedFragInfo> discreteMultiValueHighlighting(List<WeightedFragInfo> fragInfos, Field[] fields) {
+ protected List<WeightedFragInfo> discreteMultiValueHighlighting(List<WeightedFragInfo> fragInfos, FieldValue[] fields) {
Map<String, List<WeightedFragInfo>> fieldNameToFragInfos = new HashMap<>();
- for (Field field : fields) {
- fieldNameToFragInfos.put(field.name(), new ArrayList<WeightedFragInfo>());
+ for (FieldValue field : fields) {
+ fieldNameToFragInfos.put(field.name, new ArrayList<WeightedFragInfo>());
}
fragInfos: for (WeightedFragInfo fragInfo : fragInfos) {
int fieldStart;
int fieldEnd = 0;
- for (Field field : fields) {
- if (field.stringValue().isEmpty()) {
+ for (FieldValue field : fields) {
+ if (field.value.isEmpty()) {
fieldEnd++;
continue;
}
fieldStart = fieldEnd;
- fieldEnd += field.stringValue().length() + 1; // + 1 for going to next field with same name.
+ fieldEnd += field.value.length() + 1; // + 1 for going to next field with same name.
if (fragInfo.getStartOffset() >= fieldStart && fragInfo.getEndOffset() >= fieldStart &&
fragInfo.getStartOffset() <= fieldEnd && fragInfo.getEndOffset() <= fieldEnd) {
- fieldNameToFragInfos.get(field.name()).add(fragInfo);
+ fieldNameToFragInfos.get(field.name).add(fragInfo);
continue fragInfos;
}
@@ -282,7 +291,7 @@ public abstract class BaseFragmentsBuild
}
}
WeightedFragInfo weightedFragInfo = new WeightedFragInfo(fragStart, fragEnd, subInfos, boost);
- fieldNameToFragInfos.get(field.name()).add(weightedFragInfo);
+ fieldNameToFragInfos.get(field.name).add(weightedFragInfo);
}
}
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldTermStack.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldTermStack.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldTermStack.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/java/org/apache/lucene/search/vectorhighlight/FieldTermStack.java Sun Nov 30 11:07:09 2014
@@ -40,29 +40,6 @@ public class FieldTermStack {
private final String fieldName;
LinkedList<TermInfo> termList = new LinkedList<>();
- //public static void main( String[] args ) throws Exception {
- // Analyzer analyzer = new WhitespaceAnalyzer(Version.LATEST);
- // QueryParser parser = new QueryParser(Version.LATEST, "f", analyzer );
- // Query query = parser.parse( "a x:b" );
- // FieldQuery fieldQuery = new FieldQuery( query, true, false );
-
- // Directory dir = new RAMDirectory();
- // IndexWriter writer = new IndexWriter(dir, new IndexWriterConfig(Version.LATEST, analyzer));
- // Document doc = new Document();
- // FieldType ft = new FieldType(TextField.TYPE_STORED);
- // ft.setStoreTermVectors(true);
- // ft.setStoreTermVectorOffsets(true);
- // ft.setStoreTermVectorPositions(true);
- // doc.add( new Field( "f", ft, "a a a b b c a b b c d e f" ) );
- // doc.add( new Field( "f", ft, "b a b a f" ) );
- // writer.addDocument( doc );
- // writer.close();
-
- // IndexReader reader = IndexReader.open(dir1);
- // new FieldTermStack( reader, 0, "f", fieldQuery );
- // reader.close();
- //}
-
/**
* a constructor.
*
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterPhraseTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterPhraseTest.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterPhraseTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterPhraseTest.java Sun Nov 30 11:07:09 2014
@@ -23,19 +23,16 @@ import org.apache.lucene.analysis.MockAn
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenStream;
+import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
-import org.apache.lucene.document.FieldType;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.TextField;
-import org.apache.lucene.index.LeafReaderContext;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
+import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.Term;
-import org.apache.lucene.search.DocIdSetIterator;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.PhraseQuery;
import org.apache.lucene.search.Query;
@@ -45,8 +42,8 @@ import org.apache.lucene.search.spans.Sp
import org.apache.lucene.search.spans.SpanQuery;
import org.apache.lucene.search.spans.SpanTermQuery;
import org.apache.lucene.store.Directory;
-import org.apache.lucene.util.LuceneTestCase;
import org.apache.lucene.util.FixedBitSet;
+import org.apache.lucene.util.LuceneTestCase;
public class HighlighterPhraseTest extends LuceneTestCase {
private static final String FIELD = "text";
@@ -55,13 +52,13 @@ public class HighlighterPhraseTest exten
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectorPositions(true);
- customType.setStoreTermVectors(true);
- document.add(new Field(FIELD, new TokenStreamConcurrent(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new TokenStreamConcurrent());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -96,14 +93,13 @@ public class HighlighterPhraseTest exten
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
-
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectorPositions(true);
- customType.setStoreTermVectors(true);
- document.add(new Field(FIELD, new TokenStreamConcurrent(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new TokenStreamConcurrent());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -164,14 +160,13 @@ public class HighlighterPhraseTest exten
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
-
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectorPositions(true);
- customType.setStoreTermVectors(true);
- document.add(new Field(FIELD, new TokenStreamSparse(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new TokenStreamSparse());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -206,13 +201,13 @@ public class HighlighterPhraseTest exten
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
-
- FieldType customType = new FieldType(TextField.TYPE_STORED);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectors(true);
- document.add(new Field(FIELD, TEXT, customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, TEXT);
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -245,13 +240,13 @@ public class HighlighterPhraseTest exten
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectorPositions(true);
- customType.setStoreTermVectors(true);
- document.add(new Field(FIELD, new TokenStreamSparse(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new TokenStreamSparse());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterTest.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/HighlighterTest.java Sun Nov 30 11:07:09 2014
@@ -34,11 +34,7 @@ import org.apache.lucene.analysis.*;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.document.Document2;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.StoredField;
-import org.apache.lucene.document.TextField;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
@@ -103,7 +99,7 @@ public class HighlighterTest extends Bas
for (int i = 0; i < hits.scoreDocs.length; i++) {
- Document2 doc = searcher.doc(hits.scoreDocs[i].doc);
+ Document doc = searcher.doc(hits.scoreDocs[i].doc);
String storedField = doc.getString(FIELD_NAME);
TokenStream stream = TokenSources.getAnyTokenStream(searcher
@@ -132,7 +128,7 @@ public class HighlighterTest extends Bas
QueryScorer scorer = new QueryScorer(query, FIELD_NAME);
Highlighter highlighter = new Highlighter(scorer);
- Document2 doc = searcher.doc(hits.scoreDocs[0].doc);
+ Document doc = searcher.doc(hits.scoreDocs[0].doc);
String storedField = doc.getString(FIELD_NAME);
TokenStream stream = TokenSources.getAnyTokenStream(searcher
@@ -188,7 +184,7 @@ public class HighlighterTest extends Bas
QueryScorer scorer = new QueryScorer(query, FIELD_NAME);
Highlighter highlighter = new Highlighter(scorer);
- Document2 doc = searcher.doc(hits.scoreDocs[0].doc);
+ Document doc = searcher.doc(hits.scoreDocs[0].doc);
String storedField = doc.getString(FIELD_NAME);
TokenStream stream = TokenSources.getAnyTokenStream(searcher
@@ -1822,18 +1818,18 @@ public class HighlighterTest extends Bas
searchIndex();
}
- private Document doc( String f, String v ){
- Document doc = new Document();
- doc.add( new TextField( f, v, Field.Store.YES));
+ private Document doc(IndexWriter writer, String f, String v) {
+ Document doc = writer.newDocument();
+ doc.addLargeText( f, v);
return doc;
}
private void makeIndex() throws IOException {
IndexWriter writer = new IndexWriter(dir, new IndexWriterConfig(new MockAnalyzer(random(), MockTokenizer.WHITESPACE, false)));
- writer.addDocument( doc( "t_text1", "random words for highlighting tests del" ) );
- writer.addDocument( doc( "t_text1", "more random words for second field del" ) );
- writer.addDocument( doc( "t_text1", "random words for highlighting tests del" ) );
- writer.addDocument( doc( "t_text1", "more random words for second field" ) );
+ writer.addDocument( doc( writer, "t_text1", "random words for highlighting tests del" ) );
+ writer.addDocument( doc( writer, "t_text1", "more random words for second field del" ) );
+ writer.addDocument( doc( writer, "t_text1", "random words for highlighting tests del" ) );
+ writer.addDocument( doc( writer, "t_text1", "more random words for second field" ) );
writer.forceMerge(1);
writer.close();
}
@@ -1858,7 +1854,7 @@ public class HighlighterTest extends Bas
TopDocs hits = searcher.search(query, null, 10);
for( int i = 0; i < hits.totalHits; i++ ){
- Document2 doc = searcher.doc(hits.scoreDocs[i].doc);
+ Document doc = searcher.doc(hits.scoreDocs[i].doc);
String result = h.getBestFragment( a, "t_text1", doc.getString("t_text1"));
if (VERBOSE) System.out.println("result:" + result);
assertEquals("more <B>random</B> words for second field", result);
@@ -1941,7 +1937,7 @@ public class HighlighterTest extends Bas
for (String text : texts) {
addDoc(writer, text);
}
- Document2 doc = writer.newDocument();
+ Document doc = writer.newDocument();
doc.addInt(NUMERIC_FIELD_NAME, 1);
writer.addDocument(doc);
@@ -1957,8 +1953,8 @@ public class HighlighterTest extends Bas
doc.addInt(NUMERIC_FIELD_NAME, 7);
writer.addDocument(doc);
- Document childDoc = doc(FIELD_NAME, "child document");
- Document parentDoc = doc(FIELD_NAME, "parent document");
+ Document childDoc = doc(writer, FIELD_NAME, "child document");
+ Document parentDoc = doc(writer, FIELD_NAME, "parent document");
writer.addDocuments(Arrays.asList(childDoc, parentDoc));
writer.forceMerge(1);
@@ -1975,12 +1971,9 @@ public class HighlighterTest extends Bas
super.tearDown();
}
private void addDoc(IndexWriter writer, String text) throws IOException {
- Document d = new Document();
-
- Field f = new TextField(FIELD_NAME, text, Field.Store.YES);
- d.add(f);
+ Document d = writer.newDocument();
+ d.addLargeText(FIELD_NAME, text);
writer.addDocument(d);
-
}
private static Token createToken(String term, int start, int offset)
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/TokenSourcesTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/TokenSourcesTest.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/TokenSourcesTest.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/highlight/TokenSourcesTest.java Sun Nov 30 11:07:09 2014
@@ -27,9 +27,7 @@ import org.apache.lucene.analysis.tokena
import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.TextField;
+import org.apache.lucene.document.FieldTypes;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
@@ -93,12 +91,12 @@ public class TokenSourcesTest extends Lu
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(null));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectors(true);
- customType.setStoreTermVectorOffsets(true);
- document.add(new Field(FIELD, new OverlappingTokenStream(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new OverlappingTokenStream());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -137,13 +135,13 @@ public class TokenSourcesTest extends Lu
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(null));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectors(true);
- customType.setStoreTermVectorOffsets(true);
- customType.setStoreTermVectorPositions(true);
- document.add(new Field(FIELD, new OverlappingTokenStream(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new OverlappingTokenStream());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -182,12 +180,12 @@ public class TokenSourcesTest extends Lu
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(null));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectors(true);
- customType.setStoreTermVectorOffsets(true);
- document.add(new Field(FIELD, new OverlappingTokenStream(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new OverlappingTokenStream());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -226,12 +224,12 @@ public class TokenSourcesTest extends Lu
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(null));
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorOffsets(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectors(true);
- customType.setStoreTermVectorOffsets(true);
- document.add(new Field(FIELD, new OverlappingTokenStream(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new OverlappingTokenStream());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -269,13 +267,13 @@ public class TokenSourcesTest extends Lu
final Directory directory = newDirectory();
final IndexWriter indexWriter = new IndexWriter(directory,
newIndexWriterConfig(null));
+
+ FieldTypes fieldTypes = indexWriter.getFieldTypes();
+ fieldTypes.enableTermVectors(FIELD);
+ fieldTypes.enableTermVectorPositions(FIELD);
try {
- final Document document = new Document();
- FieldType customType = new FieldType(TextField.TYPE_NOT_STORED);
- customType.setStoreTermVectors(true);
- customType.setStoreTermVectorOffsets(false);
- customType.setStoreTermVectorPositions(true);
- document.add(new Field(FIELD, new OverlappingTokenStream(), customType));
+ final Document document = indexWriter.newDocument();
+ document.addLargeText(FIELD, new OverlappingTokenStream());
indexWriter.addDocument(document);
} finally {
indexWriter.close();
@@ -312,11 +310,6 @@ public class TokenSourcesTest extends Lu
public void testPayloads() throws Exception {
Directory dir = newDirectory();
RandomIndexWriter writer = new RandomIndexWriter(random(), dir);
- FieldType myFieldType = new FieldType(TextField.TYPE_NOT_STORED);
- myFieldType.setStoreTermVectors(true);
- myFieldType.setStoreTermVectorOffsets(true);
- myFieldType.setStoreTermVectorPositions(true);
- myFieldType.setStoreTermVectorPayloads(true);
curOffset = 0;
@@ -327,8 +320,13 @@ public class TokenSourcesTest extends Lu
getToken("high")
};
- Document doc = new Document();
- doc.add(new Field("field", new CannedTokenStream(tokens), myFieldType));
+ FieldTypes fieldTypes = writer.getFieldTypes();
+ fieldTypes.enableTermVectors("field");
+ fieldTypes.enableTermVectorOffsets("field");
+ fieldTypes.enableTermVectorPositions("field");
+ fieldTypes.enableTermVectorPayloads("field");
+ Document doc = writer.newDocument();
+ doc.addLargeText("field", new CannedTokenStream(tokens));
writer.addDocument(doc);
IndexReader reader = writer.getReader();
Modified: lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java?rev=1642535&r1=1642534&r2=1642535&view=diff
==============================================================================
--- lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java (original)
+++ lucene/dev/branches/lucene6005/lucene/highlighter/src/test/org/apache/lucene/search/postingshighlight/TestMultiTermHighlighting.java Sun Nov 30 11:07:09 2014
@@ -21,10 +21,6 @@ import org.apache.lucene.analysis.Analyz
import org.apache.lucene.analysis.MockAnalyzer;
import org.apache.lucene.analysis.MockTokenizer;
import org.apache.lucene.document.Document;
-import org.apache.lucene.document.Field;
-import org.apache.lucene.document.FieldType;
-import org.apache.lucene.document.TextField;
-import org.apache.lucene.index.IndexOptions;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.index.RandomIndexWriter;
@@ -69,15 +65,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -121,15 +114,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -173,15 +163,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -225,15 +212,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -286,15 +270,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -396,15 +377,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -449,15 +427,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -492,15 +467,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -533,15 +505,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -575,15 +544,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -616,15 +582,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -658,15 +621,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -700,15 +660,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -743,15 +700,12 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("This is a test.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "This is a test.");
iw.addDocument(doc);
- body.setStringValue("Test a one sentence document.");
+
+ doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
IndexReader ir = iw.getReader();
@@ -787,15 +741,10 @@ public class TestMultiTermHighlighting e
iwc.setMergePolicy(newLogMergePolicy());
RandomIndexWriter iw = new RandomIndexWriter(random(), dir, iwc);
- FieldType offsetsType = new FieldType(TextField.TYPE_STORED);
- offsetsType.setIndexOptions(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS_AND_OFFSETS);
- Field body = new Field("body", "", offsetsType);
- Document doc = new Document();
- doc.add(body);
-
- body.setStringValue("Test a one sentence document.");
+ Document doc = iw.newDocument();
+ doc.addLargeText("body", "Test a one sentence document.");
iw.addDocument(doc);
-
+
IndexReader ir = iw.getReader();
iw.close();