Class FixedSizeMap

  • All Implemented Interfaces:
    java.io.Serializable, java.util.Map, BoundedMap

    @Deprecated(since="2021-04-30")
    public class FixedSizeMap
    extends AbstractMapDecorator
    implements java.util.Map, BoundedMap, java.io.Serializable
    Deprecated.
    Commons Collections 3 is in maintenance mode. Commons Collections 4 should be used instead.
    Decorates another Map to fix the size, preventing add/remove.

    Any action that would change the size of the map is disallowed. The put method is allowed to change the value associated with an existing key however.

    If trying to remove or clear the map, an UnsupportedOperationException is thrown. If trying to put a new mapping into the map, an IllegalArgumentException is thrown. This is because the put method can succeed if the mapping's key already exists in the map, so the put method is not always unsupported.

    Note that FixedSizeMap 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.synchronizedMap(Map). This class may throw exceptions when accessed by concurrent threads without synchronization.

    This class is Serializable from Commons Collections 3.1.

    Since:
    Commons Collections 3.0
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface java.util.Map

        java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      void clear()
      Deprecated.
       
      static java.util.Map decorate​(java.util.Map map)
      Deprecated.
      Factory method to create a fixed size map.
      java.util.Set entrySet()
      Deprecated.
       
      boolean isFull()
      Deprecated.
      Returns true if this map is full and no new elements can be added.
      java.util.Set keySet()
      Deprecated.
       
      int maxSize()
      Deprecated.
      Gets the maximum size of the map (the bound).
      java.lang.Object put​(java.lang.Object key, java.lang.Object value)
      Deprecated.
       
      void putAll​(java.util.Map mapToCopy)
      Deprecated.
       
      java.lang.Object remove​(java.lang.Object key)
      Deprecated.
       
      java.util.Collection values()
      Deprecated.
       
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Map

        compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, equals, forEach, get, getOrDefault, hashCode, isEmpty, merge, putIfAbsent, remove, replace, replace, replaceAll, size
    • Method Detail

      • decorate

        public static java.util.Map decorate​(java.util.Map map)
        Deprecated.
        Factory method to create a fixed size map.
        Parameters:
        map - the map to decorate, must not be null
        Throws:
        java.lang.IllegalArgumentException - if map is null
      • put

        public java.lang.Object put​(java.lang.Object key,
                                    java.lang.Object value)
        Deprecated.
        Specified by:
        put in interface java.util.Map
        Overrides:
        put in class AbstractMapDecorator
      • putAll

        public void putAll​(java.util.Map mapToCopy)
        Deprecated.
        Specified by:
        putAll in interface java.util.Map
        Overrides:
        putAll in class AbstractMapDecorator
      • clear

        public void clear()
        Deprecated.
        Specified by:
        clear in interface java.util.Map
        Overrides:
        clear in class AbstractMapDecorator
      • remove

        public java.lang.Object remove​(java.lang.Object key)
        Deprecated.
        Specified by:
        remove in interface java.util.Map
        Overrides:
        remove in class AbstractMapDecorator
      • entrySet

        public java.util.Set entrySet()
        Deprecated.
        Specified by:
        entrySet in interface java.util.Map
        Overrides:
        entrySet in class AbstractMapDecorator
      • keySet

        public java.util.Set keySet()
        Deprecated.
        Specified by:
        keySet in interface java.util.Map
        Overrides:
        keySet in class AbstractMapDecorator
      • values

        public java.util.Collection values()
        Deprecated.
        Specified by:
        values in interface java.util.Map
        Overrides:
        values in class AbstractMapDecorator
      • isFull

        public boolean isFull()
        Deprecated.
        Description copied from interface: BoundedMap
        Returns true if this map is full and no new elements can be added.
        Specified by:
        isFull in interface BoundedMap
        Returns:
        true if the map is full
      • maxSize

        public int maxSize()
        Deprecated.
        Description copied from interface: BoundedMap
        Gets the maximum size of the map (the bound).
        Specified by:
        maxSize in interface BoundedMap
        Returns:
        the maximum number of elements the map can hold