Index
All Classes and Interfaces|All Packages|Serialized Form
B
- build(ICacheSpec<K, V>) - Method in interface io.github.xanthic.cache.api.CacheProvider
-
Builds a new
Cache
instance according to the supplied specification
C
- Cache<K,
V> - Interface in io.github.xanthic.cache.api -
The basic interface that various cache implementations must provide.
- CacheProvider - Interface in io.github.xanthic.cache.api
-
Creates
Cache
instances using some backing implementation - clear() - Method in interface io.github.xanthic.cache.api.Cache
-
Removes all entries from the cache.
- compute(K, BiFunction<? super K, ? super V, ? extends V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Computes what value should be associated with the specified key, or null if the mapping should be removed.
- computeIfAbsent(K, Function<K, V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Obtains the value currently associated with the specified key, or atomically stores the computed value if no prior mapping existed.
- computeIfPresent(K, BiFunction<? super K, ? super V, ? extends V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Computes a new value for a specific key, if a mapping already existed.
E
- executor() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The scheduler used by the cache.
- expiryTime() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The entry expiry time.
- expiryType() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The entry expiration policy.
- ExpiryType - Enum Class in io.github.xanthic.cache.api.domain
-
The type of expiration policy to use.
F
- forEach(BiConsumer<? super K, ? super V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Performs the specified action upon all entries within the cache.
G
- get(K) - Method in interface io.github.xanthic.cache.api.Cache
-
Obtains the value associated with the specified key.
- getOrDefault(K, V) - Method in interface io.github.xanthic.cache.api.Cache
-
Obtains the value associated with the specified key, or the passed default value if no mapping existed.
H
- highContention() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The forecasted contention of the cache.
I
- ICacheSpec<K,
V> - Interface in io.github.xanthic.cache.api -
Cache configuration settings that form a specification that requested implementations should satisfy.
- IGNORE - Enum constant in enum class io.github.xanthic.cache.api.domain.MisconfigurationPolicy
-
Attempts to ignore specification issues when building caches.
- io.github.xanthic.cache.api - package io.github.xanthic.cache.api
- io.github.xanthic.cache.api.domain - package io.github.xanthic.cache.api.domain
- io.github.xanthic.cache.api.exception - package io.github.xanthic.cache.api.exception
- isEviction() - Method in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
Whether the removal can be classified as an eviction (typically size-based or time-based)
M
- MANUAL - Enum constant in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
The entry was fully removed from the cache.
- maxSize() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The maximum capacity of the cache.
- merge(K, V, BiFunction<V, V, V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Associates the key with the specified value (or the result of the atomic merge function if a mapping already existed).
- MisconfigurationPolicy - Enum Class in io.github.xanthic.cache.api.domain
-
The policy type that dictates how providers should react to cache specification issues.
- MisconfiguredCacheException - Exception Class in io.github.xanthic.cache.api.exception
-
Thrown when a cache specification issue arises under
MisconfigurationPolicy.REJECT
- MisconfiguredCacheException(String) - Constructor for exception class io.github.xanthic.cache.api.exception.MisconfiguredCacheException
N
- NoDefaultCacheImplementationException - Exception Class in io.github.xanthic.cache.api.exception
-
Thrown when a cache is to be built with no provider specified and no default provider was found.
- NoDefaultCacheImplementationException(String) - Constructor for exception class io.github.xanthic.cache.api.exception.NoDefaultCacheImplementationException
O
- onRemoval(K, V, RemovalCause) - Method in interface io.github.xanthic.cache.api.RemovalListener
-
Called when an entry is removed.
- OTHER - Enum constant in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
An extraneous eviction occurred (e.g., due to garbage collection).
P
- POST_ACCESS - Enum constant in enum class io.github.xanthic.cache.api.domain.ExpiryType
-
Entries should expire when no accesses occur during a specific time period.
- POST_WRITE - Enum constant in enum class io.github.xanthic.cache.api.domain.ExpiryType
-
Entries should expire after a specific time period has passed since the entry creation.
- provider() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The provider of a conforming cache instance.
- put(K, V) - Method in interface io.github.xanthic.cache.api.Cache
-
Associates the specified key with the specified value, creating or replacing the mapping as needed.
- putAll(Map<? extends K, ? extends V>) - Method in interface io.github.xanthic.cache.api.Cache
-
Copies all of the mappings from the specified map to this cache.
- putIfAbsent(K, V) - Method in interface io.github.xanthic.cache.api.Cache
-
Creates a mapping from the specified key to the specified value, if no mapping for the key already existed.
R
- REJECT - Enum constant in enum class io.github.xanthic.cache.api.domain.MisconfigurationPolicy
-
Halts cache building (e.g., via exception) upon a cache specification issue.
- RemovalCause - Enum Class in io.github.xanthic.cache.api.domain
-
The reason for a cache entry being removed.
- removalListener() - Method in interface io.github.xanthic.cache.api.ICacheSpec
-
The cache entry removal listener.
- RemovalListener<K,
V> - Interface in io.github.xanthic.cache.api -
Listens to entry removals in the cache that may occur for various reasons.
- remove(K) - Method in interface io.github.xanthic.cache.api.Cache
-
Deletes any mapping that may exist for the specified key.
- replace(K, V) - Method in interface io.github.xanthic.cache.api.Cache
-
Replaces the entry for the specified key only if it is currently mapped to some value.
- replace(K, V, V) - Method in interface io.github.xanthic.cache.api.Cache
-
Replaces the value for the specified key only if it is currently mapped to the specified old value.
- REPLACED - Enum constant in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
The value associated with the key was replaced by a new value.
S
- size() - Method in interface io.github.xanthic.cache.api.Cache
- SIZE - Enum constant in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
The maximum capacity constraint of the cache was hit.
T
- TIME - Enum constant in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
The cache entry reached expiration, according to the policy in the specification.
V
- valueOf(String) - Static method in enum class io.github.xanthic.cache.api.domain.ExpiryType
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.xanthic.cache.api.domain.MisconfigurationPolicy
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class io.github.xanthic.cache.api.domain.ExpiryType
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.xanthic.cache.api.domain.MisconfigurationPolicy
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class io.github.xanthic.cache.api.domain.RemovalCause
-
Returns an array containing the constants of this enum class, in the order they are declared.
All Classes and Interfaces|All Packages|Serialized Form