Return-Path: Delivered-To: apmail-lucene-java-commits-archive@www.apache.org Received: (qmail 16310 invoked from network); 28 Dec 2009 14:27:39 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 28 Dec 2009 14:27:39 -0000 Received: (qmail 9716 invoked by uid 500); 28 Dec 2009 14:27:38 -0000 Delivered-To: apmail-lucene-java-commits-archive@lucene.apache.org Received: (qmail 9644 invoked by uid 500); 28 Dec 2009 14:27:38 -0000 Mailing-List: contact java-commits-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-dev@lucene.apache.org Delivered-To: mailing list java-commits@lucene.apache.org Received: (qmail 9635 invoked by uid 99); 28 Dec 2009 14:27:38 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Dec 2009 14:27:38 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Dec 2009 14:27:36 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 193D123889D7; Mon, 28 Dec 2009 14:27:15 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r894180 - in /lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext: ExtendableQueryParser.java ExtensionQuery.java Date: Mon, 28 Dec 2009 14:27:14 -0000 To: java-commits@lucene.apache.org From: simonw@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20091228142715.193D123889D7@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: simonw Date: Mon Dec 28 14:27:14 2009 New Revision: 894180 URL: http://svn.apache.org/viewvc?rev=894180&view=rev Log: LUCENE-2162: Allow ExtendableQueryParser extensions accessing the toplevel parser and its properties Modified: lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtendableQueryParser.java lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtensionQuery.java Modified: lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtendableQueryParser.java URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtendableQueryParser.java?rev=894180&r1=894179&r2=894180&view=diff ============================================================================== --- lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtendableQueryParser.java (original) +++ lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtendableQueryParser.java Mon Dec 28 14:27:14 2009 @@ -133,7 +133,7 @@ final ParserExtension extension = this.extensions .getExtension(splitExtensionField.cud); if (extension != null) { - return extension.parse(new ExtensionQuery(splitExtensionField.cur, + return extension.parse(new ExtensionQuery(this, splitExtensionField.cur, queryText)); } return super.getFieldQuery(field, queryText); Modified: lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtensionQuery.java URL: http://svn.apache.org/viewvc/lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtensionQuery.java?rev=894180&r1=894179&r2=894180&view=diff ============================================================================== --- lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtensionQuery.java (original) +++ lucene/java/trunk/contrib/misc/src/java/org/apache/lucene/queryParser/ext/ExtensionQuery.java Mon Dec 28 14:27:14 2009 @@ -1,5 +1,7 @@ package org.apache.lucene.queryParser.ext; +import org.apache.lucene.queryParser.QueryParser; + /** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with @@ -29,6 +31,7 @@ private final String field; private final String rawQueryString; + private final QueryParser topLevelParser; /** * Creates a new {@link ExtensionQuery} @@ -38,9 +41,10 @@ * @param rawQueryString * the raw extension query string */ - public ExtensionQuery(String field, String rawQueryString) { + public ExtensionQuery(QueryParser topLevelParser, String field, String rawQueryString) { this.field = field; this.rawQueryString = rawQueryString; + this.topLevelParser = topLevelParser; } /** @@ -60,4 +64,12 @@ public String getRawQueryString() { return rawQueryString; } + + /** + * Returns the top level parser which created this {@link ExtensionQuery} + * @return the top level parser which created this {@link ExtensionQuery} + */ + public QueryParser getTopLevelParser() { + return topLevelParser; + } }