org.apache.lucene.search.payloads

## Class PayloadTermQuery

- java.lang.Object
- - org.apache.lucene.search.Query
  - - org.apache.lucene.search.spans.SpanQuery
    - - org.apache.lucene.search.spans.SpanTermQuery
      - - org.apache.lucene.search.payloads.PayloadTermQuery

All Implemented Interfaces:
  Cloneable

    public class PayloadTermQuery
    extends SpanTermQuery

This class is very similar to `SpanTermQuery` except that it factors in the value of the payload located at each of the positions where the `Term` 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

Nested Classes
`protected class` `PayloadTermQuery.PayloadTermWeight`

### Field Summary

Fields
`protected PayloadFunction` `function`

### Fields inherited from class org.apache.lucene.search.spans.SpanTermQuery

`term`

### Constructor Summary

Constructors
Constructor and Description
`PayloadTermQuery(Term term, PayloadFunction function)`
`PayloadTermQuery(Term term, PayloadFunction function, boolean includeSpanScore)`

### Method Summary

Methods
`Weight` `createWeight(IndexSearcher searcher)` Expert: Constructs an appropriate Weight implementation for this query.
`boolean` `equals(Object obj)`
`int` `hashCode()`

### Methods inherited from class org.apache.lucene.search.spans.SpanTermQuery

`extractTerms, getField, getSpans, getTerm, toString`

### Methods inherited from class org.apache.lucene.search.Query

`clone, getBoost, rewrite, setBoost, toString`

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### function

    protected PayloadFunction function

### Constructor Detail

#### PayloadTermQuery

    public PayloadTermQuery(Term term,
                    PayloadFunction function)

#### PayloadTermQuery

    public PayloadTermQuery(Term term,
                    PayloadFunction function,
                    boolean includeSpanScore)

### 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`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `SpanTermQuery`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `SpanTermQuery`