public abstract class LiveFieldValues<S,T> extends Object implements ReferenceManager.RefreshListener, Closeable
NOTE: you must ensure the same id is never updated at the same time by two threads, because in this case you cannot in general know which thread "won".
| Constructor and Description |
|---|
LiveFieldValues(ReferenceManager<S> mgr,
T missingValue)
The missingValue must be non-null.
|
| Modifier and Type | Method and Description |
|---|---|
void |
add(String id,
T value)
Call this after you've successfully added a document
to the index, to record what value you just set the
field to.
|
void |
afterRefresh(boolean didRefresh)
Called after the attempted refresh; if the refresh
did open a new reference then didRefresh will be true
and
ReferenceManager.acquire() is guaranteed to return the new
reference. |
void |
beforeRefresh()
Called right before a refresh attempt starts.
|
void |
close() |
void |
delete(String id)
Call this after you've successfully deleted a document
from the index.
|
T |
get(String id)
Returns the current value for this id, or null if the
id isn't in the index or was deleted.
|
protected abstract T |
lookupFromSearcher(S s,
String id)
This is called when the id/value was already flushed and opened
in an NRT IndexSearcher.
|
int |
size()
Returns the [approximate] number of id/value pairs
buffered in RAM.
|
public LiveFieldValues(ReferenceManager<S> mgr, T missingValue)
public void close()
close in interface Closeableclose in interface AutoCloseablepublic void beforeRefresh()
throws IOException
ReferenceManager.RefreshListenerbeforeRefresh in interface ReferenceManager.RefreshListenerIOExceptionpublic void afterRefresh(boolean didRefresh)
throws IOException
ReferenceManager.RefreshListenerReferenceManager.acquire() is guaranteed to return the new
reference.afterRefresh in interface ReferenceManager.RefreshListenerIOExceptionpublic void add(String id, T value)
public void delete(String id)
public int size()
public T get(String id) throws IOException
IOExceptionprotected abstract T lookupFromSearcher(S s, String id) throws IOException
IOExceptionCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.