|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
org.apache.myfaces.trinidad.util.CollectionUtils
public final class CollectionUtils
This class contains Collection utilities.
| Nested Class Summary | |
|---|---|
protected static class |
CollectionUtils.AccessHookMap<K,V> |
protected static class |
CollectionUtils.CompositeCollection<E>Note: Requires contents to be disjoint! |
protected static class |
CollectionUtils.CompositeSet<E>Note: Requires contents to be disjoint! |
protected static class |
CollectionUtils.DelegatingCollection<E> |
protected static class |
CollectionUtils.DelegatingEntry<K,V> |
protected static class |
CollectionUtils.DelegatingMap<K,V> |
protected static class |
CollectionUtils.ExternalAccessHookMap<K,V> |
protected static class |
CollectionUtils.LenientCompositeSet<E>Live composite set where both sets are allowed to be disjoint. |
static interface |
CollectionUtils.MapMutationHooks<K,V>Interface for trapping mutations to a Map. |
| Method Summary | ||
|---|---|---|
static
|
arrayList(Iterator<T> iterator)Returns an ArrayList containing all of the elements of the Iterator |
|
static
|
asSet(T... a)Returns a minimal Set containing the elements passed in. |
|
static
|
asUnmodifiableSet(T... a)Returns an unmodifiable Set containing the elements passed in. |
|
static
|
compositeSet(Set<T> primarySet, Set<T> secondarySet)Given two disjoint sets, returns a live composition of the two Sets that maintains the disjoint invariant. |
|
protected static
|
copyOf(T[] original, int newLength) |
|
protected static
|
copyOf(U[] original, int newLength, Class<? extends T[]> newType) |
|
static
|
emptyIterator()Returns an empty, unmodifiable, Iterator. |
|
static
|
emptyListIterator()Returns an empty, unmodifiable, ListIterator. |
|
static
|
emptyQueue()Returns an empty, unmodifiable, Serializable Queue. |
|
static
|
getCheckedSerializationMap(Map<K,V> map)Creates a Map that dynamically verifies that all keys and values added to it will succeed Serialization. |
|
static
|
getCheckedSerializationMap(Map<K,V> map, boolean requireSerializable)Creates a Map that dynamically verifies that all keys and values added to it will succeed Serialization. |
|
static
|
getSerializableCollection(Collection<T> c)Returns a Collection based on the passed in Collection c, guaranteed to be Serializable. |
|
static
|
getSerializableList(List<T> l)Returns a List based on the passed in List l, guaranteed to be Serializable. |
|
static
|
getUnionSize(Collection<? extends E> firstCollection, Collection<? extends E> secondCollection)Given two Collections, return the size of their union |
|
static
|
newMutationHookedMap(Map<K,V> map, CollectionUtils.MapMutationHooks<K,V> hooks)Creates a new Map that informs the MapMutationHooks of any direct mutations. |
|
static
|
newSerializableList(List<T> l)Returns a List based on the passed in List l, guaranteed to be Serializable. |
|
static
|
overlappingCompositeSet(Set<T> primarySet, Set<T> secondarySet)Given two possibly overlapping sets, returns a live composition of the two Sets. |
|
static
|
subsetValueIterator(Map<? extends K,? extends V> map, Collection<? extends K> allowedKeys)Return an iterator of the values in map with entries in allowedLeys |
|
static
|
subsetValueIterator(Map<? extends K,? extends V> map, Iterator<? extends K> allowedKeys)Return an iterator of the values in map with entries in allowedLeys The values returned in the iterator will be in the same order as their corresponding keys in allowedKeys. |
|
static
|
toArray(Iterator<? extends T> iterator, Class<T> type)Returns an array containing all of the elements of the Iterator |
|
static
|
unmodifiableCopyOfEnumSet(Set<E> s)Returns an unmodifiable versions of the Set of Enums. |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
|---|
public static <T> ArrayList<T> arrayList(Iterator<T> iterator)
iterator - Iterator to copy the contexts of
public static <T> T[] toArray(Iterator<? extends T> iterator,
Class<T> type)
iterator - Iterator to copy the contexts ofpublic static <T> Queue<T> emptyQueue()
public static <T> Iterator<T> emptyIterator()
public static <T> ListIterator<T> emptyListIterator()
public static <K,V> Iterator<V> subsetValueIterator(Map<? extends K,? extends V> map,
Collection<? extends K> allowedKeys)
map with entries in allowedLeysK - Map key typeV - Map value typemap - Map of keys and valuesallowedKeys - Collection of keys to return values for if present in map
public static <K,V> Iterator<V> subsetValueIterator(Map<? extends K,? extends V> map,
Iterator<? extends K> allowedKeys)
map with entries in allowedLeys The values returned in the iterator will be in the same order as their corresponding keys in allowedKeys.K - Map key typeV - Map value typemap - Map of keys and valuesallowedKeys - Iterator of keys to return values for if present in mappublic static <T> Set<T> asSet(T... a)
T -a - The elements to add to the SetasUnmodifiableSet(T...)public static <T> Set<T> asUnmodifiableSet(T... a)
T -a - The elements to add to the SetasSet(T...)public static <E extends Enum<E>> Set<E> unmodifiableCopyOfEnumSet(Set<E> s)
s - Set to get the tamper-proof version of
public static <T> Set<T> compositeSet(Set<T> primarySet,
Set<T> secondarySet)
primarySet - The Set that modifications will be applied tosecondarySet - The other Set. Modifications will be applied in response to changes to the primary set to ensure that the disjoint invariant is maintainedNullPointerException - of primarySet or secondarySet are nulloverlappingCompositeSet(java.util.Set<T>, java.util.Set<T>)
public static <T> Set<T> overlappingCompositeSet(Set<T> primarySet,
Set<T> secondarySet)
compositeSet should be used instead. The returned Set implementation is not thread safe.primarySet - The Set that modifications will be applied tosecondarySet - The other Set. If a removal is performed on the primarySet, it will also be applied to the secondarySet to ensure that the element is logically removed from the Set.NullPointerException - of primarySet or secondarySet are nullcompositeSet(java.util.Set<T>, java.util.Set<T>)public static <T> Collection<T> getSerializableCollection(Collection<T> c)
c, guaranteed to be Serializable. If c is Serializable, c will be returned, otherwise, c will be wrapped in a Collection that implements Serializable and upon Serialization the contents of c will be copied into the result.
The results is very similar to creating a new ArrayList with the contents of c, but no wrapper is created unless necessary and the actual creation of the Serializable copy is deferred until Serialization occurs.
c - The Collection to get a Serializable version ofcgetSerializableList(java.util.List<T>)public static <T> List<T> newSerializableList(List<T> l)
l, guaranteed to be Serializable. List l will be wrapped in a List that implements Serializable and upon Serialization the contents of l will be copied into the result.
If l implements RandomAccess, any returned List will also implement RandomAccess.
The results is very similar to creating a new ArrayList with the contents of l, but no wrapper is created unless necessary and the actual creation of the Serializable copy is deferred until Serialization occurs.
Code that calls List.subList() and needs the result to be Serializable should always use newSerializableList rather than getSerializableList because the java.util.Collections implementations of checkedList, unmodifiableList, and synchronizedList all lie and always implement Serializable, regardless of the serializability of their backing List.
l - The List to get a Serializable version oflgetSerializableList(java.util.List<T>), getSerializableCollection(java.util.Collection<T>)public static <T> List<T> getSerializableList(List<T> l)
l, guaranteed to be Serializable. If l is Serializable, l will be returned, otherwise, l will be wrapped in a List that implements Serializable and upon Serialization the contents of l will be copied into the result.
If l implements RandomAccess, any returned List will also implement RandomAccess.
The results is very similar to creating a new ArrayList with the contents of l, but no wrapper is created unless necessary and the actual creation of the Serializable copy is deferred until Serialization occurs.
Code that calls List.subList() and needs the result to be Serializable should always use newSerializableList rather than getSerializableList because the java.util.Collections implementations of checkedList, unmodifiableList, and synchronizedList all lie and always implement Serializable, regardless of the serializability of their backing List.
l - The List to get a Serializable version oflnewSerializableList(java.util.List<T>), getSerializableCollection(java.util.Collection<T>)
public static <K,V> Map<K,V> newMutationHookedMap(Map<K,V> map,
CollectionUtils.MapMutationHooks<K,V> hooks)
K - type of the keys of the MapV - type of the values of the Mapmap - Underlying map to trap mutations ofhooks - MapMutationHooks to inform of mutations to the returned MapNullPointerException - if map or hooks are nullpublic static <K,V> Map<K,V> getCheckedSerializationMap(Map<K,V> map)
This checking can be defeated by either modifying the backing map directly or by modifying an object added to the checked Map after adding it.
map - Map to wrap for Serialization validation
public static <K,V> Map<K,V> getCheckedSerializationMap(Map<K,V> map,
boolean requireSerializable)
This checking can be defeated by either modifying the backing map directly or by modifying an object added to the checked Map after adding it.
map - Map to wrap for Serialization validationrequireSerializable - if true, require that all values in the map implement Serializable.
public static <E> int getUnionSize(Collection<? extends E> firstCollection,
Collection<? extends E> secondCollection)
firstCollection - The first collection. null is allowed.secondCollection - The second collection. null is allowed.
protected static <T> T[] copyOf(T[] original,
int newLength)
protected static <T,U> T[] copyOf(U[] original,
int newLength,
Class<? extends T[]> newType)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
Copyright © 2001-2013 The Apache Software Foundation. All Rights Reserved.