You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by rw...@apache.org on 2014/04/16 01:46:08 UTC

svn commit: r1587756 - in /pivot/trunk/core/src/org/apache/pivot/collections: ArrayList.java HashMap.java

Author: rwhitcomb
Date: Tue Apr 15 23:46:07 2014
New Revision: 1587756

URL: http://svn.apache.org/r1587756
Log:
PIVOT-799: Improve operation of Pivot collections objects.

This is just a part of what could be done, according to the issue:
Add constructors for ArrayList and HashMap that take java.util counterparts.
* new ArrayList(java.util.Collection<T>) constructs a new Pivot list from the
  existing Java list.
* new HashMap(java.util.Map<K,V>) constructs a new Pivot map by copying the
  existing Java map.

Modified:
    pivot/trunk/core/src/org/apache/pivot/collections/ArrayList.java
    pivot/trunk/core/src/org/apache/pivot/collections/HashMap.java

Modified: pivot/trunk/core/src/org/apache/pivot/collections/ArrayList.java
URL: http://svn.apache.org/viewvc/pivot/trunk/core/src/org/apache/pivot/collections/ArrayList.java?rev=1587756&r1=1587755&r2=1587756&view=diff
==============================================================================
--- pivot/trunk/core/src/org/apache/pivot/collections/ArrayList.java (original)
+++ pivot/trunk/core/src/org/apache/pivot/collections/ArrayList.java Tue Apr 15 23:46:07 2014
@@ -198,6 +198,13 @@ public class ArrayList<T> implements Lis
         comparator = arrayList.comparator;
     }
 
+    public ArrayList(java.util.Collection<T> c) {
+        verifyNotNull("c", c);
+
+        items = c.toArray();
+        length = c.size();
+    }
+
     @Override
     public int add(T item) {
         int index = -1;

Modified: pivot/trunk/core/src/org/apache/pivot/collections/HashMap.java
URL: http://svn.apache.org/viewvc/pivot/trunk/core/src/org/apache/pivot/collections/HashMap.java?rev=1587756&r1=1587755&r2=1587756&view=diff
==============================================================================
--- pivot/trunk/core/src/org/apache/pivot/collections/HashMap.java (original)
+++ pivot/trunk/core/src/org/apache/pivot/collections/HashMap.java Tue Apr 15 23:46:07 2014
@@ -138,6 +138,14 @@ public class HashMap<K, V> implements Ma
         }
     }
 
+    public HashMap(java.util.Map<K, V> map) {
+        this(Math.max((int) (map.size() / DEFAULT_LOAD_FACTOR) + 1, DEFAULT_CAPACITY));
+
+        for (K key : map.keySet()) {
+            put(key, map.get(key));
+        }
+    }
+
     public HashMap(Comparator<K> comparator) {
         this();