org.apache.lucene.search.function
Class ValueSource

java.lang.Object
  extended by org.apache.lucene.search.function.ValueSource
All Implemented Interfaces:
Serializable
Direct Known Subclasses:
FieldCacheSource, OrdFieldSource, ReverseOrdFieldSource

public abstract class ValueSource
extends Object
implements Serializable

Expert: source of values for basic function queries.

At its default/simplest form, values - one per doc - are used as the score of that doc.

Values are instantiated as DocValues for a particular reader.

ValueSource implementations differ in RAM requirements: it would always be a factor of the number of documents, but for each document the number of bytes can be 1, 2, 4, or 8.

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

Constructor Summary
ValueSource()
           
 
Method Summary
abstract  String description()
          description of field, used in explain()
abstract  boolean equals(Object o)
          Needed for possible caching of query results - used by ValueSourceQuery.equals(Object).
abstract  DocValues getValues(IndexReader reader)
          Return the DocValues used by the function query.
abstract  int hashCode()
          Needed for possible caching of query results - used by ValueSourceQuery.hashCode().
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ValueSource

public ValueSource()
Method Detail

getValues

public abstract DocValues getValues(IndexReader reader)
                             throws IOException
Return the DocValues used by the function query.

Parameters:
reader - the IndexReader used to read these values. If any caching is involved, that caching would also be IndexReader based.
Throws:
IOException - for any error.

description

public abstract String description()
description of field, used in explain()


toString

public String toString()
Overrides:
toString in class Object

equals

public abstract boolean equals(Object o)
Needed for possible caching of query results - used by ValueSourceQuery.equals(Object).

Overrides:
equals in class Object
See Also:
Object.equals(Object)

hashCode

public abstract int hashCode()
Needed for possible caching of query results - used by ValueSourceQuery.hashCode().

Overrides:
hashCode in class Object
See Also:
Object.hashCode()