Index: lucene/facet/src/java/org/apache/lucene/facet/index/DrillDownStream.java =================================================================== --- lucene/facet/src/java/org/apache/lucene/facet/index/DrillDownStream.java (revision 1561317) +++ lucene/facet/src/java/org/apache/lucene/facet/index/DrillDownStream.java (working copy) @@ -1,7 +1,6 @@ package org.apache.lucene.facet.index; import java.io.IOException; -import java.util.Iterator; import org.apache.lucene.analysis.TokenStream; import org.apache.lucene.analysis.tokenattributes.CharTermAttribute; @@ -33,7 +32,7 @@ public class DrillDownStream extends TokenStream { private final FacetIndexingParams indexingParams; - private final Iterator categories; + private final Iterable categories; private final CharTermAttribute termAttribute; private CategoryPath current; @@ -41,7 +40,7 @@ public DrillDownStream(Iterable categories, FacetIndexingParams indexingParams) { termAttribute = addAttribute(CharTermAttribute.class); - this.categories = categories.iterator(); + this.categories = categories; this.indexingParams = indexingParams; } @@ -53,10 +52,10 @@ @Override public final boolean incrementToken() throws IOException { if (current.length == 0) { - if (!categories.hasNext()) { + if (!categories.iterator().hasNext()) { return false; // no more categories } - current = categories.next(); + current = categories.iterator().next(); termAttribute.resizeBuffer(current.fullPathLength()); isParent = false; } @@ -75,7 +74,7 @@ @Override public void reset() throws IOException { - current = categories.next(); + current = categories.iterator().next(); termAttribute.resizeBuffer(current.fullPathLength()); isParent = false; }