public class IntFieldSource extends FieldCacheSource
FieldCache
using getInts()
and makes those values
available as other numeric types, casting as needed.for requirements
on the field.
NOTE: with the switch in 2.9 to segment-based
searching, if {@link #getValues} is invoked with a
composite (multi-segment) reader, this can easily cause
double RAM usage for the values in the FieldCache. It's
best to switch your application to pass only atomic
(single segment) readers to this API.
,
Serialized FormConstructor and Description |
---|
IntFieldSource(String field)
Create a cached int field source with default string-to-int parser.
|
IntFieldSource(String field,
FieldCache.IntParser parser)
Create a cached int field source with a specific string-to-int parser.
|
Modifier and Type | Method and Description |
---|---|
boolean |
cachedFieldSourceEquals(FieldCacheSource o)
Check if equals to another
FieldCacheSource , already knowing that cache and field are equal. |
int |
cachedFieldSourceHashCode()
Return a hash code of a
FieldCacheSource , without the hash-codes of the field
and the cache (those are taken care of elsewhere). |
String |
description()
description of field, used in explain()
|
DocValues |
getCachedFieldValues(FieldCache cache,
String field,
IndexReader reader)
Return cached DocValues for input field and reader.
|
equals, getValues, hashCode
toString
public IntFieldSource(String field)
public IntFieldSource(String field, FieldCache.IntParser parser)
public String description()
ValueSource
description
in class FieldCacheSource
public DocValues getCachedFieldValues(FieldCache cache, String field, IndexReader reader) throws IOException
FieldCacheSource
getCachedFieldValues
in class FieldCacheSource
cache
- FieldCache so that values of a field are loaded once per reader (RAM allowing)field
- Field for which values are required.IOException
ValueSource
public boolean cachedFieldSourceEquals(FieldCacheSource o)
FieldCacheSource
FieldCacheSource
, already knowing that cache and field are equal.cachedFieldSourceEquals
in class FieldCacheSource
Object.equals(java.lang.Object)
public int cachedFieldSourceHashCode()
FieldCacheSource
FieldCacheSource
, without the hash-codes of the field
and the cache (those are taken care of elsewhere).cachedFieldSourceHashCode
in class FieldCacheSource
Object.hashCode()