Class ParameterMap<K,​V>

  • Type Parameters:
    K - The type of Key
    V - The type of Value
    All Implemented Interfaces:
    Serializable, Map<K,​V>

    public final class ParameterMap<K,​V>
    extends Object
    implements Map<K,​V>, Serializable
    Implementation of java.util.Map that includes a locked property. This class can be used to safely expose Catalina internal parameter map objects to user classes without having to clone them in order to avoid modifications. When first created, a ParameterMap instance is not locked.
    Author:
    Craig R. McClanahan
    See Also:
    Serialized Form
    • Constructor Detail

      • ParameterMap

        public ParameterMap()
        Construct a new, empty map with the default initial capacity and load factor.
      • ParameterMap

        public ParameterMap​(int initialCapacity)
        Construct a new, empty map with the specified initial capacity and default load factor.
        Parameters:
        initialCapacity - The initial capacity of this map
      • ParameterMap

        public ParameterMap​(int initialCapacity,
                            float loadFactor)
        Construct a new, empty map with the specified initial capacity and load factor.
        Parameters:
        initialCapacity - The initial capacity of this map
        loadFactor - The load factor of this map
      • ParameterMap

        public ParameterMap​(Map<K,​V> map)
        Construct a new map with the same mappings as the given map.
        Parameters:
        map - Map whose contents are duplicated in the new map
    • Method Detail

      • isLocked

        public boolean isLocked()
        Returns:
        the locked state of this parameter map.
      • setLocked

        public void setLocked​(boolean locked)
        Set the locked state of this parameter map.
        Parameters:
        locked - The new locked state
      • size

        public int size()
        Specified by:
        size in interface Map<K,​V>
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface Map<K,​V>
      • containsKey

        public boolean containsKey​(Object key)
        Specified by:
        containsKey in interface Map<K,​V>
      • get

        public V get​(Object key)
        Specified by:
        get in interface Map<K,​V>
      • keySet

        public Set<K> keySet()

        Returns an unmodifiable Set view of the keys contained in this map if it is locked.

        Specified by:
        keySet in interface Map<K,​V>
      • values

        public Collection<V> values()

        Returns an unmodifiable Collection view of the values contained in this map if it is locked.

        Specified by:
        values in interface Map<K,​V>
      • entrySet

        public Set<Map.Entry<K,​V>> entrySet()

        Returns an unmodifiable Set view of the mappings contained in this map if it is locked.

        Specified by:
        entrySet in interface Map<K,​V>