common
Class HashMapDiff
java.lang.Object
java.util.AbstractMap
common.HashMapDiff
- All Implemented Interfaces:
- MapDiff, java.lang.Cloneable, java.util.Map
public class HashMapDiff
- extends java.util.AbstractMap
- implements MapDiff, java.lang.Cloneable
MapDiff implementation that uses a HashMap to store the values for
changed keys, and a HashSet to store the removed keys. This implementation
does not support null values.
| Nested classes/interfaces inherited from class java.util.AbstractMap |
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V> |
|
Constructor Summary |
HashMapDiff(java.util.Map underlying)
Creates a new HashMapDiff with the given underlying map. |
|
Method Summary |
void |
changeUnderlying()
Changes the underlying map so it is equal to this map. |
void |
clearChanges()
Resets this map so it is equal to the underlying map. |
java.lang.Object |
clone()
|
boolean |
containsKey(java.lang.Object key)
|
java.util.Set |
entrySet()
|
java.lang.Object |
get(java.lang.Object key)
|
java.util.Set |
getChangedKeys()
Returns the set of keys that map to different values in this map
than in the underlying map. |
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value)
|
java.lang.Object |
remove(java.lang.Object key)
|
int |
size()
|
| Methods inherited from class java.util.AbstractMap |
clear, containsValue, equals, hashCode, isEmpty, keySet, putAll, toString, values |
| Methods inherited from class java.lang.Object |
finalize, getClass, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface java.util.Map |
clear, containsValue, equals, hashCode, isEmpty, keySet, putAll, values |
HashMapDiff
public HashMapDiff(java.util.Map underlying)
- Creates a new HashMapDiff with the given underlying map.
containsKey
public boolean containsKey(java.lang.Object key)
- Specified by:
containsKey in interface java.util.Map- Overrides:
containsKey in class java.util.AbstractMap
get
public java.lang.Object get(java.lang.Object key)
- Specified by:
get in interface java.util.Map- Overrides:
get in class java.util.AbstractMap
size
public int size()
- Specified by:
size in interface java.util.Map- Overrides:
size in class java.util.AbstractMap
put
public java.lang.Object put(java.lang.Object key,
java.lang.Object value)
- Specified by:
put in interface java.util.Map- Overrides:
put in class java.util.AbstractMap
remove
public java.lang.Object remove(java.lang.Object key)
- Specified by:
remove in interface java.util.Map- Overrides:
remove in class java.util.AbstractMap
entrySet
public java.util.Set entrySet()
- Specified by:
entrySet in interface java.util.Map- Specified by:
entrySet in class java.util.AbstractMap
getChangedKeys
public java.util.Set getChangedKeys()
- Description copied from interface:
MapDiff
- Returns the set of keys that map to different values in this map
than in the underlying map. This includes any keys that have values
in this map but not the underlying map, or vice versa.
The returned set may or may not be kept up to date as changes
are made to this MapDiff.
- Specified by:
getChangedKeys in interface MapDiff
- Returns:
- unmodifiable Set of Object
changeUnderlying
public void changeUnderlying()
- Description copied from interface:
MapDiff
- Changes the underlying map so it is equal to this map.
- Specified by:
changeUnderlying in interface MapDiff
clearChanges
public void clearChanges()
- Description copied from interface:
MapDiff
- Resets this map so it is equal to the underlying map.
- Specified by:
clearChanges in interface MapDiff
clone
public java.lang.Object clone()
- Overrides:
clone in class java.util.AbstractMap