You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jp...@apache.org on 2012/11/04 22:09:00 UTC
svn commit: r1405639 - in /lucene/dev/trunk/lucene:
core/src/java/org/apache/lucene/document/
core/src/java/org/apache/lucene/index/ core/src/java/org/apache/lucene/util/
core/src/test/org/apache/lucene/index/
core/src/test/org/apache/lucene/util/ test...
Author: jpountz
Date: Sun Nov 4 21:08:59 2012
New Revision: 1405639
URL: http://svn.apache.org/viewvc?rev=1405639&view=rev
Log:
LUCENE-4519: remove generics wildcards from the return types of IndexDocument methods.
Modified:
lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/document/Document.java
lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/IndexDocument.java
lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/util/FilterIterator.java
lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java
lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/util/TestFilterIterator.java
lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/index/FieldFilterAtomicReader.java
Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/document/Document.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/document/Document.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/document/Document.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/document/Document.java Sun Nov 4 21:08:59 2012
@@ -138,9 +138,8 @@ public final class Document implements I
*/
public final BytesRef[] getBinaryValues(String name) {
final List<BytesRef> result = new ArrayList<BytesRef>();
- Iterator<Field> it = storedFieldsIterator();
-
- while (it.hasNext()) {
+
+ for (Iterator<StorableField> it = storedFieldsIterator(); it.hasNext(); ) {
StorableField field = it.next();
if (field.name().equals(name)) {
final BytesRef bytes = field.binaryValue();
@@ -163,9 +162,7 @@ public final class Document implements I
* @return a <code>BytesRef</code> containing the binary field value or <code>null</code>
*/
public final BytesRef getBinaryValue(String name) {
- Iterator<Field> it = storedFieldsIterator();
-
- while (it.hasNext()) {
+ for (Iterator<StorableField> it = storedFieldsIterator(); it.hasNext(); ) {
StorableField field = it.next();
if (field.name().equals(name)) {
final BytesRef bytes = field.binaryValue();
@@ -235,9 +232,8 @@ public final class Document implements I
*/
public final String[] getValues(String name) {
List<String> result = new ArrayList<String>();
- Iterator<Field> it = storedFieldsIterator();
-
- while (it.hasNext()) {
+
+ for (Iterator<StorableField> it = storedFieldsIterator(); it.hasNext(); ) {
StorableField field = it.next();
if (field.name().equals(name) && field.stringValue() != null) {
result.add(field.stringValue());
@@ -260,9 +256,7 @@ public final class Document implements I
* the actual numeric field instance back, use {@link #getField}.
*/
public final String get(String name) {
- Iterator<Field> it = storedFieldsIterator();
-
- while (it.hasNext()) {
+ for (Iterator<StorableField> it = storedFieldsIterator(); it.hasNext(); ) {
StorableField field = it.next();
if (field.name().equals(name) && field.stringValue() != null) {
return field.stringValue();
@@ -288,29 +282,28 @@ public final class Document implements I
/** Obtains all indexed fields in document */
@Override
- public Iterable<? extends IndexableField> indexableFields() {
- return new Iterable<Field>() {
+ public Iterable<IndexableField> indexableFields() {
+ return new Iterable<IndexableField>() {
@Override
- public Iterator<Field> iterator() {
+ public Iterator<IndexableField> iterator() {
return Document.this.indexedFieldsIterator();
}
};
}
-
/** Obtains all stored fields in document. */
@Override
- public Iterable<? extends StorableField> storableFields() {
- return new Iterable<Field>() {
+ public Iterable<StorableField> storableFields() {
+ return new Iterable<StorableField>() {
@Override
- public Iterator<Field> iterator() {
+ public Iterator<StorableField> iterator() {
return Document.this.storedFieldsIterator();
}
};
}
- private Iterator<Field> storedFieldsIterator() {
- return new FilterIterator<Field>(fields.iterator()) {
+ private Iterator<StorableField> storedFieldsIterator() {
+ return new FilterIterator<StorableField, Field>(fields.iterator()) {
@Override
protected boolean predicateFunction(Field field) {
return field.type.stored() || field.type.docValueType() != null;
@@ -318,8 +311,8 @@ public final class Document implements I
};
}
- private Iterator<Field> indexedFieldsIterator() {
- return new FilterIterator<Field>(fields.iterator()) {
+ private Iterator<IndexableField> indexedFieldsIterator() {
+ return new FilterIterator<IndexableField, Field>(fields.iterator()) {
@Override
protected boolean predicateFunction(Field field) {
return field.type.indexed();
Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/IndexDocument.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/IndexDocument.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/IndexDocument.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/IndexDocument.java Sun Nov 4 21:08:59 2012
@@ -24,8 +24,8 @@ package org.apache.lucene.index;
public interface IndexDocument {
/** Obtains all indexable fields in document */
- public Iterable<? extends IndexableField> indexableFields();
+ public Iterable<IndexableField> indexableFields();
/** Obtains all storable fields in document */
- public Iterable<? extends StorableField> storableFields();
+ public Iterable<StorableField> storableFields();
}
Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/util/FilterIterator.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/util/FilterIterator.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/util/FilterIterator.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/util/FilterIterator.java Sun Nov 4 21:08:59 2012
@@ -1,8 +1,5 @@
package org.apache.lucene.util;
-import java.util.Iterator;
-import java.util.NoSuchElementException;
-
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with this
@@ -20,20 +17,26 @@ import java.util.NoSuchElementException;
* the License.
*/
+import java.util.Iterator;
+import java.util.NoSuchElementException;
+
/**
* An {@link Iterator} implementation that filters elements with a boolean predicate.
+ *
+ * @param <T> generic parameter for this iterator instance: this iterator implements {@link Iterator Iterator<T>}
+ * @param <InnerT> generic parameter of the wrapped iterator, must be <tt>T</tt> or extend <tt>T</tt>
* @see #predicateFunction
*/
-public abstract class FilterIterator<T> implements Iterator<T> {
+public abstract class FilterIterator<T, InnerT extends T> implements Iterator<T> {
- private final Iterator<T> iterator;
+ private final Iterator<InnerT> iterator;
private T next = null;
private boolean nextIsSet = false;
/** returns true, if this element should be returned by {@link #next()}. */
- protected abstract boolean predicateFunction(T object);
+ protected abstract boolean predicateFunction(InnerT object);
- public FilterIterator(Iterator<T> baseIterator) {
+ public FilterIterator(Iterator<InnerT> baseIterator) {
this.iterator = baseIterator;
}
@@ -60,7 +63,7 @@ public abstract class FilterIterator<T>
private boolean setNext() {
while (iterator.hasNext()) {
- final T object = iterator.next();
+ final InnerT object = iterator.next();
if (predicateFunction(object)) {
next = object;
nextIsSet = true;
Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java Sun Nov 4 21:08:59 2012
@@ -1568,7 +1568,7 @@ public class TestIndexWriterExceptions e
List<StorableField> storedList = new ArrayList<StorableField>();
@Override
- public Iterable<? extends IndexableField> indexableFields() {
+ public Iterable<IndexableField> indexableFields() {
if (list.size() == 0) {
list.add(new IndexableField() {
@Override
@@ -1596,7 +1596,7 @@ public class TestIndexWriterExceptions e
}
@Override
- public Iterable<? extends StorableField> storableFields() {
+ public Iterable<StorableField> storableFields() {
return storedList;
}
Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexableField.java Sun Nov 4 21:08:59 2012
@@ -185,7 +185,7 @@ public class TestIndexableField extends
IndexDocument d = new IndexDocument() {
@Override
- public Iterable<? extends IndexableField> indexableFields() {
+ public Iterable<IndexableField> indexableFields() {
return new Iterable<IndexableField>() {
@Override
public Iterator<IndexableField> iterator() {
@@ -230,7 +230,7 @@ public class TestIndexableField extends
}
@Override
- public Iterable<? extends StorableField> storableFields() {
+ public Iterable<StorableField> storableFields() {
return new Iterable<StorableField>() {
@Override
public Iterator<StorableField> iterator() {
Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/util/TestFilterIterator.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/util/TestFilterIterator.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/util/TestFilterIterator.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/util/TestFilterIterator.java Sun Nov 4 21:08:59 2012
@@ -39,7 +39,7 @@ public class TestFilterIterator extends
}
public void testEmpty() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return false;
@@ -49,7 +49,7 @@ public class TestFilterIterator extends
}
public void testA1() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return "a".equals(s);
@@ -61,7 +61,7 @@ public class TestFilterIterator extends
}
public void testA2() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return "a".equals(s);
@@ -73,7 +73,7 @@ public class TestFilterIterator extends
}
public void testB1() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return "b".equals(s);
@@ -85,7 +85,7 @@ public class TestFilterIterator extends
}
public void testB2() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return "b".equals(s);
@@ -97,7 +97,7 @@ public class TestFilterIterator extends
}
public void testAll1() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return true;
@@ -113,7 +113,7 @@ public class TestFilterIterator extends
}
public void testAll2() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return true;
@@ -126,7 +126,7 @@ public class TestFilterIterator extends
}
public void testUnmodifiable() {
- final Iterator<String> it = new FilterIterator<String>(set.iterator()) {
+ final Iterator<String> it = new FilterIterator<String, String>(set.iterator()) {
@Override
protected boolean predicateFunction(String s) {
return true;
Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/index/FieldFilterAtomicReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/index/FieldFilterAtomicReader.java?rev=1405639&r1=1405638&r2=1405639&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/index/FieldFilterAtomicReader.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/index/FieldFilterAtomicReader.java Sun Nov 4 21:08:59 2012
@@ -146,7 +146,7 @@ public final class FieldFilterAtomicRead
@Override
public Iterator<String> iterator() {
- return new FilterIterator<String>(super.iterator()) {
+ return new FilterIterator<String, String>(super.iterator()) {
@Override
protected boolean predicateFunction(String field) {
return hasField(field);