Return-Path: Delivered-To: apmail-jakarta-lucene-dev-archive@www.apache.org Received: (qmail 75870 invoked from network); 19 Feb 2005 15:04:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 19 Feb 2005 15:04:55 -0000 Received: (qmail 98632 invoked by uid 500); 19 Feb 2005 15:04:54 -0000 Delivered-To: apmail-jakarta-lucene-dev-archive@jakarta.apache.org Received: (qmail 98610 invoked by uid 500); 19 Feb 2005 15:04:53 -0000 Mailing-List: contact lucene-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Lucene Developers List" Reply-To: "Lucene Developers List" Delivered-To: mailing list lucene-dev@jakarta.apache.org Received: (qmail 98594 invoked by uid 99); 19 Feb 2005 15:04:53 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from minotaur.apache.org (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Sat, 19 Feb 2005 07:04:52 -0800 Received: (qmail 75835 invoked by uid 65534); 19 Feb 2005 15:04:51 -0000 Message-ID: <20050219150451.75833.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Mailer: svnmailer-1.0.0-dev Date: Sat, 19 Feb 2005 15:04:51 -0000 Subject: svn commit: r154406 - in lucene/java/trunk/src: java/org/apache/lucene/queryParser/MultiFieldQueryParser.java test/org/apache/lucene/queryParser/TestMultiFieldQueryParser.java To: lucene-dev@jakarta.apache.org From: dnaber@apache.org X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N Author: dnaber Date: Sat Feb 19 07:04:49 2005 New Revision: 154406 URL: http://svn.apache.org/viewcvs?view=3Drev&rev=3D154406 Log: fix NullPointerException when parsing phrase query with the new MFQP Modified: lucene/java/trunk/src/java/org/apache/lucene/queryParser/MultiFieldQuer= yParser.java lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestMultiField= QueryParser.java Modified: lucene/java/trunk/src/java/org/apache/lucene/queryParser/MultiFie= ldQueryParser.java URL: http://svn.apache.org/viewcvs/lucene/java/trunk/src/java/org/apache/lu= cene/queryParser/MultiFieldQueryParser.java?view=3Ddiff&r1=3D154405&r2=3D15= 4406 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- lucene/java/trunk/src/java/org/apache/lucene/queryParser/MultiFieldQuer= yParser.java (original) +++ lucene/java/trunk/src/java/org/apache/lucene/queryParser/MultiFieldQuer= yParser.java Sat Feb 19 07:04:49 2005 @@ -57,6 +57,17 @@ this.fields =3D fields; } =20 + protected Query getFieldQuery(String field, String queryText) throws Par= seException { + if (field =3D=3D null) { + Vector clauses =3D new Vector(); + for (int i =3D 0; i < fields.length; i++) + clauses.add(new BooleanClause(super.getFieldQuery(fields[i], query= Text), + BooleanClause.Occur.SHOULD)); + return getBooleanQuery(clauses); + } + return super.getFieldQuery(field, queryText); + } + =20 protected Query getFieldQuery(String field, Analyzer analyzer, String qu= eryText) throws ParseException { if (field =3D=3D null) { Modified: lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestMult= iFieldQueryParser.java URL: http://svn.apache.org/viewcvs/lucene/java/trunk/src/test/org/apache/lu= cene/queryParser/TestMultiFieldQueryParser.java?view=3Ddiff&r1=3D154405&r2= =3D154406 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestMultiField= QueryParser.java (original) +++ lucene/java/trunk/src/test/org/apache/lucene/queryParser/TestMultiField= QueryParser.java Sat Feb 19 07:04:49 2005 @@ -58,6 +58,12 @@ q =3D mfqp.parse("[a TO c] two"); assertEquals("(b:[a TO c] t:[a TO c]) (b:two t:two)", q.toString()); =20 + q =3D mfqp.parse("\"foo bar\""); + assertEquals("b:\"foo bar\" t:\"foo bar\"", q.toString()); + + q =3D mfqp.parse("\"aa bb cc\" \"dd ee\""); + assertEquals("(b:\"aa bb cc\" t:\"aa bb cc\") (b:\"dd ee\" t:\"dd ee\"= )", q.toString()); + // make sure that terms which have a field are not touched: q =3D mfqp.parse("one f:two"); assertEquals("(b:one t:one) f:two", q.toString()); @@ -66,6 +72,8 @@ mfqp.setDefaultOperator(QueryParser.AND_OPERATOR); q =3D mfqp.parse("one two"); assertEquals("+(b:one t:one) +(b:two t:two)", q.toString()); + q =3D mfqp.parse("\"aa bb cc\" \"dd ee\""); + assertEquals("+(b:\"aa bb cc\" t:\"aa bb cc\") +(b:\"dd ee\" t:\"dd ee= \")", q.toString()); =20 } =20 --------------------------------------------------------------------- To unsubscribe, e-mail: lucene-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: lucene-dev-help@jakarta.apache.org