Class CaffeineCacheBuilder

java.lang.Object
org.jdbi.v3.cache.caffeine.CaffeineCacheBuilder
All Implemented Interfaces:
JdbiCacheBuilder

public final class CaffeineCacheBuilder extends Object implements JdbiCacheBuilder
Cache builder using the caffeine caching library.
  • Constructor Details

    • CaffeineCacheBuilder

      public CaffeineCacheBuilder(com.github.benmanes.caffeine.cache.Caffeine<Object,Object> caffeine)
      Wraps an existing Caffeine object for Jdbi internal use.
      Parameters:
      caffeine - A Caffeine object.
  • Method Details

    • instance

      public static JdbiCacheBuilder instance()
      Returns a new JdbiCacheBuilder which can be used to construct the internal caches.
      Returns:
      A JdbiCacheBuilder instance.
    • build

      public <K, V> JdbiCache<K,V> build()
      Description copied from interface: JdbiCacheBuilder
      Creates an cache instance from the values in the builder.
      Specified by:
      build in interface JdbiCacheBuilder
      Returns:
      A cache instance.
    • buildWithLoader

      public <K, V> JdbiCache<K,V> buildWithLoader(JdbiCacheLoader<K,V> cacheLoader)
      Description copied from interface: JdbiCacheBuilder
      Creates an cache instance from the values in the builder and a supplied cache loader.
      Specified by:
      buildWithLoader in interface JdbiCacheBuilder
      Parameters:
      cacheLoader - A JdbiCacheLoader instance that is used to create a new value if no value is currently stored in the cache.
    • maxSize

      public JdbiCacheBuilder maxSize(int maxSize)
      Description copied from interface: JdbiCacheBuilder
      Sets an upper boundary to the cache size.
      Specified by:
      maxSize in interface JdbiCacheBuilder
      Parameters:
      maxSize - Sets the maximum size of the cache. If the value is zero or negative, the cache is unbounded.
      Returns:
      The instance of the builder itself.