You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by sc...@apache.org on 2005/11/21 23:53:11 UTC

svn commit: r348007 - /jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/

Author: scolebourne
Date: Mon Nov 21 14:52:57 2005
New Revision: 348007

URL: http://svn.apache.org/viewcvs?rev=348007&view=rev
Log:
Javadoc lack of thread-safety

Modified:
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CaseInsensitiveMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CompositeMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/DefaultedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeSortedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/Flat3Map.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/HashedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/IdentityMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LRUMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazyMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazySortedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LinkedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ListOrderedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiKeyMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiValueMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedSortedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceIdentityMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedSortedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedMap.java
    jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedSortedMap.java

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CaseInsensitiveMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CaseInsensitiveMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CaseInsensitiveMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CaseInsensitiveMap.java Mon Nov 21 14:52:57 2005
@@ -44,7 +44,13 @@
  * <code>map.get(null)</code> returns <code>"Three"</code> and <code>map.get("ONE")</code>
  * returns <code>"Four".</code>  The <code>Set</code> returned by <code>keySet()</code>
  * equals <code>{"one", "two", null}.</code>
- * 
+ * <p>
+ * <strong>Note that CaseInsensitiveMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CompositeMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CompositeMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CompositeMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/CompositeMap.java Mon Nov 21 14:52:57 2005
@@ -30,6 +30,12 @@
  * Changes made to this map will actually be made on the decorated map.
  * Add and remove operations require the use of a pluggable strategy. If no
  * strategy is provided then add and remove are unsupported.
+ * <p>
+ * <strong>Note that CompositeMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
  *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/DefaultedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/DefaultedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/DefaultedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/DefaultedMap.java Mon Nov 21 14:52:57 2005
@@ -48,7 +48,13 @@
  * // obj == "NULL"
  * </pre>
  * After the above code is executed the map is still empty.
- * 
+ * <p>
+ * <strong>Note that DefaultedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.2
  * @version $Revision: 1.7 $ $Date$
  * 

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeMap.java Mon Nov 21 14:52:57 2005
@@ -41,6 +41,12 @@
  * succeed if the mapping's key already exists in the map, so the put method
  * is not always unsupported.
  * <p>
+ * <strong>Note that FixedSizeMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeSortedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeSortedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeSortedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/FixedSizeSortedMap.java Mon Nov 21 14:52:57 2005
@@ -42,6 +42,12 @@
  * succeed if the mapping's key already exists in the map, so the put method
  * is not always unsupported.
  * <p>
+ * <strong>Note that FixedSizeSortedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedSortedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/Flat3Map.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/Flat3Map.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/Flat3Map.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/Flat3Map.java Mon Nov 21 14:52:57 2005
@@ -59,7 +59,13 @@
  * This is because it contains no complex objects or arrays which slow the progress.
  * <p>
  * Do not use <code>Flat3Map</code> if the size is likely to grow beyond 3.
- * 
+ * <p>
+ * <strong>Note that Flat3Map is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/HashedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/HashedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/HashedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/HashedMap.java Mon Nov 21 14:52:57 2005
@@ -29,6 +29,12 @@
  * {@link org.apache.commons.collections.MapIterator MapIterator}
  * functionality and many methods for subclassing.
  * <p>
+ * <strong>Note that HashedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/IdentityMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/IdentityMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/IdentityMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/IdentityMap.java Mon Nov 21 14:52:57 2005
@@ -27,7 +27,13 @@
  * <p>
  * This map will violate the detail of various Map and map view contracts.
  * As a general rule, don't compare this map to other maps.
- * 
+ * <p>
+ * <strong>Note that IdentityMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LRUMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LRUMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LRUMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LRUMap.java Mon Nov 21 14:52:57 2005
@@ -40,11 +40,12 @@
  * All the available iterators can be reset back to the start by casting to
  * <code>ResettableIterator</code> and calling <code>reset()</code>.
  * <p>
- * <strong>Note</strong> as is the usual convention, this map must be protected
- * from concurrent access by multiple threads for example by calling 
- * <code>Collections.synchronizeMap</code>. This class may throw 
+ * <strong>Note that LRUMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
  * <code>NullPointerException</code>'s when accessed by concurrent threads.
- * 
+ *
  * @since Commons Collections 3.0 (previously in main package v1.0)
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazyMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazyMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazyMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazyMap.java Mon Nov 21 14:52:57 2005
@@ -47,6 +47,12 @@
  * a new <code>Date</code> instance. Furthermore, that <code>Date</code>
  * instance is mapped to the "NOW" key in the map.
  * <p>
+ * <strong>Note that LazyMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazySortedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazySortedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazySortedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LazySortedMap.java Mon Nov 21 14:52:57 2005
@@ -43,6 +43,12 @@
  * a new <code>Date</code> instance. Furthermore, that <code>Date</code>
  * instance is mapped to the "NOW" key in the map.
  * <p>
+ * <strong>Note that LazySortedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedSortedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LinkedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LinkedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LinkedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/LinkedMap.java Mon Nov 21 14:52:57 2005
@@ -49,7 +49,13 @@
  * <p>
  * The implementation is also designed to be subclassed, with lots of useful
  * methods exposed.
