public abstract class CachedValueBase<T>
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
protected static class |
CachedValueBase.Data<T> |
Modifier | Constructor and Description |
---|---|
protected |
CachedValueBase(boolean trackValue) |
Modifier and Type | Method and Description |
---|---|
void |
clear() |
protected abstract <P> CachedValueProvider.Result<T> |
doCompute(P param) |
protected long |
getTimeStamp(java.lang.Object dependency) |
CachedValueBase.Data<T> |
getUpToDateOrNull() |
abstract java.lang.Object |
getValueProvider() |
protected <P> T |
getValueWithLock(P param) |
boolean |
hasUpToDateValue() |
protected boolean |
isDependencyOutOfDate(java.lang.Object dependency,
long oldTimeStamp) |
abstract boolean |
isFromMyProject(Project project) |
protected boolean |
isUpToDate(CachedValueBase.Data data) |
protected java.lang.Object [] |
normalizeDependencies(CachedValueProvider.Result<T> result) |
T |
setValue(CachedValueProvider.Result<T> result) |
java.lang.String |
toString() |
protected java.lang.Object [] normalizeDependencies(CachedValueProvider.Result<T> result)
public void clear()
public boolean hasUpToDateValue()
public final CachedValueBase.Data<T> getUpToDateOrNull()
protected boolean isUpToDate(CachedValueBase.Data data)
protected boolean isDependencyOutOfDate(java.lang.Object dependency, long oldTimeStamp)
protected long getTimeStamp(java.lang.Object dependency)
public T setValue(CachedValueProvider.Result<T> result)
public abstract boolean isFromMyProject(Project project)
public abstract java.lang.Object getValueProvider()
protected <P> T getValueWithLock(P param)
protected abstract <P> CachedValueProvider.Result<T> doCompute(P param)
public java.lang.String toString()
toString
in class java.lang.Object