Class Cache5.Builder<K1,K2,K3,K4,K5,V>
java.lang.Object
org.apache.juneau.commons.collections.Cache5.Builder<K1,K2,K3,K4,K5,V>
- Type Parameters:
K1- The first key type.K2- The second key type.K3- The third key type.K4- The fourth key type.K5- The fifth key type.V- The value type.
Builder for creating configured
Cache5 instances.-
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds a newCache5instance with the configured settings.Sets the caching mode for this cache.Conditionally enables logging of cache statistics when the JVM exits.Enables logging of cache statistics when the JVM exits.maxSize(int value) Specifies the maximum number of entries allowed in this cache.Specifies the default supplier function for computing values when keys are not found.Enables thread-local caching.weak()Sets the caching mode toWEAK.
-
Method Details
-
build
Builds a newCache5instance with the configured settings.- Returns:
- A new immutable
Cache5instance.
-
cacheMode
Sets the caching mode for this cache.Available modes:
NONE- No caching (always invoke supplier)WEAK- Weak caching (usesWeakHashMap)FULL- Full caching (usesConcurrentHashMap, default)
- Parameters:
value- The caching mode.- Returns:
- This object for method chaining.
-
logOnExit
Conditionally enables logging of cache statistics when the JVM exits.When enabled, the cache will register a shutdown hook that logs the cache name, total cache hits, and total cache misses (size of cache) to help analyze cache effectiveness.
- Parameters:
value- Whether to enable logging on exit.idValue- The identifier to use in the log message.- Returns:
- This object for method chaining.
-
logOnExit
Enables logging of cache statistics when the JVM exits.- Parameters:
value- The identifier to use in the log message.- Returns:
- This object for method chaining.
-
maxSize
Specifies the maximum number of entries allowed in this cache.- Parameters:
value- The maximum number of cache entries. Must be positive.- Returns:
- This object for method chaining.
-
supplier
Specifies the default supplier function for computing values when keys are not found.- Parameters:
value- The default supplier function. Can benull .- Returns:
- This object for method chaining.
-
threadLocal
Enables thread-local caching.When enabled, each thread gets its own separate cache instance. This is useful for thread-unsafe objects that need to be cached per thread.
This is a shortcut for wrapping a cache in a
ThreadLocal, but provides a cleaner API.- Returns:
- This object for method chaining.
- See Also:
-
weak
Sets the caching mode toWEAK.This is a shortcut for calling
cacheMode(CacheMode.WEAK) .Weak caching uses
WeakHashMapfor storage, allowing cache entries to be garbage collected when keys are no longer strongly referenced elsewhere.- Returns:
- This object for method chaining.
- See Also:
-