org.simpleframework.util
Class KeyMap<T>

java.lang.Object
  extended by java.util.AbstractMap<K,V>
      extended by java.util.HashMap<java.lang.String,T>
          extended by org.simpleframework.util.KeyMap<T>
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable<java.lang.String>, java.util.Map<java.lang.String,T>

public class KeyMap<T>
extends java.util.HashMap<java.lang.String,T>
implements java.lang.Iterable<java.lang.String>

The KeyMap object is used to represent a map of values keyed using a known string. This also ensures that the keys and the values added to this hash map can be acquired in an independent list of values, ensuring that modifications to the map do not have an impact on the lists provided, and vice versa. The key map can also be used in a fore each look using the string keys.

Author:
Niall Gallagher
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.AbstractMap
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>
 
Constructor Summary
KeyMap()
          Constructor for the KeyMap object.
 
Method Summary
 java.util.List<java.lang.String> getKeys()
          This is used to produce a List of the keys in the map.
 java.util.List<T> getValues()
          This is used to produce a List of the values in the map.
 java.util.Iterator<java.lang.String> iterator()
          This is used to produce an Iterator of values that can be used to acquire the contents of the key map within a for each loop.
 
Methods inherited from class java.util.HashMap
clear, clone, containsKey, containsValue, entrySet, get, isEmpty, keySet, put, putAll, remove, size, values
 
Methods inherited from class java.util.AbstractMap
equals, hashCode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, hashCode
 

Constructor Detail

KeyMap

public KeyMap()
Constructor for the KeyMap object. This creates a hash map that can expose the keys and values of the map as an independent List containing the values. This can also be used within a for loop for convenience.

Method Detail

iterator

public java.util.Iterator<java.lang.String> iterator()
This is used to produce an Iterator of values that can be used to acquire the contents of the key map within a for each loop. The key map can be modified while it is been iterated as the iterator is an independent list of values.

Specified by:
iterator in interface java.lang.Iterable<java.lang.String>
Returns:
this returns an iterator of the keys in the map

getKeys

public java.util.List<java.lang.String> getKeys()
This is used to produce a List of the keys in the map. The list produced is a copy of the internal keys and so can be modified and used without affecting this map object.

Returns:
this returns an independent list of the key values

getValues

public java.util.List<T> getValues()
This is used to produce a List of the values in the map. The list produced is a copy of the internal values and so can be modified and used without affecting this map object.

Returns:
this returns an independent list of the values