Class ExpiringMemoizingSupplier<T>

  • All Implemented Interfaces:
    java.util.function.Supplier<T>

    public class ExpiringMemoizingSupplier<T>
    extends java.lang.Object
    implements java.util.function.Supplier<T>
    An implementation similar to Guava's Suppliers.memoizeWithExpiration(Supplier) but allowing for memoization to be skipped. See CASSANDRA-16148
    • Method Detail

      • memoizeWithExpiration

        public static <T> java.util.function.Supplier<T> memoizeWithExpiration​(java.util.function.Supplier<ExpiringMemoizingSupplier.ReturnValue<T>> delegate,
                                                                               long duration,
                                                                               java.util.concurrent.TimeUnit unit)
      • get

        public T get()
        Specified by:
        get in interface java.util.function.Supplier<T>
      • expire

        public void expire()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object