Interface LookupCache<K,V>
- All Known Implementing Classes:
LRUMap
public interface LookupCache<K,V>
An interface describing the required API for the Jackson-databind Type cache.
Note that while interface itself does not specify synchronization requirements for implementations, specific use cases do. Typically implementations are expected to be thread-safe, that is, to handle synchronization.
- Since:
- 2.12 (for forwards-compatiblity with 3.0)
-
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Method for removing all contents this cache has.default void
contents
(BiConsumer<K, V> consumer) Method to apply operation on cache contents without exposing them.default LookupCache
<K, V> Method needed for creating clones but without contents.NOTE: key is of type Object only to retain binary backwards-compatibilityputIfAbsent
(K key, V value) int
size()
-
Method Details
-
contents
Method to apply operation on cache contents without exposing them.Default implementation throws
UnsupportedOperationException
. Implementations are required to override this method.- Parameters:
consumer
- Operation to apply on cache contents.- Throws:
UnsupportedOperationException
- if implementation does not override this method.- Since:
- 2.16
-
emptyCopy
Method needed for creating clones but without contents.Default implementation throws
UnsupportedOperationException
. Implementations are required to override this method.- Throws:
UnsupportedOperationException
- if implementation does not override this method.- Since:
- 2.16
-
size
int size()- Returns:
- Number of entries currently in cache: may be approximate, only to be used for diagnostics, metrics reporting
-
get
NOTE: key is of type Object only to retain binary backwards-compatibility- Returns:
- value associated with key (can return null)
-
put
-
putIfAbsent
-
clear
void clear()Method for removing all contents this cache has.
-