Package org.apache.catalina.util
Class ResourceSet<T>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractSet<E>
java.util.HashSet<T>
org.apache.catalina.util.ResourceSet<T>
- Type Parameters:
T
- The type of elements in the Set
- All Implemented Interfaces:
Serializable
,Cloneable
,Iterable<T>
,Collection<T>
,Set<T>
Extended implementation of HashSet that includes a
locked
property. This class can be used to safely expose
resource path sets to user classes without having to clone them in order
to avoid modifications. When first created, a ResourceMap
is not locked.- Author:
- Craig R. McClanahan
- See Also:
-
Constructor Summary
ConstructorDescriptionConstruct a new, empty set with the default initial capacity and load factor.ResourceSet
(int initialCapacity) Construct a new, empty set with the specified initial capacity and default load factor.ResourceSet
(int initialCapacity, float loadFactor) Construct a new, empty set with the specified initial capacity and load factor.ResourceSet
(Collection<T> coll) Construct a new set with the same contents as the existing collection. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Add the specified element to this set if it is not already present.void
clear()
Remove all of the elements from this set.boolean
isLocked()
boolean
Remove the given element from this set if it is present.void
setLocked
(boolean locked) Set the locked state of this parameter map.Methods inherited from class java.util.HashSet
clone, contains, isEmpty, iterator, size, spliterator, toArray, toArray
Methods inherited from class java.util.AbstractSet
equals, hashCode, removeAll
Methods inherited from class java.util.AbstractCollection
addAll, containsAll, retainAll, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
-
Constructor Details
-
ResourceSet
public ResourceSet()Construct a new, empty set with the default initial capacity and load factor. -
ResourceSet
public ResourceSet(int initialCapacity) Construct a new, empty set with the specified initial capacity and default load factor.- Parameters:
initialCapacity
- The initial capacity of this set
-
ResourceSet
public ResourceSet(int initialCapacity, float loadFactor) Construct a new, empty set with the specified initial capacity and load factor.- Parameters:
initialCapacity
- The initial capacity of this setloadFactor
- The load factor of this set
-
ResourceSet
Construct a new set with the same contents as the existing collection.- Parameters:
coll
- The collection whose contents we should copy
-
-
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
-
add
Add the specified element to this set if it is not already present. Returntrue
if the element was added.- Specified by:
add
in interfaceCollection<T>
- Specified by:
add
in interfaceSet<T>
- Overrides:
add
in classHashSet<T>
- Parameters:
o
- The object to be added- Throws:
IllegalStateException
- if this ResourceSet is locked
-
clear
public void clear()Remove all of the elements from this set.- Specified by:
clear
in interfaceCollection<T>
- Specified by:
clear
in interfaceSet<T>
- Overrides:
clear
in classHashSet<T>
- Throws:
IllegalStateException
- if this ResourceSet is locked
-
remove
Remove the given element from this set if it is present. Returntrue
if the element was removed.- Specified by:
remove
in interfaceCollection<T>
- Specified by:
remove
in interfaceSet<T>
- Overrides:
remove
in classHashSet<T>
- Parameters:
o
- The object to be removed- Throws:
IllegalStateException
- if this ResourceSet is locked
-