Paul Taylor wrote:
For backwards compatabiity I have to change queries for the track field to the recording field. I did this by overriding QueryParser.newQuery() as follows

protected Query newTermQuery(Term term) {
       if ( term.field() == "track" ) {
           return super.newTermQuery(new Term("recording"term.text()));
       }
       else {
           return super.newTermQuery(term);
       }
   }

this seemed to work, but then I realised it didnt work for phrasequeries so I have to override QueryParser.newPhraseQuery() but now thinking will fail for wilcard queries ectera. Is there just one method I can override to deal with this.

FYI, did this instead and seems to work

protected Query getFieldQuery(String field, String queryText) throws ParseException {
       if( field.equals("track") {
           field=RecordingIndexField.RECORDING.getName();
       }
       return super.getFieldQuery(field,queryText);
}

---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-user-h...@lucene.apache.org

Reply via email to