From: <th...@us...> - 2009-01-18 03:22:21
|
Revision: 9037 http://pcgen.svn.sourceforge.net/pcgen/?rev=9037&view=rev Author: thpr Date: 2009-01-18 01:55:10 +0000 (Sun, 18 Jan 2009) Log Message: ----------- add method Modified Paths: -------------- Trunk/pcgen/code/src/java/pcgen/base/util/TripleKeyMapToList.java Modified: Trunk/pcgen/code/src/java/pcgen/base/util/TripleKeyMapToList.java =================================================================== --- Trunk/pcgen/code/src/java/pcgen/base/util/TripleKeyMapToList.java 2009-01-18 01:54:53 UTC (rev 9036) +++ Trunk/pcgen/code/src/java/pcgen/base/util/TripleKeyMapToList.java 2009-01-18 01:55:10 UTC (rev 9037) @@ -17,6 +17,7 @@ */ package pcgen.base.util; +import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -137,6 +138,40 @@ } /** + * Adds all of the Objects in the given list to the (internal) List for the + * given keys. The null value cannot be used as a key in a + * TripleKeyMapToList. This method will automatically initialize the list + * for the given key if there is not already a List for that key. + * + * This method is reference-semantic and this TripleKeyMapToList will + * maintain a strong reference to both the key objects and the objects in + * the given list. + * + * @param key1 + * The primary key indicating which List the given object should + * be added to. + * @param key2 + * The secondary key indicating which List the given object + * should be added to. + * @param key3 + * The tertiary key indicating which List the given object should + * be added to. + * @param value + * A Collection containing the items to be added to the List for + * the given keys. + */ + public void addAllToListFor(K1 key1, K2 key2, K3 key3, Collection<V> value) + { + MapToList<K3, V> localMap = map.get(key1, key2); + if (localMap == null) + { + localMap = GenericMapToList.getMapToList(thirdClass); + map.put(key1, key2, localMap); + } + localMap.addAllToListFor(key3, value); + } + + /** * Returns a copy of the List contained in this TripleKeyMapToList for the * given keys. This method returns null if the given key is not in this * TripleKeyMapToList. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |