Class TypedSortedMap


  • public class TypedSortedMap
    extends Object
    Decorates another SortedMap to validate that elements added are of a specific type.

    The validation of additions is performed via an instanceof test against a specified Class. If an object cannot be added to the collection, an IllegalArgumentException is thrown.

    Note that TypedSortedMap is not synchronized and is not thread-safe. 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 Collections.synchronizedSortedMap(java.util.SortedMap<K, V>). This class may throw exceptions when accessed by concurrent threads without synchronization.

    The returned implementation is Serializable from Commons Collections 3.1.

    Since:
    Commons Collections 3.0
    Version:
    $Revision: 646777 $ $Date: 2008-04-10 14:33:15 +0200 (Thu, 10 Apr 2008) $
    Author:
    Stephen Colebourne, Matthew Hawthorne
    • Constructor Detail

      • TypedSortedMap

        protected TypedSortedMap()
        Restrictive constructor.
    • Method Detail

      • decorate

        public static SortedMap decorate​(SortedMap map,
                                         Class keyType,
                                         Class valueType)
        Factory method to create a typed sorted map.

        If there are any elements already in the map being decorated, they are validated.

        Parameters:
        map - the map to decorate, must not be null
        keyType - the type to allow as keys, must not be null
        valueType - the type to allow as values, must not be null
        Throws:
        IllegalArgumentException - if list or type is null
        IllegalArgumentException - if the list contains invalid elements