## org.apache.lucene.search.payloads
Class PayloadNearQuery

    java.lang.Object
      org.apache.lucene.search.Query
          org.apache.lucene.search.spans.SpanQuery
              org.apache.lucene.search.spans.SpanNearQuery
                  org.apache.lucene.search.payloads.PayloadNearQuery

All Implemented Interfaces:
  Cloneable

    public class PayloadNearQuery

extends SpanNearQuery

This class is very similar to `SpanNearQuery` except that it factors in the value of the payloads located at each of the positions where the `TermSpans` occurs.

NOTE: In order to take advantage of this with the default scoring implementation (`DefaultSimilarity`), you must override `DefaultSimilarity.scorePayload(int, int, int, BytesRef)`, which returns 1 by default.

Payload scores are aggregated using a pluggable `PayloadFunction`.

See Also:
  `Similarity.SloppySimScorer.computePayloadFactor(int, int, int, BytesRef)`

Nested Class Summary
`class` `PayloadNearQuery.PayloadNearSpanScorer`
`class` `PayloadNearQuery.PayloadNearSpanWeight`

Field Summary
`protected String` `fieldName`
`protected PayloadFunction` `function`

Fields inherited from class org.apache.lucene.search.spans.SpanNearQuery
`clauses, field, inOrder, slop`

Constructor Summary
`PayloadNearQuery(SpanQuery[] clauses, int slop, boolean inOrder)`
`PayloadNearQuery(SpanQuery[] clauses, int slop, boolean inOrder, PayloadFunction function)`

Method Summary
`PayloadNearQuery` `clone()` Returns a clone of this query.
`Weight` `createWeight(IndexSearcher searcher)` Expert: Constructs an appropriate Weight implementation for this query.
`boolean` `equals(Object obj)` Returns true iff `o` is equal to this.
`int` `hashCode()`
`String` `toString(String field)` Prints a query to a string, with `field` assumed to be the default field and omitted.

Methods inherited from class org.apache.lucene.search.spans.SpanNearQuery
`extractTerms, getClauses, getField, getSlop, getSpans, isInOrder, rewrite`

Methods inherited from class org.apache.lucene.search.Query
`getBoost, setBoost, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### fieldName

    protected String fieldName

### function

    protected PayloadFunction function

Constructor Detail

### PayloadNearQuery

    public PayloadNearQuery(SpanQuery[] clauses,
                            int slop,
                            boolean inOrder)

### PayloadNearQuery

    public PayloadNearQuery(SpanQuery[] clauses,
                            int slop,
                            boolean inOrder,
                            PayloadFunction function)

Method Detail

### createWeight

    public Weight createWeight(IndexSearcher searcher)
                        throws IOException

  Description copied from class: `Query`
  Expert: Constructs an appropriate Weight implementation for this query.

  Only implemented by primitive queries, which re-write to themselves.

  Overrides:
    `createWeight` in class `SpanQuery`
  Throws:
    `IOException`

### clone

    public PayloadNearQuery clone()

  Description copied from class: `Query`
  Returns a clone of this query.

  Overrides:
    `clone` in class `SpanNearQuery`

### toString

    public String toString(String field)

  Description copied from class: `Query`
  Prints a query to a string, with `field` assumed to be the default field and omitted.

  Overrides:
    `toString` in class `SpanNearQuery`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `SpanNearQuery`

### equals

    public boolean equals(Object obj)

  Description copied from class: `SpanNearQuery`
  Returns true iff `o` is equal to this.

  Overrides:
    `equals` in class `SpanNearQuery`

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.