You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Steven Parkes (JIRA)" <ji...@apache.org> on 2007/03/02 01:33:50 UTC

[jira] Commented: (LUCENE-796) Change Visibility of fields[] in MultiFieldQueryParser

    [ https://issues.apache.org/jira/browse/LUCENE-796?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12477147 ] 

Steven Parkes commented on LUCENE-796:
--------------------------------------

This code is a little bit twisted; took me a while to figure out how it was working.

I'm wondering what you want to do with the variables if they're available ... not that I'm terribly against making them protected (or adding gettter/setters), but I see another issue here.

The code right now takes two paths: if you pass a field, it just calls QP via super. If you don't pass a field, it loops through each of the fields it has, which I suspect is usually what one wants. But in this loop, it also calls super, which means you don't get a chance in your derived class to override it again. I think it would make more sense to not call super in the loop case. So derived classes can get access to the call both when no field is passed and when each field is passed.

Out of curiosity, would this do anything for you? If these were to be made protected, would you just be writing the loop yourself?

> Change Visibility of fields[] in MultiFieldQueryParser
> ------------------------------------------------------
>
>                 Key: LUCENE-796
>                 URL: https://issues.apache.org/jira/browse/LUCENE-796
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: QueryParser
>    Affects Versions: 2.1
>         Environment: not important
>            Reporter: Oliver Hummel
>             Fix For: 2.2
>
>
> In MultiFieldQueryParser the two methods 
>   protected Query getFuzzyQuery(String field, String termStr, float minSimilarity) throws ParseException
>   protected Query getWildcardQuery(String field, String termStr) throws ParseException
> are intended to be overwritten if one would like to avoid fuzzy and wildcard queries. However, the String[] fields attribute of this class is private and hence it is not accessible in subclasses of MFQParser. If you just change it to protected this issue should be solved.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org