Class LazyResettableImpl<C>

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected Lazy<C> lazy  
      • Fields inherited from interface com.linkedin.venice.utils.lazy.Lazy

        FALSE, TRUE
    • Constructor Summary

      Constructors 
      Constructor Description
      LazyResettableImpl​(java.util.function.Supplier<C> supplier)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Optional<C> filter​(java.util.function.Predicate<? super C> predicate)
      If a value is initialized, and the value matches the given predicate, return an Optional describing the value, otherwise return an empty Optional.
      <U> java.util.Optional<U> flatMap​(java.util.function.Function<? super C,​java.util.Optional<U>> mapper)
      If a value is initialized, apply the provided Optional-bearing mapping function to it, return that result, otherwise return an empty Optional.
      C get()  
      void ifPresent​(java.util.function.Consumer<? super C> consumer)  
      boolean isPresent()  
      <U> java.util.Optional<U> map​(java.util.function.Function<? super C,​? extends U> mapper)
      If a value is initialized, apply the provided mapping function to it, and if the result is non-null, return an Optional describing the result.
      C orElse​(C other)
      Return the value if initialized, otherwise return other.
      C orElseGet​(java.util.function.Supplier<? extends C> other)
      Return the value if initialized, otherwise invoke other and return the result of that invocation.
      <X extends java.lang.Throwable>
      C
      orElseThrow​(java.util.function.Supplier<? extends X> exceptionSupplier)
      Return the contained value, if initialized, otherwise throw an exception to be created by the provided supplier.
      void reset()
      Returns to the uninitialized state.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • lazy

        protected Lazy<C> lazy
    • Constructor Detail

      • LazyResettableImpl

        public LazyResettableImpl​(java.util.function.Supplier<C> supplier)
    • Method Detail

      • get

        public C get()
        Specified by:
        get in interface Lazy<C>
        Returns:
        the wrapped value, with the side-effect of initializing it has not happened yet
      • ifPresent

        public void ifPresent​(java.util.function.Consumer<? super C> consumer)
        Specified by:
        ifPresent in interface Lazy<C>
        Parameters:
        consumer - to pass the wrapped value to, only if it has already been initialized
      • isPresent

        public boolean isPresent()
        Specified by:
        isPresent in interface Lazy<C>
        Returns:
        true if there is a value present (i.e. initialized), otherwise false
      • filter

        public java.util.Optional<C> filter​(java.util.function.Predicate<? super C> predicate)
        Description copied from interface: Lazy
        If a value is initialized, and the value matches the given predicate, return an Optional describing the value, otherwise return an empty Optional.
        Specified by:
        filter in interface Lazy<C>
        Parameters:
        predicate - a predicate to apply to the value, if initialized
        Returns:
        an Optional describing the value of this Optional if a value is present and the value matches the given predicate, otherwise an empty Optional
      • map

        public <U> java.util.Optional<U> map​(java.util.function.Function<? super C,​? 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 an Optional describing the result. Otherwise return an empty Optional.
        Specified by:
        map in interface Lazy<C>
        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 this Optional, if a value is initialized, otherwise an empty Optional
      • flatMap

        public <U> java.util.Optional<U> flatMap​(java.util.function.Function<? super C,​java.util.Optional<U>> mapper)
        Description copied from interface: Lazy
        If a value is initialized, apply the provided Optional-bearing mapping function to it, return that result, otherwise return an empty Optional. This method is similar to Lazy.map(Function), but the provided mapper is one whose result is already an Optional, and if invoked, flatMap does not wrap it with an additional Optional.
        Specified by:
        flatMap in interface Lazy<C>
        Type Parameters:
        U - The type parameter to the Optional 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 this Optional, if a value is initialized, otherwise an empty Optional
      • orElse

        public C orElse​(C other)
        Description copied from interface: Lazy
        Return the value if initialized, otherwise return other.
        Specified by:
        orElse in interface Lazy<C>
        Parameters:
        other - the value to be returned if there is no value initialized, may be null
        Returns:
        the value, if initialized, otherwise other
      • orElseGet

        public C orElseGet​(java.util.function.Supplier<? extends C> other)
        Description copied from interface: Lazy
        Return the value if initialized, otherwise invoke other and return the result of that invocation.
        Specified by:
        orElseGet in interface Lazy<C>
        Parameters:
        other - a Supplier whose result is returned if no value is initialized
        Returns:
        the value if initialized otherwise the result of other.get()
      • orElseThrow

        public <X extends java.lang.Throwable> C 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 interface Lazy<C>
        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 initialized
        X extends java.lang.Throwable