Package org.apache.tapestry5.commons.util

# Class CollectionFactory

java.lang.Object
org.apache.tapestry5.commons.util.CollectionFactory

public final class CollectionFactory extends Object
Static factory methods to ease the creation of new collection types (when using generics). Most of these method leverage the compiler's ability to match generic types by return value. Typical usage (with a static import):

     Map<Foo, Bar> map = newMap();

This is a replacement for:

     Map<Foo, Bar> map = new HashMap<Foo, Bar>();

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `CollectionFactory()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static <V> Map<String,V>`
  `newCaseInsensitiveMap()`
  `static <K, V> ConcurrentMap<K,V>`
  `newConcurrentMap()`
  Constructs a new concurrent map, which is safe to access via multiple threads.
  `static <T> LinkedList<T>`
  `newLinkedList()`
  Useful for queues.
  `static <T> List<T>`
  `newList()`
  Contructs and returns a new generic `ArrayList` instance.
  `static <T, V extends T>
  List<T>`
  `newList(Collection<V> list)`
  Constructs and returns a new `ArrayList` as a copy of the provided collection.
  `static <T, V extends T>
  List<T>`
  `newList(V... elements)`
  Creates a new, fully modifiable list from an initial set of elements.
  `static <K, V> Map<K,V>`
  `newMap()`
  Constructs and returns a generic `HashMap` instance.
  `static <K, V> Map<K,V>`
  `newMap(Map<? extends K,? extends V> map)`
  Constructs a new `HashMap` instance by copying an existing Map instance.
  `static <T> Set<T>`
  `newSet()`
  Constructs and returns a generic `HashSet` instance.
  `static <T, V extends T>
  Set<T>`
  `newSet(Collection<V> values)`
  Contructs a new `HashSet` and initializes it using the provided collection.
  `static <T, V extends T>
  Set<T>`
  `newSet(V... values)`
  `static <T> Stack<T>`
  `newStack()`
  `static <T> List<T>`
  `newThreadSafeList()`
  Constructs and returns a new `CopyOnWriteArrayList`.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### CollectionFactory

    public CollectionFactory()

- ## Method Details

  - ### newMap

    public static <K, V> Map<K,V> newMap()
    Constructs and returns a generic `HashMap` instance.

  - ### newSet

    public static <T> Set<T> newSet()
    Constructs and returns a generic `HashSet` instance.

  - ### newSet

    public static <T, V extends T> Set<T> newSet(Collection<V> values)
    Contructs a new `HashSet` and initializes it using the provided collection.

  - ### newSet

    public static <T, V extends T> Set<T> newSet(V... values)

  - ### newMap

    public static <K, V> Map<K,V> newMap(Map<? extends K,? extends V> map)
    Constructs a new `HashMap` instance by copying an existing Map instance.

  - ### newConcurrentMap

    public static <K, V> ConcurrentMap<K,V> newConcurrentMap()
    Constructs a new concurrent map, which is safe to access via multiple threads.

  - ### newList

    public static <T> List<T> newList()
    Contructs and returns a new generic `ArrayList` instance.

  - ### newList

    public static <T, V extends T> List<T> newList(V... elements)
    Creates a new, fully modifiable list from an initial set of elements.

  - ### newLinkedList

    public static <T> LinkedList<T> newLinkedList()
    Useful for queues.

  - ### newList

    public static <T, V extends T> List<T> newList(Collection<V> list)
    Constructs and returns a new `ArrayList` as a copy of the provided collection.

  - ### newThreadSafeList

    public static <T> List<T> newThreadSafeList()
    Constructs and returns a new `CopyOnWriteArrayList`.

  - ### newStack

    public static <T> Stack<T> newStack()

  - ### newCaseInsensitiveMap

    public static <V> Map<String,V> newCaseInsensitiveMap()