You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by se...@apache.org on 2010/10/18 21:31:59 UTC
svn commit: r1023964 -
/commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java
Author: sebb
Date: Mon Oct 18 19:31:58 2010
New Revision: 1023964
URL: http://svn.apache.org/viewvc?rev=1023964&view=rev
Log:
Generics
Modified:
commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java
Modified: commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java?rev=1023964&r1=1023963&r2=1023964&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java (original)
+++ commons/proper/collections/trunk/src/java/org/apache/commons/collections/buffer/TransformedBuffer.java Mon Oct 18 19:31:58 2010
@@ -70,11 +70,11 @@ public class TransformedBuffer<E> extend
* @throws IllegalArgumentException if buffer or transformer is null
* @since Commons Collections 3.3
*/
- // TODO: Generics
- public static Buffer decorateTransform(Buffer buffer, Transformer transformer) {
- TransformedBuffer decorated = new TransformedBuffer(buffer, transformer);
- if (transformer != null && buffer != null && buffer.size() > 0) {
- Object[] values = buffer.toArray();
+ public static <E> Buffer<E> decorateTransform(Buffer<E> buffer, Transformer<? super E, ? extends E> transformer) {
+ TransformedBuffer<E> decorated = new TransformedBuffer<E>(buffer, transformer); // throws IAE if buffer or transformer is null
+ if (buffer.size() > 0) {
+ @SuppressWarnings("unchecked") // buffer is type <E>
+ E[] values = (E[]) buffer.toArray();
buffer.clear();
for(int i=0; i<values.length; i++) {
decorated.decorated().add(transformer.transform(values[i]));