blob: a6e823c2665938ad8fd6f4a2bd5a61a5e5661442 [file] [log] [blame]
Index: src/java/org/apache/lucene/search/BooleanQuery.java
===================================================================
--- src/java/org/apache/lucene/search/BooleanQuery.java (revision 826188)
+++ src/java/org/apache/lucene/search/BooleanQuery.java (working copy)
@@ -62,7 +62,7 @@
BooleanQuery.maxClauseCount = maxClauseCount;
}
- private ArrayList clauses = new ArrayList();
+ private ArrayList<BooleanClause> clauses = new ArrayList<BooleanClause>();
private boolean disableCoord;
/** Constructs an empty boolean query. */
@@ -158,11 +158,11 @@
/** Returns the set of clauses in this query. */
public BooleanClause[] getClauses() {
- return (BooleanClause[])clauses.toArray(new BooleanClause[clauses.size()]);
+ return clauses.toArray(new BooleanClause[clauses.size()]);
}
/** Returns the list of clauses in this query. */
- public List clauses() { return clauses; }
+ public List<BooleanClause> clauses() { return clauses; }
/**
* Expert: the Weight for BooleanQuery, used to
@@ -174,12 +174,12 @@
protected class BooleanWeight extends Weight {
/** The Similarity implementation. */
protected Similarity similarity;
- protected ArrayList weights;
+ protected ArrayList<Weight> weights;
public BooleanWeight(Searcher searcher)
throws IOException {
this.similarity = getSimilarity(searcher);
- weights = new ArrayList(clauses.size());
+ weights = new ArrayList<Weight>(clauses.size());
for (int i = 0 ; i < clauses.size(); i++) {
BooleanClause c = (BooleanClause)clauses.get(i);
weights.add(c.getQuery().createWeight(searcher));
@@ -209,8 +209,7 @@
public void normalize(float norm) {
norm *= getBoost(); // incorporate boost
- for (Iterator iter = weights.iterator(); iter.hasNext();) {
- Weight w = (Weight) iter.next();
+ for (Weight w : weights) {
// normalize all clauses, (even if prohibited in case of side affects)
w.normalize(norm);
}
@@ -227,9 +226,10 @@
float sum = 0.0f;
boolean fail = false;
int shouldMatchCount = 0;
- for (Iterator wIter = weights.iterator(), cIter = clauses.iterator(); wIter.hasNext();) {
- Weight w = (Weight) wIter.next();
- BooleanClause c = (BooleanClause) cIter.next();
+ Iterator<BooleanClause> cIter = clauses.iterator();
+ for (Iterator<Weight> wIter = weights.iterator(); wIter.hasNext();) {
+ Weight w = wIter.next();
+ BooleanClause c = cIter.next();
if (w.scorer(reader, true, true) == null) {
continue;
}
@@ -289,12 +289,12 @@
public Scorer scorer(IndexReader reader, boolean scoreDocsInOrder, boolean topScorer)
throws IOException {
- List required = new ArrayList();
- List prohibited = new ArrayList();
- List optional = new ArrayList();
- for (Iterator wIter = weights.iterator(), cIter = clauses.iterator(); wIter.hasNext();) {
- Weight w = (Weight) wIter.next();
- BooleanClause c = (BooleanClause) cIter.next();
+ List<Scorer> required = new ArrayList<Scorer>();
+ List<Scorer> prohibited = new ArrayList<Scorer>();
+ List<Scorer> optional = new ArrayList<Scorer>();
+ Iterator<BooleanClause> cIter = clauses.iterator();
+ for (Weight w : weights) {
+ BooleanClause c = cIter.next();
Scorer subScorer = w.scorer(reader, true, false);
if (subScorer == null) {
if (c.isRequired()) {
@@ -330,8 +330,7 @@
public boolean scoresDocsOutOfOrder() {
int numProhibited = 0;
- for (Iterator cIter = clauses.iterator(); cIter.hasNext();) {
- BooleanClause c = (BooleanClause) cIter.next();
+ for (BooleanClause c : clauses) {
if (c.isRequired()) {
return false; // BS2 (in-order) will be used by scorer()
} else if (c.isProhibited()) {
@@ -372,7 +371,7 @@
BooleanQuery clone = null; // recursively rewrite
for (int i = 0 ; i < clauses.size(); i++) {
- BooleanClause c = (BooleanClause)clauses.get(i);
+ BooleanClause c = clauses.get(i);
Query query = c.getQuery().rewrite(reader);
if (query != c.getQuery()) { // clause rewrote: must clone
if (clone == null)
@@ -388,15 +387,14 @@
// inherit javadoc
public void extractTerms(Set<Term> terms) {
- for (Iterator i = clauses.iterator(); i.hasNext();) {
- BooleanClause clause = (BooleanClause) i.next();
+ for (BooleanClause clause : clauses) {
clause.getQuery().extractTerms(terms);
}
}
public Object clone() {
BooleanQuery clone = (BooleanQuery)super.clone();
- clone.clauses = (ArrayList)this.clauses.clone();
+ clone.clauses = (ArrayList<BooleanClause>)this.clauses.clone();
return clone;
}
@@ -409,7 +407,7 @@
}
for (int i = 0 ; i < clauses.size(); i++) {
- BooleanClause c = (BooleanClause)clauses.get(i);
+ BooleanClause c = clauses.get(i);
if (c.isProhibited())
buffer.append("-");
else if (c.isRequired())