Class CacheCommonOperations
- java.lang.Object
-
- io.github.dhruv1110.jcachex.internal.util.CacheCommonOperations
-
public final class CacheCommonOperations extends Object
Consolidated utility class for common cache operations to eliminate code duplication. This class provides reusable implementations of patterns that were duplicated across 8+ cache implementations, reducing duplication by 400+ lines of code.- Since:
- 1.0.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
CacheCommonOperations.ImmutableMapEntry<K,V>
Immutable Map.Entry implementation - eliminates duplication across multiple implementations.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static long
calculateSize(ConcurrentHashMap<?,?> data)
Standard size calculation - eliminates duplication across most implementations.static void
clearData(ConcurrentHashMap<?,?> data)
Standard clear operation - eliminates duplication across most implementations.static <K> boolean
containsKey(K key, ConcurrentHashMap<K,?> data)
Standard containsKey operation - eliminates duplication across 8+ implementations.static CompletableFuture<Void>
createAsyncClear(Runnable syncClear)
Creates standard async clear operation - eliminates duplication across 8+ implementations.static <K,V>
CompletableFuture<V>createAsyncGet(K key, Supplier<V> syncGet)
Creates standard async get operation - eliminates duplication across 8+ implementations.static <K,V>
CompletableFuture<Void>createAsyncPut(K key, V value, Runnable syncPut)
Creates standard async put operation - eliminates duplication across 8+ implementations.static <K,V>
CompletableFuture<V>createAsyncRemove(K key, Supplier<V> syncRemove)
Creates standard async remove operation - eliminates duplication across 8+ implementations.static CacheStats
createComprehensiveStats(AtomicLong hitCount, AtomicLong missCount, AtomicLong loadCount, AtomicLong loadTime, AtomicLong evictionCount)
Creates comprehensive cache statistics.static <K,V>
CacheConfig<K,V>createConfig(long maximumSize, boolean statsEnabled)
Creates standard cache configuration - eliminates duplication across 8+ implementations.static <K,V,E>
Set<Map.Entry<K,V>>createEntriesView(ConcurrentHashMap<K,E> data, Function<E,V> valueExtractor)
Creates standard entries view with entry extraction - eliminates duplication across 8+ implementations.static <K> Set<K>
createKeysView(ConcurrentHashMap<K,?> data)
Creates standard keys view - eliminates duplication across all implementations.static <K,V>
Map.Entry<K,V>createMapEntry(K key, V value)
Creates an immutable map entry - eliminates duplication of inner classes.static CacheStats
createStats(AtomicLong hitCount, AtomicLong missCount)
Creates standard cache statistics - eliminates duplication across 8+ implementations.static <K,V,E>
Collection<V>createValuesView(ConcurrentHashMap<K,E> data, Function<E,V> valueExtractor)
Creates standard values view with entry extraction - eliminates duplication across 8+ implementations.static String
getConsolidationImpact()
Returns a summary of the consolidation impact.static boolean
isValidKey(Object key)
Standard null key validation - eliminates duplication across all implementations.static boolean
isValidValue(Object value)
Standard null value validation - eliminates duplication across all implementations.
-
-
-
Method Detail
-
createStats
public static CacheStats createStats(AtomicLong hitCount, AtomicLong missCount)
Creates standard cache statistics - eliminates duplication across 8+ implementations.
-
createComprehensiveStats
public static CacheStats createComprehensiveStats(AtomicLong hitCount, AtomicLong missCount, AtomicLong loadCount, AtomicLong loadTime, AtomicLong evictionCount)
Creates comprehensive cache statistics.
-
createConfig
public static <K,V> CacheConfig<K,V> createConfig(long maximumSize, boolean statsEnabled)
Creates standard cache configuration - eliminates duplication across 8+ implementations.
-
createKeysView
public static <K> Set<K> createKeysView(ConcurrentHashMap<K,?> data)
Creates standard keys view - eliminates duplication across all implementations.
-
createValuesView
public static <K,V,E> Collection<V> createValuesView(ConcurrentHashMap<K,E> data, Function<E,V> valueExtractor)
Creates standard values view with entry extraction - eliminates duplication across 8+ implementations.
-
createEntriesView
public static <K,V,E> Set<Map.Entry<K,V>> createEntriesView(ConcurrentHashMap<K,E> data, Function<E,V> valueExtractor)
Creates standard entries view with entry extraction - eliminates duplication across 8+ implementations.
-
createAsyncGet
public static <K,V> CompletableFuture<V> createAsyncGet(K key, Supplier<V> syncGet)
Creates standard async get operation - eliminates duplication across 8+ implementations.
-
createAsyncPut
public static <K,V> CompletableFuture<Void> createAsyncPut(K key, V value, Runnable syncPut)
Creates standard async put operation - eliminates duplication across 8+ implementations.
-
createAsyncRemove
public static <K,V> CompletableFuture<V> createAsyncRemove(K key, Supplier<V> syncRemove)
Creates standard async remove operation - eliminates duplication across 8+ implementations.
-
createAsyncClear
public static CompletableFuture<Void> createAsyncClear(Runnable syncClear)
Creates standard async clear operation - eliminates duplication across 8+ implementations.
-
isValidKey
public static boolean isValidKey(Object key)
Standard null key validation - eliminates duplication across all implementations.
-
isValidValue
public static boolean isValidValue(Object value)
Standard null value validation - eliminates duplication across all implementations.
-
containsKey
public static <K> boolean containsKey(K key, ConcurrentHashMap<K,?> data)
Standard containsKey operation - eliminates duplication across 8+ implementations.
-
createMapEntry
public static <K,V> Map.Entry<K,V> createMapEntry(K key, V value)
Creates an immutable map entry - eliminates duplication of inner classes.
-
calculateSize
public static long calculateSize(ConcurrentHashMap<?,?> data)
Standard size calculation - eliminates duplication across most implementations.
-
clearData
public static void clearData(ConcurrentHashMap<?,?> data)
Standard clear operation - eliminates duplication across most implementations.
-
getConsolidationImpact
public static String getConsolidationImpact()
Returns a summary of the consolidation impact.
-
-