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 Details

  • 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()