Class IndirectCollectionsFactory

java.lang.Object
org.eclipse.persistence.indirection.IndirectCollectionsFactory

public final class IndirectCollectionsFactory extends Object
Provides factory methods to create JDK specific implementation of particular type of IndirectCollection.
See Also:
Author:
Lukas Jungmann
  • Field Details

    • IndirectList_Class

      public static final Class IndirectList_Class
      Class implementing IndirectList.
    • IndirectSet_Class

      public static final Class IndirectSet_Class
      Class implementing IndirectSet.
    • IndirectMap_Class

      public static final Class IndirectMap_Class
      Class implementing IndirectMap.
  • Constructor Details

    • IndirectCollectionsFactory

      public IndirectCollectionsFactory()
  • Method Details

    • createIndirectList

      public static <E> IndirectList<E> createIndirectList()
      Construct an empty IndirectList with the default initial capacity (10) and default capacity increment (0).
      Type Parameters:
      E - the class of the objects in the list
      Returns:
      an empty IndirectList with the default initial capacity and default capacity increment
    • createIndirectList

      public static <E> IndirectList<E> createIndirectList(int initialCapacity)
      Construct an empty IndirectList with the specified initial capacity and default capacity increment (0).
      Type Parameters:
      E - the class of the objects in the list
      Parameters:
      initialCapacity - the initial capacity of the vector
      Returns:
      an empty IndirectList with the specified initial capacity and default capacity increment
      Throws:
      IllegalArgumentException - if the specified initial capacity is negative
    • createIndirectList

      public static <E> IndirectList<E> createIndirectList(Collection<? extends E> collection)
      Construct an IndirectList containing the elements of the specified collection, in the order they are returned by the collection's iterator.
      Type Parameters:
      E - the class of the objects in the list
      Parameters:
      collection - a collection containing the elements to construct the IndirectList with.
      Returns:
      an IndirectList containing the elements of the specified collection
    • createIndirectSet

      public static <E> IndirectSet<E> createIndirectSet()
      Construct an empty IndirectSet with the default initial capacity (10) and the default load factor (0.75).
      Returns:
      an empty IndirectSet with the default initial capacity and the default load factor
    • createIndirectSet

      public static <E> IndirectSet<E> createIndirectSet(int initialCapacity)
      Construct an empty IndirectSet with the specified initial capacity and the default load factor (0.75).
      Parameters:
      initialCapacity - the initial capacity of the set
      Returns:
      an empty IndirectSet with the specified initial capacity and the default load factor
      Throws:
      IllegalArgumentException - if the specified initial capacity is negative
    • createIndirectSet

      public static <E> IndirectSet<E> createIndirectSet(Collection<? extends E> collection)
      Constructs an IndirectSet containing the elements of the specified collection.
      Parameters:
      collection - a collection containing the elements to construct the IndirectSet with
      Returns:
      an IndirectSet containing the elements of the specified collection
      Throws:
      NullPointerException - if the specified collection is null
    • createIndirectMap

      public static <K, V> IndirectMap<K,V> createIndirectMap()
      Construct a new, empty IndirectMap with the default initial capacity (11) and the default load factor (0.75).
      Returns:
      a new, empty IndirectMap with the default initial capacity and the default load factor
    • createIndirectMap

      public static <K, V> IndirectMap<K,V> createIndirectMap(int initialCapacity)
      Construct a new, empty IndirectMap with the specified initial capacity and the default load factor (0.75).
      Parameters:
      initialCapacity - the initial capacity of the IndirectMap
      Returns:
      a new, empty IndirectMap with the specified initial capacity and the default load factor
      Throws:
      IllegalArgumentException - if the initial capacity is less than or equal to zero
    • createIndirectMap

      public static <K, V> IndirectMap<K,V> createIndirectMap(Map<? extends K,? extends V> map)
      Construct a new IndirectMap with the same mappings as the given Map. The IndirectMap is created with a capacity of twice the number of entries in the given Map or 11 (whichever is greater), and a default load factor, which is 0.75.
      Parameters:
      map - the map whose mappings are to be placed into created IndirectMap
      Returns:
      a new IndirectMap with the same mappings as the given Map
      Throws:
      NullPointerException - if the specified map is null