Package org.mariadb.jdbc.client.impl
Class PrepareCache
- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- java.util.HashMap<K,V>
-
- java.util.LinkedHashMap<java.lang.String,CachedPrepareResultPacket>
-
- org.mariadb.jdbc.client.impl.PrepareCache
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Cloneable,java.util.Map<java.lang.String,CachedPrepareResultPacket>,PrepareCache
public final class PrepareCache extends java.util.LinkedHashMap<java.lang.String,CachedPrepareResultPacket> implements PrepareCache
LRU prepare cache- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private StandardClientconclientprivate intmaxSizecache maximum sizeprivate static longserialVersionUID
-
Constructor Summary
Constructors Constructor Description PrepareCache(int size, StandardClient con)LRU prepare cache constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CachedPrepareResultPacketget(java.lang.Object key)Prepareget(java.lang.String key, BasePreparedStatement preparedStatement)Get cache value for keyPrepareput(java.lang.String key, Prepare result, BasePreparedStatement preparedStatement)Add a prepare cache valueCachedPrepareResultPacketput(java.lang.String key, PrepareResultPacket result)NOT USEDbooleanremoveEldestEntry(java.util.Map.Entry<java.lang.String,CachedPrepareResultPacket> eldest)voidreset()Reset cache-
Methods inherited from class java.util.LinkedHashMap
clear, containsValue, entrySet, forEach, getOrDefault, keySet, replaceAll, values
-
Methods inherited from class java.util.HashMap
clone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, size
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
maxSize
private final int maxSize
cache maximum size
-
con
private final transient StandardClient con
client
-
-
Constructor Detail
-
PrepareCache
public PrepareCache(int size, StandardClient con)LRU prepare cache constructor- Parameters:
size- cache sizecon- client
-
-
Method Detail
-
removeEldestEntry
public boolean removeEldestEntry(java.util.Map.Entry<java.lang.String,CachedPrepareResultPacket> eldest)
- Overrides:
removeEldestEntryin classjava.util.LinkedHashMap<java.lang.String,CachedPrepareResultPacket>
-
get
public Prepare get(java.lang.String key, BasePreparedStatement preparedStatement)
Description copied from interface:PrepareCacheGet cache value for key- Specified by:
getin interfacePrepareCache- Parameters:
key- keypreparedStatement- prepared statement- Returns:
- Prepare value
-
put
public Prepare put(java.lang.String key, Prepare result, BasePreparedStatement preparedStatement)
Description copied from interface:PrepareCacheAdd a prepare cache value- Specified by:
putin interfacePrepareCache- Parameters:
key- keyresult- valuepreparedStatement- prepared statement- Returns:
- Prepare if was already cached
-
get
public CachedPrepareResultPacket get(java.lang.Object key)
- Specified by:
getin interfacejava.util.Map<java.lang.String,CachedPrepareResultPacket>- Overrides:
getin classjava.util.LinkedHashMap<java.lang.String,CachedPrepareResultPacket>
-
put
public CachedPrepareResultPacket put(java.lang.String key, PrepareResultPacket result)
NOT USED- Parameters:
key- keyresult- results- Returns:
- will throw an exception
-
reset
public void reset()
Description copied from interface:PrepareCacheReset cache- Specified by:
resetin interfacePrepareCache
-
-