You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by tn...@apache.org on 2012/07/15 12:48:36 UTC

svn commit: r1361684 - /commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/

Author: tn
Date: Sun Jul 15 10:48:36 2012
New Revision: 1361684

URL: http://svn.apache.org/viewvc?rev=1361684&view=rev
Log:
Cleanup of set package.

Added:
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package-info.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package.html
Removed:
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package.html
Modified:
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSerializableSetDecorator.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSetDecorator.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSortedSetDecorator.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/CompositeSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/ListOrderedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/MapBackedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSortedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSortedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSortedSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSet.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSortedSet.java

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSerializableSetDecorator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSerializableSetDecorator.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSerializableSetDecorator.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSerializableSetDecorator.java Sun Jul 15 10:48:36 2012
@@ -26,8 +26,8 @@ import java.util.Set;
 /**
  * Serializable subclass of AbstractSetDecorator.
  *
- * @author Stephen Colebourne
  * @since Commons Collections 3.1
+ * @version $Id$
  */
 public abstract class AbstractSerializableSetDecorator<E>
         extends AbstractSetDecorator<E>
@@ -38,6 +38,9 @@ public abstract class AbstractSerializab
 
     /**
      * Constructor.
+     * 
+     * @param set  the list to decorate, must not be null
+     * @throws IllegalArgumentException if set is null
      */
     protected AbstractSerializableSetDecorator(Set<E> set) {
         super(set);

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSetDecorator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSetDecorator.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSetDecorator.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSetDecorator.java Sun Jul 15 10:48:36 2012
@@ -27,9 +27,7 @@ import org.apache.commons.collections.co
  *
  * @param <E> the type of the elements in the set
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public abstract class AbstractSetDecorator<E> extends AbstractCollectionDecorator<E> implements
         Set<E> {

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSortedSetDecorator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSortedSetDecorator.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSortedSetDecorator.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/AbstractSortedSetDecorator.java Sun Jul 15 10:48:36 2012
@@ -27,9 +27,7 @@ import java.util.SortedSet;
  *
  * @param <E> the type of the elements in the sorted set
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public abstract class AbstractSortedSetDecorator<E>
         extends AbstractSetDecorator<E>

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/CompositeSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/CompositeSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/CompositeSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/CompositeSet.java Sun Jul 15 10:48:36 2012
@@ -31,9 +31,7 @@ import org.apache.commons.collections.co
  * If no strategy is provided then add is unsupported.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Brian McCallister
+ * @version $Id$
  */
 public class CompositeSet<E> extends CompositeCollection<E> implements Set<E> {
 
@@ -48,15 +46,18 @@ public class CompositeSet<E> extends Com
     }
 
     /**
-     * Create a CompositeSet with just <code>set</code> composited
-     * @param set The initial set in the composite
+     * Create a CompositeSet with just <code>set</code> composited.
+     *
+     * @param set  the initial set in the composite
      */
     public CompositeSet(Set<E> set) {
         super(set);
     }
 
     /**
-     * Create a composite set with sets as the initial set of composited Sets
+     * Create a composite set with sets as the initial set of composited Sets.
+     * 
+     * @param sets  the initial sets in the composite
      */
     public CompositeSet(Set<E>... sets) {
         super(sets);
@@ -88,7 +89,8 @@ public class CompositeSet<E> extends Com
                 }
                 else if (!(this.mutator instanceof SetMutator)) {
                     throw new UnsupportedOperationException(
-                        "Collision adding composited collection to a CompositeSet with a CollectionMutator instead of a SetMutator");
+                        "Collision adding composited collection to a CompositeSet with a CollectionMutator " +
+                        "instead of a SetMutator");
                 }
                 getMutator().resolveCollision(this, set, (Set<E>) c, intersects);
                 if (CollectionUtils.intersection(set, c).size() > 0) {
@@ -110,21 +112,27 @@ public class CompositeSet<E> extends Com
     }
 
     /**
-     * Add two sets to this composite
+     * Add two sets to this composite.
      *
+     * @param c  the first {@link Set} to add to this composite
+     * @param d  the second {@link Set} to add to this composite
      * @throws IllegalArgumentException if c or d does not implement java.util.Set
      */
     @Override
     @SuppressWarnings("unchecked")
     public synchronized void addComposited(Collection<E> c, Collection<E> d) {
-        if (!(c instanceof Set)) throw new IllegalArgumentException("Argument must implement java.util.Set");
-        if (!(d instanceof Set)) throw new IllegalArgumentException("Argument must implement java.util.Set");
+        if (!(c instanceof Set)) {
+            throw new IllegalArgumentException("Argument must implement java.util.Set");
+        }
+        if (!(d instanceof Set)) {
+            throw new IllegalArgumentException("Argument must implement java.util.Set");
+        }
         this.addComposited(new Set[] { (Set<? extends E>) c, (Set<? extends E>) d });
     }
 
     /**
      * Add an array of sets to this composite
-     * @param comps
+     * @param comps  the {@link Collection} of {@link Set}s to add to this composite
      * @throws IllegalArgumentException if any of the collections in comps do not implement Set
      */
     @Override
@@ -135,11 +143,11 @@ public class CompositeSet<E> extends Com
     }
 
     /**
-     * This can receive either a <code>CompositeCollection.CollectionMutator</code>
-     * or a <code>CompositeSet.SetMutator</code>. If a
-     * <code>CompositeCollection.CollectionMutator</code> is used than conflicts when adding
-     * composited sets will throw IllegalArgumentException
-     * <p>
+     * This can receive either a {@link CompositeCollection#CollectionMutator} or a
+     * {@link CompositeSet#SetMutator}. If a {@link CompositeCollection#CollectionMutator}
+     * is used than conflicts when adding composited sets will throw IllegalArgumentException.
+     * 
+     * @param mutator  the {@link CollectionMutator} to use for this composite
      */
     @Override
     public void setMutator(CollectionMutator<E> mutator) {
@@ -152,13 +160,15 @@ public class CompositeSet<E> extends Com
      * If a <code>CollectionMutator</code> is defined for this CompositeSet then this
      * method will be called anyway.
      *
-     * @param obj Object to be removed
+     * @param obj  object to be removed
      * @return true if the object is removed, false otherwise
      */
     @Override
     public boolean remove(Object obj) {
         for (Set<? extends E> set : getCollections()) {
-            if (set.contains(obj)) return set.remove(obj);
+            if (set.contains(obj)) {
+                return set.remove(obj);
+            }
         }
         return false;
     }
@@ -204,18 +214,16 @@ public class CompositeSet<E> extends Com
     public static interface SetMutator<E> extends CompositeCollection.CollectionMutator<E> {
 
         /**
-         * <p>
          * Called when a Set is added to the CompositeSet and there is a
          * collision between existing and added sets.
-         * </p>
          * <p>
          * If <code>added</code> and <code>existing</code> still have any intersects
          * after this method returns an IllegalArgumentException will be thrown.
-         * </p>
-         * @param comp The CompositeSet being modified
-         * @param existing The Set already existing in the composite
-         * @param added the Set being added to the composite
-         * @param intersects the intersection of th existing and added sets
+         *
+         * @param comp  the CompositeSet being modified
+         * @param existing  the Set already existing in the composite
+         * @param added  the Set being added to the composite
+         * @param intersects  the intersection of the existing and added sets
          */
         public void resolveCollision(CompositeSet<E> comp, Set<E> existing, Set<E> added, Collection<E> intersects);
     }

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/ListOrderedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/ListOrderedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/ListOrderedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/ListOrderedSet.java Sun Jul 15 10:48:36 2012
@@ -47,10 +47,7 @@ import org.apache.commons.collections.li
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
- * @author Henning P. Schmiedehausen
+ * @version $Id$
  */
 public class ListOrderedSet<E> extends AbstractSerializableSetDecorator<E> implements Set<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/MapBackedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/MapBackedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/MapBackedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/MapBackedSet.java Sun Jul 15 10:48:36 2012
@@ -33,9 +33,7 @@ import java.util.Set;
  * Exceptions include <code>BidiMap</code> implementations, as they require unique values.
  *
  * @since Commons Collections 3.1
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public final class MapBackedSet<E, V> implements Set<E>, Serializable {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSet.java Sun Jul 15 10:48:36 2012
@@ -35,10 +35,7 @@ import org.apache.commons.collections.co
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
- * @author Paul Jack
+ * @version $Id$
  */
 public class PredicatedSet<E> extends PredicatedCollection<E> implements Set<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSortedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSortedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSortedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/PredicatedSortedSet.java Sun Jul 15 10:48:36 2012
@@ -35,10 +35,7 @@ import org.apache.commons.collections.Pr
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
- * @author Paul Jack
+ * @version $Id$
  */
 public class PredicatedSortedSet<E> extends PredicatedSet<E> implements SortedSet<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSet.java Sun Jul 15 10:48:36 2012
@@ -29,9 +29,7 @@ import org.apache.commons.collections.co
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public class SynchronizedSet<E> extends SynchronizedCollection<E> implements Set<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSortedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSortedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSortedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/SynchronizedSortedSet.java Sun Jul 15 10:48:36 2012
@@ -30,9 +30,7 @@ import org.apache.commons.collections.co
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public class SynchronizedSortedSet<E> extends SynchronizedCollection<E> implements SortedSet<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSet.java Sun Jul 15 10:48:36 2012
@@ -32,9 +32,7 @@ import org.apache.commons.collections.co
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public class TransformedSet<E> extends TransformedCollection<E> implements Set<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSortedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSortedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSortedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/TransformedSortedSet.java Sun Jul 15 10:48:36 2012
@@ -32,9 +32,7 @@ import org.apache.commons.collections.Tr
  * This class is Serializable from Commons Collections 3.1.
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public class TransformedSortedSet<E> extends TransformedSet<E> implements SortedSet<E> {
 

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSet.java Sun Jul 15 10:48:36 2012
@@ -31,9 +31,7 @@ import org.apache.commons.collections.it
  * Attempts to modify it will result in an UnsupportedOperationException. 
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public final class UnmodifiableSet<E>
         extends AbstractSerializableSetDecorator<E>

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSortedSet.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSortedSet.java?rev=1361684&r1=1361683&r2=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSortedSet.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/UnmodifiableSortedSet.java Sun Jul 15 10:48:36 2012
@@ -35,9 +35,7 @@ import org.apache.commons.collections.it
  * Attempts to modify it will result in an UnsupportedOperationException. 
  *
  * @since Commons Collections 3.0
- * @version $Revision$
- *
- * @author Stephen Colebourne
+ * @version $Id$
  */
 public final class UnmodifiableSortedSet<E>
         extends AbstractSortedSetDecorator<E>

Copied: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package-info.java (from r1361641, commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package.html)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package-info.java?p2=commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package-info.java&p1=commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package.html&r1=1361641&r2=1361684&rev=1361684&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package.html (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/set/package-info.java Sun Jul 15 10:48:36 2012
@@ -1,43 +1,42 @@
-<!-- $Id$ -->
- <!--
-   Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
-  -->
-<BODY>
-<p>
-This package contains implementations of the
-{@link java.util.Set Set} and
-{@link java.util.SortedSet SortedSet} interfaces.
-<p>
-The implementations are in the form of direct implementations and decorators.
-A decorator wraps another implementation of the interface to add some
-specific additional functionality.
-<p>
-The following implementations are provided in the package:
-<ul>
-<li>CompositeSet - a set that combines multiple sets into one
-</ul>
-The following decorators are provided in the package:
-<ul>
-<li>Synchronized - synchronizes method access for multi-threaded environments
-<li>Unmodifiable - ensures the collection cannot be altered
-<li>Predicated - ensures that only elements that are valid according to a predicate can be added
-<li>Typed - ensures that only elements that are of a specific type can be added
-<li>Transformed - transforms each element added
-<li>ListOrdered - ensures that insertion order is retained
-<li>MapBackedSet - a set formed by decorating a Map
-</ul>
-</pre>
-</BODY>
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * This package contains implementations of the {@link java.util.Set Set} and
+ * {@link java.util.SortedSet SortedSet} interfaces.
+ * <p>
+ * The implementations are in the form of direct implementations and decorators.
+ * A decorator wraps another implementation of the interface to add some
+ * specific additional functionality.
+ * <p>
+ * The following implementations are provided in the package:
+ * <ul>
+ *   <li>CompositeSet - a set that combines multiple sets into one
+ * </ul>
+ * The following decorators are provided in the package:
+ * <ul>
+ *   <li>Synchronized - synchronizes method access for multi-threaded environments
+ *   <li>Unmodifiable - ensures the collection cannot be altered
+ *   <li>Predicated - ensures that only elements that are valid according to a predicate can be added
+ *   <li>Typed - ensures that only elements that are of a specific type can be added
+ *   <li>Transformed - transforms each element added
+ *   <li>ListOrdered - ensures that insertion order is retained
+ *   <li>MapBackedSet - a set formed by decorating a Map
+ * </ul>
+ *
+ * @version $Id$
+ */
+package org.apache.commons.collections.set;
\ No newline at end of file