Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.telefonicasoluciones.search.server.util
Class MultiFieldQueryParser  view MultiFieldQueryParser download MultiFieldQueryParser.java

java.lang.Object
  extended byorg.apache.lucene.queryParser.QueryParser
      extended bycom.telefonicasoluciones.search.server.util.MultiFieldQueryParser
All Implemented Interfaces:
org.apache.lucene.queryParser.QueryParserConstants

public class MultiFieldQueryParser
extends org.apache.lucene.queryParser.QueryParser

A QueryParser which constructs queries to search multiple fields.

Version:
$Revision: 1.2 $

Nested Class Summary
 
Nested classes inherited from class org.apache.lucene.queryParser.QueryParser
 
Field Summary
static int NORMAL_FIELD
           
static int PROHIBITED_FIELD
           
static int REQUIRED_FIELD
           
 
Fields inherited from class org.apache.lucene.queryParser.QueryParser
DEFAULT_OPERATOR_AND, DEFAULT_OPERATOR_OR, jj_nt, lookingAhead, token, token_source
 
Fields inherited from interface org.apache.lucene.queryParser.QueryParserConstants
_ESCAPED_CHAR, _NUM_CHAR, _TERM_CHAR, _TERM_START_CHAR, _WHITESPACE, AND, Boost, CARAT, COLON, DEFAULT, EOF, FUZZY_SLOP, LPAREN, MINUS, NOT, NUMBER, OR, PLUS, PREFIXTERM, QUOTED, RangeEx, RANGEEX_END, RANGEEX_GOOP, RANGEEX_QUOTED, RANGEEX_START, RANGEEX_TO, RangeIn, RANGEIN_END, RANGEIN_GOOP, RANGEIN_QUOTED, RANGEIN_START, RANGEIN_TO, RPAREN, TERM, tokenImage, WILDTERM
 
Constructor Summary
MultiFieldQueryParser(org.apache.lucene.queryParser.CharStream stream)
           
MultiFieldQueryParser(org.apache.lucene.queryParser.QueryParserTokenManager tm)
           
MultiFieldQueryParser(java.lang.String f, org.apache.lucene.analysis.Analyzer a)
           
 
Method Summary
static org.apache.lucene.search.Query parse(java.util.HashMap fields, org.apache.lucene.analysis.Analyzer analyzer)
           
static org.apache.lucene.search.Query parse(java.lang.String query, java.lang.String[] fields, org.apache.lucene.analysis.Analyzer analyzer)
           Parses a query which searches on the fields specified.
static org.apache.lucene.search.Query parse(java.lang.String query, java.lang.String[] fields, int[] flags, org.apache.lucene.analysis.Analyzer analyzer)
           Parses a query, searching on the fields specified.
 
Methods inherited from class org.apache.lucene.queryParser.QueryParser
addClause, Clause, Conjunction, disable_tracing, enable_tracing, escape, generateParseException, getAnalyzer, getBooleanQuery, getField, getFieldQuery, getFieldQuery, getFieldQuery, getFieldQuery, getFuzzyMinSim, getFuzzyQuery, getFuzzyQuery, getLocale, getLowercaseWildcardTerms, getNextToken, getOperator, getPhraseSlop, getPrefixQuery, getRangeQuery, getRangeQuery, getToken, getWildcardQuery, main, Modifiers, parse, parse, Query, ReInit, ReInit, setFuzzyMinSim, setLocale, setLowercaseWildcardTerms, setOperator, setPhraseSlop, Term
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NORMAL_FIELD

public static final int NORMAL_FIELD
See Also:
Constant Field Values

REQUIRED_FIELD

public static final int REQUIRED_FIELD
See Also:
Constant Field Values

PROHIBITED_FIELD

public static final int PROHIBITED_FIELD
See Also:
Constant Field Values
Constructor Detail

MultiFieldQueryParser

public MultiFieldQueryParser(org.apache.lucene.queryParser.QueryParserTokenManager tm)

MultiFieldQueryParser

public MultiFieldQueryParser(org.apache.lucene.queryParser.CharStream stream)

MultiFieldQueryParser

public MultiFieldQueryParser(java.lang.String f,
                             org.apache.lucene.analysis.Analyzer a)
Method Detail

parse

public static org.apache.lucene.search.Query parse(java.lang.String query,
                                                   java.lang.String[] fields,
                                                   org.apache.lucene.analysis.Analyzer analyzer)
                                            throws org.apache.lucene.queryParser.ParseException

Parses a query which searches on the fields specified.

If x fields are specified, this effectively constructs:

 
 (field1:query) (field2:query) (field3:query)...(fieldx:query)
 
 


parse

public static org.apache.lucene.search.Query parse(java.lang.String query,
                                                   java.lang.String[] fields,
                                                   int[] flags,
                                                   org.apache.lucene.analysis.Analyzer analyzer)
                                            throws org.apache.lucene.queryParser.ParseException

Parses a query, searching on the fields specified. Use this if you need to specify certain fields as required, and others as prohibited.

 Usage:
 
 String[] fields = {"filename", "contents", "description"};
 int[] flags = {MultiFieldQueryParser.NORMAL FIELD,
                MultiFieldQueryParser.REQUIRED FIELD,
                MultiFieldQueryParser.PROHIBITED FIELD,};
 parse(query, fields, flags, analyzer);
 
 

The code above would construct a query:

 
 (filename:query) +(contents:query) -(description:query)
 
 


parse

public static org.apache.lucene.search.Query parse(java.util.HashMap fields,
                                                   org.apache.lucene.analysis.Analyzer analyzer)
                                            throws org.apache.lucene.queryParser.ParseException