SolrPluginUtils.DisjunctionMaxQueryParser (Solr 3.6.2 API)
Keywords: org.apache.solr.util.SolrPluginUtils.DisjunctionMaxQueryParser class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.solr.util
Class SolrPluginUtils.DisjunctionMaxQueryParser

    java.lang.Object
      org.apache.lucene.queryParser.QueryParser
          org.apache.solr.search.SolrQueryParser
              org.apache.solr.util.SolrPluginUtils.DisjunctionMaxQueryParser

All Implemented Interfaces:
  QueryParserConstants

Enclosing class:
  SolrPluginUtils

    public static class SolrPluginUtils.DisjunctionMaxQueryParser

extends SolrQueryParser

A subclass of SolrQueryParser that supports aliasing fields for constructing DisjunctionMaxQueries.

Nested Class Summary
`protected static class` | `SolrPluginUtils.DisjunctionMaxQueryParser.Alias` A simple container for storing alias info

Nested classes/interfaces inherited from class org.apache.solr.search.SolrQueryParser
`SolrQueryParser.MagicFieldName`

Nested classes/interfaces inherited from class org.apache.lucene.queryParser.QueryParser
`QueryParser.Operator`

Field Summary
`protected Map<String,SolrPluginUtils.DisjunctionMaxQueryParser.Alias>` | `aliases` Where we store a map from field name we expect to see in our query string, to Alias object containing the fields to use in our DisjunctionMaxQuery and the tiebreaker to use.

Fields inherited from class org.apache.solr.search.SolrQueryParser
`defaultField, parser, schema`

Fields inherited from class org.apache.lucene.queryParser.QueryParser
`AND_OPERATOR, jj_nt, OR_OPERATOR, token, token_source`

Fields inherited from interface org.apache.lucene.queryParser.QueryParserConstants
`_ESCAPED_CHAR, _NUM_CHAR, _QUOTED_CHAR, _TERM_CHAR, _TERM_START_CHAR, _WHITESPACE, AND, BAREOPER, 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, STAR, TERM, tokenImage, WILDTERM`

Constructor Summary
`SolrPluginUtils.DisjunctionMaxQueryParser(IndexSchema s)`
`SolrPluginUtils.DisjunctionMaxQueryParser(IndexSchema s, String defaultField)`
`SolrPluginUtils.DisjunctionMaxQueryParser(QParser qp, String defaultField)`

Method Summary
`void` | `addAlias(String field, float tiebreaker, Map<String,Float> fieldBoosts)` Add an alias to this query parser.
`protected Query` | `getFieldQuery(String field, String queryText, boolean quoted)` Delegates to the super class unless the field has been specified as an alias -- in which case we recurse on each of the aliased fields, and the results are composed into a DisjunctionMaxQuery.

Methods inherited from class org.apache.solr.search.SolrQueryParser
`analyzeIfMultitermTermText, getPrefixQuery, getRangeQuery, getReversedWildcardFilterFactory, getWildcardQuery`

Methods inherited from class org.apache.lucene.queryParser.QueryParser
`addClause, Clause, Conjunction, disable_tracing, enable_tracing, escape, generateParseException, getAllowLeadingWildcard, getAnalyzer, getAutoGeneratePhraseQueries, getBooleanQuery, getBooleanQuery, getDateResolution, getDefaultOperator, getEnablePositionIncrements, getField, getFieldQuery, getFieldQuery, getFuzzyMinSim, getFuzzyPrefixLength, getFuzzyQuery, getLocale, getLowercaseExpandedTerms, getMultiTermRewriteMethod, getNextToken, getPhraseSlop, getRangeCollator, getToken, main, Modifiers, newBooleanClause, newBooleanQuery, newFuzzyQuery, newMatchAllDocsQuery, newMultiPhraseQuery, newPhraseQuery, newPrefixQuery, newRangeQuery, newTermQuery, newWildcardQuery, parse, Query, ReInit, ReInit, setAllowLeadingWildcard, setAutoGeneratePhraseQueries, setDateResolution, setDateResolution, setDefaultOperator, setEnablePositionIncrements, setFuzzyMinSim, setFuzzyPrefixLength, setLocale, setLowercaseExpandedTerms, setMultiTermRewriteMethod, setPhraseSlop, setRangeCollator, Term, TopLevelQuery`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### aliases

    protected Map<String,SolrPluginUtils.DisjunctionMaxQueryParser.Alias> aliases

  Where we store a map from field name we expect to see in our query string, to Alias object containing the fields to use in our DisjunctionMaxQuery and the tiebreaker to use.

Constructor Detail

### SolrPluginUtils.DisjunctionMaxQueryParser

    public SolrPluginUtils.DisjunctionMaxQueryParser(QParser qp,
                                                     String defaultField)

### SolrPluginUtils.DisjunctionMaxQueryParser

    public SolrPluginUtils.DisjunctionMaxQueryParser(IndexSchema s,
                                                     String defaultField)

### SolrPluginUtils.DisjunctionMaxQueryParser

    public SolrPluginUtils.DisjunctionMaxQueryParser(IndexSchema s)

Method Detail

### addAlias

    public void addAlias(String field,
                         float tiebreaker,
                         Map<String,Float> fieldBoosts)

  Add an alias to this query parser.

  Parameters:
    `field` - the field name that should trigger alias mapping
    `fieldBoosts` - the mapping from fieldname to boost value that should be used to build up the clauses of the DisjunctionMaxQuery.
    `tiebreaker` - to the tiebreaker to be used in the DisjunctionMaxQuery
  See Also:
    `SolrPluginUtils.parseFieldBoosts(java.lang.String)`

### getFieldQuery

    protected Query getFieldQuery(String field,
                                  String queryText,
                                  boolean quoted)
                           throws ParseException

  Delegates to the super class unless the field has been specified as an alias -- in which case we recurse on each of the aliased fields, and the results are composed into a DisjunctionMaxQuery. (so yes: aliases which point at other aliases should work)

  Overrides:
    `getFieldQuery` in class `SolrQueryParser`
  Throws:
    `ParseException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD