Class CacheLIRS.Builder<K,V>

java.lang.Object
org.apache.jackrabbit.oak.cache.CacheLIRS.Builder<K,V>
Enclosing class:
CacheLIRS<K,V>

@Deprecated(since="2022-12-01") public static class CacheLIRS.Builder<K,V> extends Object
Deprecated.
The Jackrabbit Oak Cache library is designed for Oak-internal use only and thus deprecated. It will not be part of the AEM SDK after April 2023.
A builder for the cache.
  • Constructor Details

    • Builder

      public Builder()
      Deprecated.
  • Method Details

    • recordStats

      public CacheLIRS.Builder<K,V> recordStats()
      Deprecated.
    • module

      public CacheLIRS.Builder<K,V> module(String module)
      Deprecated.
    • weigher

      public CacheLIRS.Builder<K,V> weigher(org.apache.jackrabbit.guava.common.cache.Weigher<K,V> weigher)
      Deprecated.
      Set the weigher which is used if memory usage of an entry is not explicitly set (when adding entries).
      Parameters:
      weigher - the weigher
      Returns:
      this
    • maximumWeight

      public CacheLIRS.Builder<K,V> maximumWeight(long maxWeight)
      Deprecated.
      Set the total maximum weight. If the cache is heavier, then entries are evicted.
      Parameters:
      maxWeight - the maximum weight
      Returns:
      this
    • averageWeight

      public CacheLIRS.Builder<K,V> averageWeight(int averageWeight)
      Deprecated.
      Set the average weight of an entry. This is used, together with the maximum weight, to calculate the length of the internal array of the cache. For higher performance, the weight should be set relatively low, at the cost of some space. To save space, the average weight should be set high, at the cost of some performance.
      Parameters:
      averageWeight - the average weight
      Returns:
      this
    • maximumSize

      public CacheLIRS.Builder<K,V> maximumSize(long maxSize)
      Deprecated.
      Set the maximum size (in number of entries). This is the same as setting the average weight of an entry to 1, and the maximum weight to the maximum size.
      Parameters:
      maxSize - the maximum size
      Returns:
      this
    • segmentCount

      public CacheLIRS.Builder<K,V> segmentCount(int segmentCount)
      Deprecated.
    • stackMoveDistance

      public CacheLIRS.Builder<K,V> stackMoveDistance(int stackMoveDistance)
      Deprecated.
      How many other item are to be moved to the top of the stack before the current item is moved. The default is 16. Using higher values will avoid re-ordering in many cases, so less time is spent reordering. But this somewhat reduces cache hit rate, and eviction will become more random. Typically, cache hit rate can be improved by using smaller values, and access performance can be improved using larger values. Using values larger than 128 is not recommended.
    • evictionCallback

      public CacheLIRS.Builder<K,V> evictionCallback(CacheLIRS.EvictionCallback<K,V> evicted)
      Deprecated.
    • build

      public CacheLIRS<K,V> build()
      Deprecated.
    • build

      public CacheLIRS<K,V> build(org.apache.jackrabbit.guava.common.cache.CacheLoader<K,V> cacheLoader)
      Deprecated.