org.apache.hadoop.hbase.util
Class SoftValueSortedMap<K,V>

java.lang.Object
  extended by org.apache.hadoop.hbase.util.SoftValueSortedMap<K,V>
Type Parameters:
K - key class
V - value class
All Implemented Interfaces:
java.util.Map<K,V>, java.util.SortedMap<K,V>

public class SoftValueSortedMap<K,V>
extends java.lang.Object
implements java.util.SortedMap<K,V>

A SortedMap implementation that uses Soft Reference values internally to make it play well with the GC when in a low-memory situation. Use as a cache where you also need SortedMap functionality.


Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Constructor Summary
SoftValueSortedMap()
          Constructor
SoftValueSortedMap(java.util.Comparator<K> c)
          Constructor
 
Method Summary
 void clear()
           
 java.util.Comparator comparator()
           
 boolean containsKey(java.lang.Object key)
           
 boolean containsValue(java.lang.Object value)
           
 java.util.Set<java.util.Map.Entry<K,V>> entrySet()
           
 K firstKey()
           
 V get(java.lang.Object key)
           
 SoftValueSortedMap<K,V> headMap(K key)
           
 boolean isEmpty()
           
 java.util.Set<K> keySet()
           
 K lastKey()
           
 V put(K key, V value)
           
 void putAll(java.util.Map map)
           
 V remove(java.lang.Object key)
           
 int size()
           
 SoftValueSortedMap<K,V> subMap(K fromKey, K toKey)
           
 SoftValueSortedMap<K,V> tailMap(K key)
           
 java.util.Collection<V> values()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

SoftValueSortedMap

public SoftValueSortedMap()
Constructor


SoftValueSortedMap

public SoftValueSortedMap(java.util.Comparator<K> c)
Constructor

Parameters:
c - comparator
Method Detail

put

public V put(K key,
             V value)
Specified by:
put in interface java.util.Map<K,V>

putAll

public void putAll(java.util.Map map)
Specified by:
putAll in interface java.util.Map<K,V>

get

public V get(java.lang.Object key)
Specified by:
get in interface java.util.Map<K,V>

remove

public V remove(java.lang.Object key)
Specified by:
remove in interface java.util.Map<K,V>

containsKey

public boolean containsKey(java.lang.Object key)
Specified by:
containsKey in interface java.util.Map<K,V>

containsValue

public boolean containsValue(java.lang.Object value)
Specified by:
containsValue in interface java.util.Map<K,V>

firstKey

public K firstKey()
Specified by:
firstKey in interface java.util.SortedMap<K,V>

lastKey

public K lastKey()
Specified by:
lastKey in interface java.util.SortedMap<K,V>

headMap

public SoftValueSortedMap<K,V> headMap(K key)
Specified by:
headMap in interface java.util.SortedMap<K,V>

tailMap

public SoftValueSortedMap<K,V> tailMap(K key)
Specified by:
tailMap in interface java.util.SortedMap<K,V>

subMap

public SoftValueSortedMap<K,V> subMap(K fromKey,
                                      K toKey)
Specified by:
subMap in interface java.util.SortedMap<K,V>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Map<K,V>

size

public int size()
Specified by:
size in interface java.util.Map<K,V>

clear

public void clear()
Specified by:
clear in interface java.util.Map<K,V>

keySet

public java.util.Set<K> keySet()
Specified by:
keySet in interface java.util.Map<K,V>
Specified by:
keySet in interface java.util.SortedMap<K,V>

comparator

public java.util.Comparator comparator()
Specified by:
comparator in interface java.util.SortedMap<K,V>

entrySet

public java.util.Set<java.util.Map.Entry<K,V>> entrySet()
Specified by:
entrySet in interface java.util.Map<K,V>
Specified by:
entrySet in interface java.util.SortedMap<K,V>

values

public java.util.Collection<V> values()
Specified by:
values in interface java.util.Map<K,V>
Specified by:
values in interface java.util.SortedMap<K,V>


Copyright © 2011 The Apache Software Foundation. All Rights Reserved.