- * 
+ * <p>
+ * <strong>Note that LinkedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ *
  * @since Commons Collections 3.0
  * @version $Revision$ $Date$
  *

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ListOrderedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ListOrderedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ListOrderedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ListOrderedMap.java Mon Nov 21 14:52:57 2005
@@ -52,6 +52,12 @@
  * If an object is added to the Map for a second time, it will remain in the
  * original position in the iteration.
  * <p>
+ * <strong>Note that ListOrderedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiKeyMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiKeyMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiKeyMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiKeyMap.java Mon Nov 21 14:52:57 2005
@@ -65,6 +65,11 @@
  *   return name;
  * }
  * </pre>
+ * <p>
+ * <strong>Note that MultiKeyMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. This class may throw exceptions when accessed
+ * by concurrent threads without synchronization.
  *
  * @since Commons Collections 3.1
  * @version $Revision$ $Date$

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiValueMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiValueMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiValueMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/MultiValueMap.java Mon Nov 21 14:52:57 2005
@@ -44,6 +44,11 @@
  * for the values to be controlled. By default, an <code>ArrayList</code>
  * is used, however a <code>Class</code> to instantiate may be specified,
  * or a factory that returns a <code>Collection</code> instance.
+ * <p>
+ * <strong>Note that MultiValueMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. This class may throw exceptions when accessed
+ * by concurrent threads without synchronization.
  *
  * @author James Carman
  * @author Christopher Berry

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedMap.java Mon Nov 21 14:52:57 2005
@@ -35,6 +35,12 @@
  * One usage would be to ensure that no null keys are added to the map.
  * <pre>Map map = PredicatedSet.decorate(new HashMap(), NotNullPredicate.INSTANCE, null);</pre>
  * <p>
+ * <strong>Note that PredicatedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedSortedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedSortedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedSortedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/PredicatedSortedMap.java Mon Nov 21 14:52:57 2005
@@ -31,6 +31,12 @@
  * One usage would be to ensure that no null keys are added to the map.
  * <pre>SortedMap map = PredicatedSortedSet.decorate(new TreeMap(), NotNullPredicate.INSTANCE, null);</pre>
  * <p>
+ * <strong>Note that PredicatedSortedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedSortedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceIdentityMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceIdentityMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceIdentityMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceIdentityMap.java Mon Nov 21 14:52:57 2005
@@ -55,6 +55,12 @@
  * <p>
  * All the available iterators can be reset back to the start by casting to
  * <code>ResettableIterator</code> and calling <code>reset()</code>.
+ * <p>
+ * <strong>Note that ReferenceIdentityMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
  *
  * @see java.lang.ref.Reference
  * 

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/ReferenceMap.java Mon Nov 21 14:52:57 2005
@@ -54,6 +54,12 @@
  * All the available iterators can be reset back to the start by casting to
  * <code>ResettableIterator</code> and calling <code>reset()</code>.
  * <p>
+ * <strong>Note that ReferenceMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * NOTE: As from Commons Collections 3.1 this map extends <code>AbstractReferenceMap</code>
  * (previously it extended AbstractMap). As a result, the implementation is now
  * extensible and provides a <code>MapIterator</code>.

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedMap.java Mon Nov 21 14:52:57 2005
@@ -32,6 +32,12 @@
  * For example, if the transformation converts Strings to Integers, you must
  * use the Integer form to remove objects.
  * <p>
+ * <strong>Note that TransformedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedSortedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedSortedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedSortedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TransformedSortedMap.java Mon Nov 21 14:52:57 2005
@@ -29,6 +29,12 @@
  * For example, if the transformation converts Strings to Integers, you must
  * use the Integer form to remove objects.
  * <p>
+ * <strong>Note that TransformedSortedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedSortedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedMap.java Mon Nov 21 14:52:57 2005
@@ -27,6 +27,12 @@
  * a specified <code>Class</code>. If an object cannot be added to the
  * collection, an IllegalArgumentException is thrown.
  * <p>
+ * <strong>Note that TypedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedMap(Map)}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * The returned implementation is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0

Modified: jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedSortedMap.java
URL: http://svn.apache.org/viewcvs/jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedSortedMap.java?rev=348007&r1=348006&r2=348007&view=diff
==============================================================================
--- jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedSortedMap.java (original)
+++ jakarta/commons/proper/collections/trunk/src/java/org/apache/commons/collections/map/TypedSortedMap.java Mon Nov 21 14:52:57 2005
@@ -27,6 +27,12 @@
  * a specified <code>Class</code>. If an object cannot be added to the
  * collection, an IllegalArgumentException is thrown.
  * <p>
+ * <strong>Note that TypedSortedMap is not synchronized and is not thread-safe.</strong>
+ * If you wish to use this map from multiple threads concurrently, you must use
+ * appropriate synchronization. The simplest approach is to wrap this map
+ * using {@link java.util.Collections#synchronizedSortedMap}. This class may throw 
+ * exceptions when accessed by concurrent threads without synchronization.
+ * <p>
  * The returned implementation is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org