Package org.biojava.utils.io
Class SoftHashMap
- java.lang.Object
-
- java.util.AbstractMap
-
- org.biojava.utils.io.SoftHashMap
-
- All Implemented Interfaces:
java.util.Map
public class SoftHashMap extends java.util.AbstractMap
A in memory cache using soft references. (can be garbage collected) This code is based on: http://java-interview-faqs.blogspot.com/2008/09/building-faster-and-efficient-cache.html
-
-
Field Summary
Fields Modifier and Type Field Description static booleanDEBUGstatic intDEFAULT_LIMIT
-
Constructor Summary
Constructors Constructor Description SoftHashMap()SoftHashMap(int hardSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()java.util.SetentrySet()java.lang.Objectget(java.lang.Object key)java.lang.Objectput(java.lang.Object key, java.lang.Object value)Here we put the key, value pair into the HashMap using a SoftValue object.java.lang.Objectremove(java.lang.Object key)intsize()-
Methods inherited from class java.util.AbstractMap
clone, containsKey, containsValue, equals, hashCode, isEmpty, keySet, putAll, toString, values
-
-
-
-
Field Detail
-
DEBUG
public static final boolean DEBUG
- See Also:
- Constant Field Values
-
DEFAULT_LIMIT
public static final int DEFAULT_LIMIT
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
SoftHashMap
public SoftHashMap()
-
SoftHashMap
public SoftHashMap(int hardSize)
-
-
Method Detail
-
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
getin interfacejava.util.Map- Overrides:
getin classjava.util.AbstractMap
-
put
public java.lang.Object put(java.lang.Object key, java.lang.Object value)
Here we put the key, value pair into the HashMap using a SoftValue object.- Specified by:
putin interfacejava.util.Map- Overrides:
putin classjava.util.AbstractMap
-
remove
public java.lang.Object remove(java.lang.Object key)
- Specified by:
removein interfacejava.util.Map- Overrides:
removein classjava.util.AbstractMap
-
clear
public void clear()
- Specified by:
clearin interfacejava.util.Map- Overrides:
clearin classjava.util.AbstractMap
-
size
public int size()
- Specified by:
sizein interfacejava.util.Map- Overrides:
sizein classjava.util.AbstractMap
-
entrySet
public java.util.Set entrySet()
- Specified by:
entrySetin interfacejava.util.Map- Specified by:
entrySetin classjava.util.AbstractMap
-
-