Package com.linkedin.venice.utils.lazy
Class LazyImpl<T>
- java.lang.Object
-
- com.linkedin.venice.utils.lazy.LazyImpl<T>
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Optional<T>
filter(java.util.function.Predicate<? super T> predicate)
If a value is initialized, and the value matches the given predicate, return anOptional
describing the value, otherwise return an emptyOptional
.<U> java.util.Optional<U>
flatMap(java.util.function.Function<? super T,java.util.Optional<U>> mapper)
If a value is initialized, apply the providedOptional
-bearing mapping function to it, return that result, otherwise return an emptyOptional
.T
get()
Returns the object wrapped by this instance.void
ifPresent(java.util.function.Consumer<? super T> consumer)
boolean
isPresent()
<U> java.util.Optional<U>
map(java.util.function.Function<? super T,? extends U> mapper)
If a value is initialized, apply the provided mapping function to it, and if the result is non-null, return anOptional
describing the result.T
orElse(T other)
Return the value if initialized, otherwise returnother
.T
orElseGet(java.util.function.Supplier<? extends T> other)
Return the value if initialized, otherwise invokeother
and return the result of that invocation.<X extends java.lang.Throwable>
TorElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier)
Return the contained value, if initialized, otherwise throw an exception to be created by the provided supplier.
-
-
-
Method Detail
-
get
public T get()
Returns the object wrapped by this instance. On first access the object is created. After that it is cached and can be accessed pretty fast.
-
ifPresent
public void ifPresent(java.util.function.Consumer<? super T> consumer)
-
isPresent
public boolean isPresent()
-
filter
public java.util.Optional<T> filter(java.util.function.Predicate<? super T> predicate)
Description copied from interface:Lazy
If a value is initialized, and the value matches the given predicate, return anOptional
describing the value, otherwise return an emptyOptional
.
-
map
public <U> java.util.Optional<U> map(java.util.function.Function<? super T,? extends U> mapper)
Description copied from interface:Lazy
If a value is initialized, apply the provided mapping function to it, and if the result is non-null, return anOptional
describing the result. Otherwise return an emptyOptional
.- Specified by:
map
in interfaceLazy<T>
- Type Parameters:
U
- The type of the result of the mapping function- Parameters:
mapper
- a mapping function to apply to the value, if initialized- Returns:
- an
Optional
describing the result of applying a mapping function to the value of thisOptional
, if a value is initialized, otherwise an emptyOptional
-
flatMap
public <U> java.util.Optional<U> flatMap(java.util.function.Function<? super T,java.util.Optional<U>> mapper)
Description copied from interface:Lazy
If a value is initialized, apply the providedOptional
-bearing mapping function to it, return that result, otherwise return an emptyOptional
. This method is similar toLazy.map(Function)
, but the provided mapper is one whose result is already anOptional
, and if invoked,flatMap
does not wrap it with an additionalOptional
.- Specified by:
flatMap
in interfaceLazy<T>
- Type Parameters:
U
- The type parameter to theOptional
returned by the mapping function- Parameters:
mapper
- a mapping function to apply to the value, if initialized- Returns:
- the result of applying an
Optional
-bearing mapping function to the value of thisOptional
, if a value is initialized, otherwise an emptyOptional
-
orElse
public T orElse(T other)
Description copied from interface:Lazy
Return the value if initialized, otherwise returnother
.
-
orElseGet
public T orElseGet(java.util.function.Supplier<? extends T> other)
Description copied from interface:Lazy
Return the value if initialized, otherwise invokeother
and return the result of that invocation.
-
orElseThrow
public <X extends java.lang.Throwable> T orElseThrow(java.util.function.Supplier<? extends X> exceptionSupplier) throws X extends java.lang.Throwable
Description copied from interface:Lazy
Return the contained value, if initialized, otherwise throw an exception to be created by the provided supplier.- Specified by:
orElseThrow
in interfaceLazy<T>
- Type Parameters:
X
- Type of the exception to be thrown- Parameters:
exceptionSupplier
- The supplier which will return the exception to be thrown- Returns:
- the initialized value
- Throws:
X
- if there is no value initializedX extends java.lang.Throwable
-
-