|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.google.common.base.Suppliers
public final class Suppliers
Useful suppliers.
All methods return serializable suppliers as long as they're given serializable parameters.
| Method Summary | ||
|---|---|---|
static
|
compose(Function<? super F,T> function,
Supplier<F> supplier)
Returns a new supplier which is the composition of the provided function and supplier. |
|
static
|
memoize(Supplier<T> delegate)
Returns a supplier which caches the instance retrieved during the first call to get() and returns that value on subsequent calls to
get(). |
|
static
|
memoizeWithExpiration(Supplier<T> delegate,
long duration,
TimeUnit unit)
Returns a supplier that caches the instance supplied by the delegate and removes the cached value after the specified time has passed. |
|
static
|
ofInstance(T instance)
Returns a supplier that always supplies instance. |
|
static
|
synchronizedSupplier(Supplier<T> delegate)
Returns a supplier whose get() method synchronizes on
delegate before calling it, making it thread-safe. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public static <F,T> Supplier<T> compose(Function<? super F,T> function,
Supplier<F> supplier)
supplier, and then applying
function to that value. Note that the resulting supplier will not
call supplier or invoke function until it is called.
public static <T> Supplier<T> memoize(Supplier<T> delegate)
get() and returns that value on subsequent calls to
get(). See:
memoization
The returned supplier is thread-safe. The supplier's serialized form
does not contain the cached value, which will be recalculated when get() is called on the reserialized instance.
public static <T> Supplier<T> memoizeWithExpiration(Supplier<T> delegate,
long duration,
TimeUnit unit)
get() return the cached value if the expiration time has
not passed. After the expiration time, a new value is retrieved, cached,
and returned. See:
memoization
The returned supplier is thread-safe. The supplier's serialized form
does not contain the cached value, which will be recalculated when get() is called on the reserialized instance.
duration - the length of time after a value is created that it
should stop being returned by subsequent get() callsunit - the unit that duration is expressed in
IllegalArgumentException - if duration is not positive
public static <T> Supplier<T> ofInstance(@Nullable
T instance)
instance.
public static <T> Supplier<T> synchronizedSupplier(Supplier<T> delegate)
get() method synchronizes on
delegate before calling it, making it thread-safe.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||