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 StandardClient
con
clientprivate int
maxSize
cache maximum sizeprivate static long
serialVersionUID
-
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 CachedPrepareResultPacket
get(java.lang.Object key)
Prepare
get(java.lang.String key, BasePreparedStatement preparedStatement)
Get cache value for keyPrepare
put(java.lang.String key, Prepare result, BasePreparedStatement preparedStatement)
Add a prepare cache valueCachedPrepareResultPacket
put(java.lang.String key, PrepareResultPacket result)
NOT USEDboolean
removeEldestEntry(java.util.Map.Entry<java.lang.String,CachedPrepareResultPacket> eldest)
void
reset()
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:
removeEldestEntry
in classjava.util.LinkedHashMap<java.lang.String,CachedPrepareResultPacket>
-
get
public Prepare get(java.lang.String key, BasePreparedStatement preparedStatement)
Description copied from interface:PrepareCache
Get cache value for key- Specified by:
get
in 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:PrepareCache
Add a prepare cache value- Specified by:
put
in interfacePrepareCache
- Parameters:
key
- keyresult
- valuepreparedStatement
- prepared statement- Returns:
- Prepare if was already cached
-
get
public CachedPrepareResultPacket get(java.lang.Object key)
- Specified by:
get
in interfacejava.util.Map<java.lang.String,CachedPrepareResultPacket>
- Overrides:
get
in 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:PrepareCache
Reset cache- Specified by:
reset
in interfacePrepareCache
-
-