You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ma...@apache.org on 2008/10/27 11:35:15 UTC

svn commit: r708131 - in /myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util: CollectionUtils.java TrinidadArrays.java

Author: matzew
Date: Mon Oct 27 03:35:15 2008
New Revision: 708131

URL: http://svn.apache.org/viewvc?rev=708131&view=rev
Log:
removed some JDK5 hack.
Making the new method protected on CollectionUtils instead exposing them as public...

Removed:
    myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/TrinidadArrays.java
Modified:
    myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/CollectionUtils.java

Modified: myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/CollectionUtils.java
URL: http://svn.apache.org/viewvc/myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/CollectionUtils.java?rev=708131&r1=708130&r2=708131&view=diff
==============================================================================
--- myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/CollectionUtils.java (original)
+++ myfaces/trinidad/trunk_1.2.x/trinidad-api/src/main/java/org/apache/myfaces/trinidad/util/CollectionUtils.java Mon Oct 27 03:35:15 2008
@@ -23,6 +23,7 @@
 import java.io.ObjectOutputStream;
 import java.io.ObjectStreamException;
 import java.io.Serializable;
+import java.lang.reflect.Array;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -171,6 +172,21 @@
     else
       return new CheckedSerializationMap<K,V>(map);
   }
+  
+  protected static <T> T[] copyOf(T[] original, int newLength)
+  {
+    return (T[]) copyOf(original, newLength, original.getClass());
+  }
+
+  protected static <T,U> T[] copyOf(U[] original, int newLength, Class<? extends T[]> newType)
+  {
+    T[] copy = ((Object)newType == (Object)Object[].class)
+        ? (T[]) new Object[newLength]
+        : (T[]) Array.newInstance(newType.getComponentType(), newLength);
+    System.arraycopy(original, 0, copy, 0,
+                     Math.min(original.length, newLength));
+    return copy;
+  }
 
   protected abstract static class DelegatingCollection<E> implements Collection<E>
   {
@@ -628,7 +644,7 @@
         // attempt to copy any of its contents into the output array
         T[] outTypeArray = (inputSize == 0)
                              ? a
-                             : TrinidadArrays.copyOf(a, 0);
+                             : CollectionUtils.copyOf(a, 0);
         
         Object[] delegateEntries = super.toArray(outTypeArray);