Merging from -r468106:814127 of collections_jdk5_branch - namely where this code was generified; mostly in r738956.
Also see the following revisions: ------------------------------------------------------------------------ r471192 | scolebourne | 2006-11-04 06:04:46 -0800 (Sat, 04 Nov 2006) | 1 line Remove getList() - use decorated() ------------------------------------------------------------------------ git-svn-id: https://svn.apache.org/repos/asf/commons/proper/collections/trunk@815064 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
936ba654ac
commit
23c5be297b
|
@ -55,7 +55,7 @@ import java.util.List;
|
||||||
* @author Stephen Colebourne
|
* @author Stephen Colebourne
|
||||||
* @author Paul Legato
|
* @author Paul Legato
|
||||||
*/
|
*/
|
||||||
public class GrowthList extends AbstractSerializableListDecorator {
|
public class GrowthList<E> extends AbstractSerializableListDecorator<E> {
|
||||||
|
|
||||||
/** Serialization version */
|
/** Serialization version */
|
||||||
private static final long serialVersionUID = -3620001881672L;
|
private static final long serialVersionUID = -3620001881672L;
|
||||||
|
@ -66,8 +66,8 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @param list the list to decorate, must not be null
|
* @param list the list to decorate, must not be null
|
||||||
* @throws IllegalArgumentException if list is null
|
* @throws IllegalArgumentException if list is null
|
||||||
*/
|
*/
|
||||||
public static List decorate(List list) {
|
public static <E> List<E> decorate(List<E> list) {
|
||||||
return new GrowthList(list);
|
return new GrowthList<E>(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------------------------
|
//-----------------------------------------------------------------------
|
||||||
|
@ -75,7 +75,7 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* Constructor that uses an ArrayList internally.
|
* Constructor that uses an ArrayList internally.
|
||||||
*/
|
*/
|
||||||
public GrowthList() {
|
public GrowthList() {
|
||||||
super(new ArrayList());
|
super(new ArrayList<E>());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -85,7 +85,7 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @throws IllegalArgumentException if initial size is invalid
|
* @throws IllegalArgumentException if initial size is invalid
|
||||||
*/
|
*/
|
||||||
public GrowthList(int initialSize) {
|
public GrowthList(int initialSize) {
|
||||||
super(new ArrayList(initialSize));
|
super(new ArrayList<E>(initialSize));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -94,7 +94,7 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @param list the list to decorate, must not be null
|
* @param list the list to decorate, must not be null
|
||||||
* @throws IllegalArgumentException if list is null
|
* @throws IllegalArgumentException if list is null
|
||||||
*/
|
*/
|
||||||
protected GrowthList(List list) {
|
protected GrowthList(List<E> list) {
|
||||||
super(list);
|
super(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -117,12 +117,12 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @throws ClassCastException if the underlying list rejects the element
|
* @throws ClassCastException if the underlying list rejects the element
|
||||||
* @throws IllegalArgumentException if the underlying list rejects the element
|
* @throws IllegalArgumentException if the underlying list rejects the element
|
||||||
*/
|
*/
|
||||||
public void add(int index, Object element) {
|
public void add(int index, E element) {
|
||||||
int size = getList().size();
|
int size = decorated().size();
|
||||||
if (index > size) {
|
if (index > size) {
|
||||||
getList().addAll(Collections.nCopies(index - size, null));
|
decorated().addAll(Collections.<E>nCopies(index - size, null));
|
||||||
}
|
}
|
||||||
getList().add(index, element);
|
decorated().add(index, element);
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------------------------
|
//-----------------------------------------------------------------------
|
||||||
|
@ -145,14 +145,14 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @throws ClassCastException if the underlying list rejects the element
|
* @throws ClassCastException if the underlying list rejects the element
|
||||||
* @throws IllegalArgumentException if the underlying list rejects the element
|
* @throws IllegalArgumentException if the underlying list rejects the element
|
||||||
*/
|
*/
|
||||||
public boolean addAll(int index, Collection coll) {
|
public boolean addAll(int index, Collection<? extends E> coll) {
|
||||||
int size = getList().size();
|
int size = decorated().size();
|
||||||
boolean result = false;
|
boolean result = false;
|
||||||
if (index > size) {
|
if (index > size) {
|
||||||
getList().addAll(Collections.nCopies(index - size, null));
|
decorated().addAll(Collections.<E>nCopies(index - size, null));
|
||||||
result = true;
|
result = true;
|
||||||
}
|
}
|
||||||
return (getList().addAll(index, coll) | result);
|
return (decorated().addAll(index, coll) | result);
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------------------------------------------------
|
//-----------------------------------------------------------------------
|
||||||
|
@ -175,12 +175,12 @@ public class GrowthList extends AbstractSerializableListDecorator {
|
||||||
* @throws ClassCastException if the underlying list rejects the element
|
* @throws ClassCastException if the underlying list rejects the element
|
||||||
* @throws IllegalArgumentException if the underlying list rejects the element
|
* @throws IllegalArgumentException if the underlying list rejects the element
|
||||||
*/
|
*/
|
||||||
public Object set(int index, Object element) {
|
public E set(int index, E element) {
|
||||||
int size = getList().size();
|
int size = decorated().size();
|
||||||
if (index >= size) {
|
if (index >= size) {
|
||||||
getList().addAll(Collections.nCopies((index - size) + 1, null));
|
decorated().addAll(Collections.<E>nCopies((index - size) + 1, null));
|
||||||
}
|
}
|
||||||
return getList().set(index, element);
|
return decorated().set(index, element);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue