Interface Expiry<K,​V>

    • Method Detail

      • getExpiryForCreation

        Duration getExpiryForCreation​(K key,
                                      V value)
        Deprecated.
        Returns the lifetime of an entry when it is initially added to a Cache.

        This method must not return null.

        Exceptions thrown from this method will be swallowed and result in the expiry duration being ZERO.

        Parameters:
        key - the key of the newly added entry
        value - the value of the newly added entry
        Returns:
        a non-null Duration
      • getExpiryForAccess

        Duration getExpiryForAccess​(K key,
                                    ValueSupplier<? extends V> value)
        Deprecated.
        Returns the expiration Duration (relative to the current time) when an existing entry is accessed from a Cache.

        Returning null indicates that the expiration time remains unchanged.

        Exceptions thrown from this method will be swallowed and result in the expiry duration being ZERO.

        Parameters:
        key - the key of the accessed entry
        value - a value supplier for the accessed entry
        Returns:
        an expiration Duration, null means unchanged
      • getExpiryForUpdate

        Duration getExpiryForUpdate​(K key,
                                    ValueSupplier<? extends V> oldValue,
                                    V newValue)
        Deprecated.
        Returns the expiration Duration (relative to the current time) when an existing entry is updated in a Cache.

        Returning null indicates that the expiration time remains unchanged.

        Exceptions thrown from this method will be swallowed and result in the expiry duration being ZERO.

        Parameters:
        key - the key of the updated entry
        oldValue - a value supplier for the previous value of the entry
        newValue - the new value of the entry
        Returns:
        an expiration Duration, null means unchanged