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

## org.apache.lucene.search.similarities
Class PerFieldSimilarityWrapper

    java.lang.Object
      org.apache.lucene.search.similarities.Similarity
          org.apache.lucene.search.similarities.PerFieldSimilarityWrapper

    public abstract class PerFieldSimilarityWrapper

extends Similarity

Provides the ability to use a different `Similarity` for different fields.

Subclasses should implement `get(String)` to return an appropriate Similarity (for example, using field-specific parameter values) for the field.

WARNING: This API is experimental and might change in incompatible ways in the next release.

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.lucene.search.similarities.Similarity
`Similarity.ExactSimScorer, Similarity.SimWeight, Similarity.SloppySimScorer`

Constructor Summary
`PerFieldSimilarityWrapper()` Sole constructor.

Method Summary
`long` | `computeNorm(FieldInvertState state)` Computes the normalization value for a field, given the accumulated state of term processing for this field (see `FieldInvertState`).
`Similarity.SimWeight` | `computeWeight(float queryBoost, CollectionStatistics collectionStats, TermStatistics... termStats)` Compute any collection-level weight (e.g.
`Similarity.ExactSimScorer` | `exactSimScorer(Similarity.SimWeight weight, AtomicReaderContext context)` Creates a new `Similarity.ExactSimScorer` to score matching documents from a segment of the inverted index.
`abstract Similarity` | `get(String name)` Returns a `Similarity` for scoring a field.
`Similarity.SloppySimScorer` | `sloppySimScorer(Similarity.SimWeight weight, AtomicReaderContext context)` Creates a new `Similarity.SloppySimScorer` to score matching documents from a segment of the inverted index.

Methods inherited from class org.apache.lucene.search.similarities.Similarity
`coord, queryNorm`

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

Constructor Detail

### PerFieldSimilarityWrapper

    public PerFieldSimilarityWrapper()

  Sole constructor. (For invocation by subclass constructors, typically implicit.)

Method Detail

### computeNorm

    public final long computeNorm(FieldInvertState state)

  Description copied from class: `Similarity`
  Computes the normalization value for a field, given the accumulated state of term processing for this field (see `FieldInvertState`).

  Matches in longer fields are less precise, so implementations of this method usually set smaller values when `state.getLength()` is large, and larger values when `state.getLength()` is small.

  Specified by:
    `computeNorm` in class `Similarity`
  Parameters:
    `state` - current processing state for this field
  Returns:
    computed norm value

### computeWeight

    public final Similarity.SimWeight computeWeight(float queryBoost,
                                                    CollectionStatistics collectionStats,
                                                    TermStatistics... termStats)

  Description copied from class: `Similarity`
  Compute any collection-level weight (e.g. IDF, average document length, etc) needed for scoring a query.

  Specified by:
    `computeWeight` in class `Similarity`
  Parameters:
    `queryBoost` - the query-time boost.
    `collectionStats` - collection-level statistics, such as the number of tokens in the collection.
    `termStats` - term-level statistics, such as the document frequency of a term across the collection.
  Returns:
    SimWeight object with the information this Similarity needs to score a query.

### exactSimScorer

    public final Similarity.ExactSimScorer exactSimScorer(Similarity.SimWeight weight,
                                                          AtomicReaderContext context)
                                                   throws IOException

  Description copied from class: `Similarity`
  Creates a new `Similarity.ExactSimScorer` to score matching documents from a segment of the inverted index.

  Specified by:
    `exactSimScorer` in class `Similarity`
  Parameters:
    `weight` - collection information from `Similarity.computeWeight(float, CollectionStatistics, TermStatistics...)`
    `context` - segment of the inverted index to be scored.
  Returns:
    ExactSimScorer for scoring documents across `context`
  Throws:
    `IOException` - if there is a low-level I/O error

### sloppySimScorer

    public final Similarity.SloppySimScorer sloppySimScorer(Similarity.SimWeight weight,
                                                            AtomicReaderContext context)
                                                     throws IOException

  Description copied from class: `Similarity`
  Creates a new `Similarity.SloppySimScorer` to score matching documents from a segment of the inverted index.

  Specified by:
    `sloppySimScorer` in class `Similarity`
  Parameters:
    `weight` - collection information from `Similarity.computeWeight(float, CollectionStatistics, TermStatistics...)`
    `context` - segment of the inverted index to be scored.
  Returns:
    SloppySimScorer for scoring documents across `context`
  Throws:
    `IOException` - if there is a low-level I/O error

### get

    public abstract Similarity get(String name)

  Returns a `Similarity` for scoring a field.

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

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