Package org.apache.catalina.util
Class ParameterMap<K,V>
java.lang.Object
org.apache.catalina.util.ParameterMap<K,V>
- Type Parameters:
K
- The type of KeyV
- The type of Value
- All Implemented Interfaces:
Serializable
,Map<K,
V>
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:
-
Nested Class Summary
-
Constructor Summary
ConstructorDescriptionConstruct a new, empty map with the default initial capacity and load factor.ParameterMap
(int initialCapacity) Construct a new, empty map with the specified initial capacity and default load factor.ParameterMap
(int initialCapacity, float loadFactor) Construct a new, empty map with the specified initial capacity and load factor.ParameterMap
(Map<K, V> map) Construct a new map with the same mappings as the given map.ParameterMap
(ParameterMap<K, V> map) Optimised constructor for ParameterMap. -
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Constructor Details
-
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 maploadFactor
- The load factor of this map
-
ParameterMap
Construct a new map with the same mappings as the given map.- Parameters:
map
- Map whose contents are duplicated in the new map
-
ParameterMap
Optimised constructor for ParameterMap.- Parameters:
map
- Map whose contents are duplicated in the new map- See Also:
-
- "https://bz.apache.org/bugzilla/show_bug.cgi?id=69285"
-
-
Method Details
-
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
-
clear
public void clear()- Specified by:
clear
in interfaceMap<K,
V> - Throws:
IllegalStateException
- if this map is currently locked
-
put
- Specified by:
put
in interfaceMap<K,
V> - Throws:
IllegalStateException
- if this map is currently locked
-
putAll
- Specified by:
putAll
in interfaceMap<K,
V> - Throws:
IllegalStateException
- if this map is currently locked
-
remove
- Specified by:
remove
in interfaceMap<K,
V> - Throws:
IllegalStateException
- if this map is currently locked
-
size
public int size() -
isEmpty
public boolean isEmpty() -
containsKey
- Specified by:
containsKey
in interfaceMap<K,
V>
-
containsValue
- Specified by:
containsValue
in interfaceMap<K,
V>
-
get
-
keySet
Returns an unmodifiable
Set
view of the keys contained in this map if it is locked. -
values
Returns an unmodifiable
Collection
view of the values contained in this map if it is locked. -
entrySet
Returns an unmodifiable
Set
view of the mappings contained in this map if it is locked.
-