KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > lucene > search > WildcardQuery


1 package org.apache.lucene.search;
2
3 /**
4  * Copyright 2004 The Apache Software Foundation
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */

18
19 import org.apache.lucene.index.IndexReader;
20 import org.apache.lucene.index.Term;
21 import java.io.IOException JavaDoc;
22
23 /** Implements the wildcard search query. Supported wildcards are <code>*</code>, which
24  * matches any character sequence (including the empty one), and <code>?</code>,
25  * which matches any single character. Note this query can be slow, as it
26  * needs to iterate over many terms. In order to prevent extremely slow WildcardQueries,
27  * a Wildcard term should not start with one of the wildcards <code>*</code> or
28  * <code>?</code>.
29  *
30  * @see WildcardTermEnum
31  */

32 public class WildcardQuery extends MultiTermQuery {
33   public WildcardQuery(Term term) {
34     super(term);
35   }
36
37   protected FilteredTermEnum getEnum(IndexReader reader) throws IOException JavaDoc {
38     return new WildcardTermEnum(reader, getTerm());
39   }
40
41   public boolean equals(Object JavaDoc o) {
42     if (o instanceof WildcardQuery)
43       return super.equals(o);
44
45     return false;
46   }
47 }
48
Popular Tags