toward better serialization contract support in sublists
git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/collections/trunk@130981 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
9697e648ba
commit
02687ec175
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/Attic/AbstractRandomAccessIntList.java,v 1.11 2003/02/26 19:17:22 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/Attic/AbstractRandomAccessIntList.java,v 1.12 2003/02/28 00:17:52 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -57,7 +57,6 @@
|
||||||
|
|
||||||
package org.apache.commons.collections.primitives;
|
package org.apache.commons.collections.primitives;
|
||||||
|
|
||||||
import java.io.Serializable;
|
|
||||||
import java.util.ConcurrentModificationException;
|
import java.util.ConcurrentModificationException;
|
||||||
import java.util.NoSuchElementException;
|
import java.util.NoSuchElementException;
|
||||||
|
|
||||||
|
@ -75,11 +74,11 @@ import java.util.NoSuchElementException;
|
||||||
* to provide a more efficient implementation.
|
* to provide a more efficient implementation.
|
||||||
*
|
*
|
||||||
* @since Commons Collections 2.2
|
* @since Commons Collections 2.2
|
||||||
* @version $Revision: 1.11 $ $Date: 2003/02/26 19:17:22 $
|
* @version $Revision: 1.12 $ $Date: 2003/02/28 00:17:52 $
|
||||||
*
|
*
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public abstract class AbstractRandomAccessIntList extends AbstractIntCollection implements IntList, Serializable {
|
public abstract class AbstractRandomAccessIntList extends AbstractIntCollection implements IntList {
|
||||||
|
|
||||||
// constructors
|
// constructors
|
||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
|
@ -251,7 +250,7 @@ public abstract class AbstractRandomAccessIntList extends AbstractIntCollection
|
||||||
// inner classes
|
// inner classes
|
||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
|
|
||||||
private static class ComodChecker implements Serializable {
|
private static class ComodChecker {
|
||||||
ComodChecker(AbstractRandomAccessIntList source) {
|
ComodChecker(AbstractRandomAccessIntList source) {
|
||||||
_source = source;
|
_source = source;
|
||||||
resyncModCount();
|
resyncModCount();
|
||||||
|
@ -368,7 +367,7 @@ public abstract class AbstractRandomAccessIntList extends AbstractIntCollection
|
||||||
private int _lastReturnedIndex = -1;
|
private int _lastReturnedIndex = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected static class RandomAccessIntSubList extends AbstractRandomAccessIntList implements IntList, Serializable {
|
protected static class RandomAccessIntSubList extends AbstractRandomAccessIntList implements IntList {
|
||||||
RandomAccessIntSubList(AbstractRandomAccessIntList list, int fromIndex, int toIndex) {
|
RandomAccessIntSubList(AbstractRandomAccessIntList list, int fromIndex, int toIndex) {
|
||||||
if(fromIndex < 0 || toIndex > list.size() || fromIndex > toIndex) {
|
if(fromIndex < 0 || toIndex > list.size() || fromIndex > toIndex) {
|
||||||
throw new IndexOutOfBoundsException();
|
throw new IndexOutOfBoundsException();
|
||||||
|
|
|
@ -0,0 +1,151 @@
|
||||||
|
/*
|
||||||
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/AbstractCollectionIntCollection.java,v 1.1 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
|
* ====================================================================
|
||||||
|
* The Apache Software License, Version 1.1
|
||||||
|
*
|
||||||
|
* Copyright (c) 2003 The Apache Software Foundation. All rights
|
||||||
|
* reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* 3. The end-user documentation included with the redistribution, if
|
||||||
|
* any, must include the following acknowledgment:
|
||||||
|
* "This product includes software developed by the
|
||||||
|
* Apache Software Foundation (http://www.apache.org/)."
|
||||||
|
* Alternately, this acknowledgment may appear in the software itself,
|
||||||
|
* if and wherever such third-party acknowledgments normally appear.
|
||||||
|
*
|
||||||
|
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
|
||||||
|
* Foundation" must not be used to endorse or promote products derived
|
||||||
|
* from this software without prior written permission. For written
|
||||||
|
* permission, please contact apache@apache.org.
|
||||||
|
*
|
||||||
|
* 5. Products derived from this software may not be called "Apache"
|
||||||
|
* nor may "Apache" appear in their names without prior written
|
||||||
|
* permission of the Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||||
|
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||||
|
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||||
|
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
* SUCH DAMAGE.
|
||||||
|
* ====================================================================
|
||||||
|
*
|
||||||
|
* This software consists of voluntary contributions made by many
|
||||||
|
* individuals on behalf of the Apache Software Foundation. For more
|
||||||
|
* information on the Apache Software Foundation, please see
|
||||||
|
* <http://www.apache.org/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.apache.commons.collections.primitives.adapters;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
|
import org.apache.commons.collections.primitives.IntCollection;
|
||||||
|
import org.apache.commons.collections.primitives.IntIterator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since Commons Collections 2.2
|
||||||
|
* @version $Revision: 1.1 $ $Date: 2003/02/28 00:17:53 $
|
||||||
|
* @author Rodney Waldhoff
|
||||||
|
*/
|
||||||
|
abstract class AbstractCollectionIntCollection implements IntCollection {
|
||||||
|
protected AbstractCollectionIntCollection() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean add(int element) {
|
||||||
|
return getCollection().add(new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean addAll(IntCollection c) {
|
||||||
|
return getCollection().addAll(IntCollectionCollection.wrap(c));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void clear() {
|
||||||
|
getCollection().clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean contains(int element) {
|
||||||
|
return getCollection().contains(new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean containsAll(IntCollection c) {
|
||||||
|
return getCollection().containsAll(IntCollectionCollection.wrap(c));
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString() {
|
||||||
|
return getCollection().toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isEmpty() {
|
||||||
|
return getCollection().isEmpty();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link IteratorIntIterator#wrap wraps} the
|
||||||
|
* {@link java.util.Iterator Iterator}
|
||||||
|
* returned by my underlying
|
||||||
|
* {@link Collection Collection},
|
||||||
|
* if any.
|
||||||
|
*/
|
||||||
|
public IntIterator iterator() {
|
||||||
|
return IteratorIntIterator.wrap(getCollection().iterator());
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean removeElement(int element) {
|
||||||
|
return getCollection().remove(new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean removeAll(IntCollection c) {
|
||||||
|
return getCollection().removeAll(IntCollectionCollection.wrap(c));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean retainAll(IntCollection c) {
|
||||||
|
return getCollection().retainAll(IntCollectionCollection.wrap(c));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int size() {
|
||||||
|
return getCollection().size();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] toArray() {
|
||||||
|
Object[] src = getCollection().toArray();
|
||||||
|
int[] dest = new int[src.length];
|
||||||
|
for(int i=0;i<src.length;i++) {
|
||||||
|
dest[i] = ((Number)(src[i])).intValue();
|
||||||
|
}
|
||||||
|
return dest;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int[] toArray(int[] dest) {
|
||||||
|
Object[] src = getCollection().toArray();
|
||||||
|
if(dest.length < src.length) {
|
||||||
|
dest = new int[src.length];
|
||||||
|
}
|
||||||
|
for(int i=0;i<src.length;i++) {
|
||||||
|
dest[i] = ((Number)(src[i])).intValue();
|
||||||
|
}
|
||||||
|
return dest;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract Collection getCollection();
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,161 @@
|
||||||
|
/*
|
||||||
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/AbstractListIntList.java,v 1.1 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
|
* ====================================================================
|
||||||
|
* The Apache Software License, Version 1.1
|
||||||
|
*
|
||||||
|
* Copyright (c) 2003 The Apache Software Foundation. All rights
|
||||||
|
* reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* 3. The end-user documentation included with the redistribution, if
|
||||||
|
* any, must include the following acknowledgment:
|
||||||
|
* "This product includes software developed by the
|
||||||
|
* Apache Software Foundation (http://www.apache.org/)."
|
||||||
|
* Alternately, this acknowledgment may appear in the software itself,
|
||||||
|
* if and wherever such third-party acknowledgments normally appear.
|
||||||
|
*
|
||||||
|
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
|
||||||
|
* Foundation" must not be used to endorse or promote products derived
|
||||||
|
* from this software without prior written permission. For written
|
||||||
|
* permission, please contact apache@apache.org.
|
||||||
|
*
|
||||||
|
* 5. Products derived from this software may not be called "Apache"
|
||||||
|
* nor may "Apache" appear in their names without prior written
|
||||||
|
* permission of the Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||||
|
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||||
|
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||||
|
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
* SUCH DAMAGE.
|
||||||
|
* ====================================================================
|
||||||
|
*
|
||||||
|
* This software consists of voluntary contributions made by many
|
||||||
|
* individuals on behalf of the Apache Software Foundation. For more
|
||||||
|
* information on the Apache Software Foundation, please see
|
||||||
|
* <http://www.apache.org/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.apache.commons.collections.primitives.adapters;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.apache.commons.collections.primitives.IntCollection;
|
||||||
|
import org.apache.commons.collections.primitives.IntIterator;
|
||||||
|
import org.apache.commons.collections.primitives.IntList;
|
||||||
|
import org.apache.commons.collections.primitives.IntListIterator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @since Commons Collections 2.2
|
||||||
|
* @version $Revision: 1.1 $ $Date: 2003/02/28 00:17:53 $
|
||||||
|
* @author Rodney Waldhoff
|
||||||
|
*/
|
||||||
|
abstract class AbstractListIntList extends AbstractCollectionIntCollection implements IntList {
|
||||||
|
|
||||||
|
public void add(int index, int element) {
|
||||||
|
getList().add(index,new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean addAll(int index, IntCollection collection) {
|
||||||
|
return getList().addAll(index,IntCollectionCollection.wrap(collection));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int get(int index) {
|
||||||
|
return ((Number)getList().get(index)).intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int indexOf(int element) {
|
||||||
|
return getList().indexOf(new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int lastIndexOf(int element) {
|
||||||
|
return getList().lastIndexOf(new Integer(element));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link ListIteratorIntListIterator#wrap wraps} the
|
||||||
|
* {@link IntList IntList}
|
||||||
|
* returned by my underlying
|
||||||
|
* {@link IntListIterator IntListIterator},
|
||||||
|
* if any.
|
||||||
|
*/
|
||||||
|
public IntListIterator listIterator() {
|
||||||
|
return ListIteratorIntListIterator.wrap(getList().listIterator());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link ListIteratorIntListIterator#wrap wraps} the
|
||||||
|
* {@link IntList IntList}
|
||||||
|
* returned by my underlying
|
||||||
|
* {@link IntListIterator IntListIterator},
|
||||||
|
* if any.
|
||||||
|
*/
|
||||||
|
public IntListIterator listIterator(int index) {
|
||||||
|
return ListIteratorIntListIterator.wrap(getList().listIterator(index));
|
||||||
|
}
|
||||||
|
|
||||||
|
public int removeElementAt(int index) {
|
||||||
|
return ((Number)getList().remove(index)).intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
public int set(int index, int element) {
|
||||||
|
return ((Number)getList().set(index,new Integer(element))).intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
public IntList subList(int fromIndex, int toIndex) {
|
||||||
|
return ListIntList.wrap(getList().subList(fromIndex,toIndex));
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if(obj instanceof IntList) {
|
||||||
|
IntList that = (IntList)obj;
|
||||||
|
if(this == that) {
|
||||||
|
return true;
|
||||||
|
} else if(this.size() != that.size()) {
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
IntIterator thisiter = iterator();
|
||||||
|
IntIterator thatiter = that.iterator();
|
||||||
|
while(thisiter.hasNext()) {
|
||||||
|
if(thisiter.next() != thatiter.next()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int hashCode() {
|
||||||
|
return getList().hashCode();
|
||||||
|
}
|
||||||
|
|
||||||
|
final protected Collection getCollection() {
|
||||||
|
return getList();
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract protected List getList();
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/CollectionIntCollection.java,v 1.4 2003/02/26 19:17:23 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/CollectionIntCollection.java,v 1.5 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -61,7 +61,6 @@ import java.io.Serializable;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
import org.apache.commons.collections.primitives.IntCollection;
|
import org.apache.commons.collections.primitives.IntCollection;
|
||||||
import org.apache.commons.collections.primitives.IntIterator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adapts a {@link java.lang.Number Number}-valued
|
* Adapts a {@link java.lang.Number Number}-valued
|
||||||
|
@ -73,10 +72,10 @@ import org.apache.commons.collections.primitives.IntIterator;
|
||||||
* implementation in the "obvious" way.
|
* implementation in the "obvious" way.
|
||||||
*
|
*
|
||||||
* @since Commons Collections 2.2
|
* @since Commons Collections 2.2
|
||||||
* @version $Revision: 1.4 $ $Date: 2003/02/26 19:17:23 $
|
* @version $Revision: 1.5 $ $Date: 2003/02/28 00:17:53 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public class CollectionIntCollection implements IntCollection, Serializable {
|
public class CollectionIntCollection extends AbstractCollectionIntCollection implements Serializable {
|
||||||
/**
|
/**
|
||||||
* Create an {@link IntCollection IntCollection} wrapping
|
* Create an {@link IntCollection IntCollection} wrapping
|
||||||
* the specified {@link Collection Collection}. When
|
* the specified {@link Collection Collection}. When
|
||||||
|
@ -89,7 +88,13 @@ public class CollectionIntCollection implements IntCollection, Serializable {
|
||||||
* <code>null</code>.
|
* <code>null</code>.
|
||||||
*/
|
*/
|
||||||
public static IntCollection wrap(Collection collection) {
|
public static IntCollection wrap(Collection collection) {
|
||||||
return null == collection ? null : new CollectionIntCollection(collection);
|
if(null == collection) {
|
||||||
|
return null;
|
||||||
|
} else if(collection instanceof Serializable) {
|
||||||
|
return new CollectionIntCollection(collection);
|
||||||
|
} else {
|
||||||
|
return new NonSerializableCollectionIntCollection(collection);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -107,100 +112,9 @@ public class CollectionIntCollection implements IntCollection, Serializable {
|
||||||
_collection = collection;
|
_collection = collection;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean add(int element) {
|
protected Collection getCollection() {
|
||||||
return _collection.add(new Integer(element));
|
return _collection;
|
||||||
}
|
|
||||||
|
|
||||||
public boolean addAll(IntCollection c) {
|
|
||||||
return _collection.addAll(IntCollectionCollection.wrap(c));
|
|
||||||
}
|
|
||||||
|
|
||||||
public void clear() {
|
|
||||||
_collection.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean contains(int element) {
|
|
||||||
return _collection.contains(new Integer(element));
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean containsAll(IntCollection c) {
|
|
||||||
return _collection.containsAll(IntCollectionCollection.wrap(c));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If <i>that</i> is an {@link IntCollection IntCollection},
|
|
||||||
* it is {@link IntCollectionCollection#wrap wrapped} and
|
|
||||||
* compared to my underlying {@link Collection Collection}, otherwise
|
|
||||||
* this method simply delegates to my underlying
|
|
||||||
* {@link Collection Collection}.
|
|
||||||
*/
|
|
||||||
public boolean equals(Object that) {
|
|
||||||
if(that instanceof IntCollection) {
|
|
||||||
return _collection.equals(IntCollectionCollection.wrap((IntCollection)that));
|
|
||||||
} else {
|
|
||||||
return _collection.equals(that);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public int hashCode() {
|
|
||||||
return _collection.hashCode();
|
|
||||||
}
|
|
||||||
|
|
||||||
public String toString() {
|
|
||||||
return _collection.toString();
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isEmpty() {
|
|
||||||
return _collection.isEmpty();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* {@link IteratorIntIterator#wrap wraps} the
|
|
||||||
* {@link java.util.Iterator Iterator}
|
|
||||||
* returned by my underlying
|
|
||||||
* {@link Collection Collection},
|
|
||||||
* if any.
|
|
||||||
*/
|
|
||||||
public IntIterator iterator() {
|
|
||||||
return IteratorIntIterator.wrap(_collection.iterator());
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean removeElement(int element) {
|
|
||||||
return _collection.remove(new Integer(element));
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean removeAll(IntCollection c) {
|
|
||||||
return _collection.removeAll(IntCollectionCollection.wrap(c));
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean retainAll(IntCollection c) {
|
|
||||||
return _collection.retainAll(IntCollectionCollection.wrap(c));
|
|
||||||
}
|
|
||||||
|
|
||||||
public int size() {
|
|
||||||
return _collection.size();
|
|
||||||
}
|
|
||||||
|
|
||||||
public int[] toArray() {
|
|
||||||
Object[] src = _collection.toArray();
|
|
||||||
int[] dest = new int[src.length];
|
|
||||||
for(int i=0;i<src.length;i++) {
|
|
||||||
dest[i] = ((Number)(src[i])).intValue();
|
|
||||||
}
|
|
||||||
return dest;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int[] toArray(int[] dest) {
|
|
||||||
Object[] src = _collection.toArray();
|
|
||||||
if(dest.length < src.length) {
|
|
||||||
dest = new int[src.length];
|
|
||||||
}
|
|
||||||
for(int i=0;i<src.length;i++) {
|
|
||||||
dest[i] = ((Number)(src[i])).intValue();
|
|
||||||
}
|
|
||||||
return dest;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private Collection _collection = null;
|
private Collection _collection = null;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/ListIntList.java,v 1.5 2003/02/26 19:17:23 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/ListIntList.java,v 1.6 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -60,10 +60,7 @@ package org.apache.commons.collections.primitives.adapters;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.apache.commons.collections.primitives.IntCollection;
|
|
||||||
import org.apache.commons.collections.primitives.IntIterator;
|
|
||||||
import org.apache.commons.collections.primitives.IntList;
|
import org.apache.commons.collections.primitives.IntList;
|
||||||
import org.apache.commons.collections.primitives.IntListIterator;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adapts a {@link Number}-valued {@link List List}
|
* Adapts a {@link Number}-valued {@link List List}
|
||||||
|
@ -74,10 +71,10 @@ import org.apache.commons.collections.primitives.IntListIterator;
|
||||||
* implementation in the "obvious" way.
|
* implementation in the "obvious" way.
|
||||||
*
|
*
|
||||||
* @since Commons Collections 2.2
|
* @since Commons Collections 2.2
|
||||||
* @version $Revision: 1.5 $ $Date: 2003/02/26 19:17:23 $
|
* @version $Revision: 1.6 $ $Date: 2003/02/28 00:17:53 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public class ListIntList extends CollectionIntCollection implements IntList, Serializable {
|
public class ListIntList extends AbstractListIntList implements Serializable {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create an {@link IntList IntList} wrapping
|
* Create an {@link IntList IntList} wrapping
|
||||||
|
@ -92,7 +89,13 @@ public class ListIntList extends CollectionIntCollection implements IntList, Ser
|
||||||
* <code>null</code>.
|
* <code>null</code>.
|
||||||
*/
|
*/
|
||||||
public static IntList wrap(List list) {
|
public static IntList wrap(List list) {
|
||||||
return null == list ? null : new ListIntList(list);
|
if(null == list) {
|
||||||
|
return null;
|
||||||
|
} else if(list instanceof Serializable) {
|
||||||
|
return new ListIntList(list);
|
||||||
|
} else {
|
||||||
|
return new NonSerializableListIntList(list);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -107,84 +110,11 @@ public class ListIntList extends CollectionIntCollection implements IntList, Ser
|
||||||
* @see #wrap
|
* @see #wrap
|
||||||
*/
|
*/
|
||||||
public ListIntList(List list) {
|
public ListIntList(List list) {
|
||||||
super(list);
|
|
||||||
_list = list;
|
_list = list;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void add(int index, int element) {
|
protected List getList() {
|
||||||
_list.add(index,new Integer(element));
|
return _list;
|
||||||
}
|
|
||||||
|
|
||||||
public boolean addAll(int index, IntCollection collection) {
|
|
||||||
return _list.addAll(index,IntCollectionCollection.wrap(collection));
|
|
||||||
}
|
|
||||||
|
|
||||||
public int get(int index) {
|
|
||||||
return ((Number)_list.get(index)).intValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public int indexOf(int element) {
|
|
||||||
return _list.indexOf(new Integer(element));
|
|
||||||
}
|
|
||||||
|
|
||||||
public int lastIndexOf(int element) {
|
|
||||||
return _list.lastIndexOf(new Integer(element));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* {@link ListIteratorIntListIterator#wrap wraps} the
|
|
||||||
* {@link IntList IntList}
|
|
||||||
* returned by my underlying
|
|
||||||
* {@link IntListIterator IntListIterator},
|
|
||||||
* if any.
|
|
||||||
*/
|
|
||||||
public IntListIterator listIterator() {
|
|
||||||
return ListIteratorIntListIterator.wrap(_list.listIterator());
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* {@link ListIteratorIntListIterator#wrap wraps} the
|
|
||||||
* {@link IntList IntList}
|
|
||||||
* returned by my underlying
|
|
||||||
* {@link IntListIterator IntListIterator},
|
|
||||||
* if any.
|
|
||||||
*/
|
|
||||||
public IntListIterator listIterator(int index) {
|
|
||||||
return ListIteratorIntListIterator.wrap(_list.listIterator(index));
|
|
||||||
}
|
|
||||||
|
|
||||||
public int removeElementAt(int index) {
|
|
||||||
return ((Number)_list.remove(index)).intValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public int set(int index, int element) {
|
|
||||||
return ((Number)_list.set(index,new Integer(element))).intValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
public IntList subList(int fromIndex, int toIndex) {
|
|
||||||
return ListIntList.wrap(_list.subList(fromIndex,toIndex));
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean equals(Object obj) {
|
|
||||||
if(obj instanceof IntList) {
|
|
||||||
IntList that = (IntList)obj;
|
|
||||||
if(this == that) {
|
|
||||||
return true;
|
|
||||||
} else if(this.size() != that.size()) {
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
IntIterator thisiter = iterator();
|
|
||||||
IntIterator thatiter = that.iterator();
|
|
||||||
while(thisiter.hasNext()) {
|
|
||||||
if(thisiter.next() != thatiter.next()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private List _list = null;
|
private List _list = null;
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
/*
|
||||||
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/NonSerializableCollectionIntCollection.java,v 1.1 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
|
* ====================================================================
|
||||||
|
* The Apache Software License, Version 1.1
|
||||||
|
*
|
||||||
|
* Copyright (c) 2003 The Apache Software Foundation. All rights
|
||||||
|
* reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* 3. The end-user documentation included with the redistribution, if
|
||||||
|
* any, must include the following acknowledgment:
|
||||||
|
* "This product includes software developed by the
|
||||||
|
* Apache Software Foundation (http://www.apache.org/)."
|
||||||
|
* Alternately, this acknowledgment may appear in the software itself,
|
||||||
|
* if and wherever such third-party acknowledgments normally appear.
|
||||||
|
*
|
||||||
|
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
|
||||||
|
* Foundation" must not be used to endorse or promote products derived
|
||||||
|
* from this software without prior written permission. For written
|
||||||
|
* permission, please contact apache@apache.org.
|
||||||
|
*
|
||||||
|
* 5. Products derived from this software may not be called "Apache"
|
||||||
|
* nor may "Apache" appear in their names without prior written
|
||||||
|
* permission of the Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||||
|
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||||
|
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||||
|
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
* SUCH DAMAGE.
|
||||||
|
* ====================================================================
|
||||||
|
*
|
||||||
|
* This software consists of voluntary contributions made by many
|
||||||
|
* individuals on behalf of the Apache Software Foundation. For more
|
||||||
|
* information on the Apache Software Foundation, please see
|
||||||
|
* <http://www.apache.org/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.apache.commons.collections.primitives.adapters;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @since Commons Collections 2.2
|
||||||
|
* @version $Revision: 1.1 $ $Date: 2003/02/28 00:17:53 $
|
||||||
|
* @author Rodney Waldhoff
|
||||||
|
*/
|
||||||
|
class NonSerializableCollectionIntCollection extends AbstractCollectionIntCollection {
|
||||||
|
public NonSerializableCollectionIntCollection(Collection collection) {
|
||||||
|
_collection = collection;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Collection getCollection() {
|
||||||
|
return _collection;
|
||||||
|
}
|
||||||
|
|
||||||
|
private Collection _collection = null;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,80 @@
|
||||||
|
/*
|
||||||
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/java/org/apache/commons/collections/primitives/adapters/Attic/NonSerializableListIntList.java,v 1.1 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
|
* ====================================================================
|
||||||
|
* The Apache Software License, Version 1.1
|
||||||
|
*
|
||||||
|
* Copyright (c) 2003 The Apache Software Foundation. All rights
|
||||||
|
* reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions
|
||||||
|
* are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in
|
||||||
|
* the documentation and/or other materials provided with the
|
||||||
|
* distribution.
|
||||||
|
*
|
||||||
|
* 3. The end-user documentation included with the redistribution, if
|
||||||
|
* any, must include the following acknowledgment:
|
||||||
|
* "This product includes software developed by the
|
||||||
|
* Apache Software Foundation (http://www.apache.org/)."
|
||||||
|
* Alternately, this acknowledgment may appear in the software itself,
|
||||||
|
* if and wherever such third-party acknowledgments normally appear.
|
||||||
|
*
|
||||||
|
* 4. The names "The Jakarta Project", "Commons", and "Apache Software
|
||||||
|
* Foundation" must not be used to endorse or promote products derived
|
||||||
|
* from this software without prior written permission. For written
|
||||||
|
* permission, please contact apache@apache.org.
|
||||||
|
*
|
||||||
|
* 5. Products derived from this software may not be called "Apache"
|
||||||
|
* nor may "Apache" appear in their names without prior written
|
||||||
|
* permission of the Apache Software Foundation.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
|
||||||
|
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
|
||||||
|
* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
|
||||||
|
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||||
|
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
|
* SUCH DAMAGE.
|
||||||
|
* ====================================================================
|
||||||
|
*
|
||||||
|
* This software consists of voluntary contributions made by many
|
||||||
|
* individuals on behalf of the Apache Software Foundation. For more
|
||||||
|
* information on the Apache Software Foundation, please see
|
||||||
|
* <http://www.apache.org/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.apache.commons.collections.primitives.adapters;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @since Commons Collections 2.2
|
||||||
|
* @version $Revision: 1.1 $ $Date: 2003/02/28 00:17:53 $
|
||||||
|
* @author Rodney Waldhoff
|
||||||
|
*/
|
||||||
|
class NonSerializableListIntList extends AbstractListIntList {
|
||||||
|
|
||||||
|
protected NonSerializableListIntList(List list) {
|
||||||
|
_list = list;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected List getList() {
|
||||||
|
return _list;
|
||||||
|
}
|
||||||
|
|
||||||
|
private List _list = null;
|
||||||
|
|
||||||
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestArrayIntList.java,v 1.8 2003/02/26 19:17:23 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestArrayIntList.java,v 1.9 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -63,7 +63,7 @@ import junit.framework.TestSuite;
|
||||||
import org.apache.commons.collections.BulkTest;
|
import org.apache.commons.collections.BulkTest;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version $Revision: 1.8 $ $Date: 2003/02/26 19:17:23 $
|
* @version $Revision: 1.9 $ $Date: 2003/02/28 00:17:53 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public class TestArrayIntList extends TestIntList {
|
public class TestArrayIntList extends TestIntList {
|
||||||
|
@ -76,7 +76,7 @@ public class TestArrayIntList extends TestIntList {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Test suite() {
|
public static Test suite() {
|
||||||
//TestSuite suite = BulkTest.makeSuite(TestArrayIntList.class);
|
// BulkTests won't work, sublists are not serializable
|
||||||
TestSuite suite = new TestSuite(TestArrayIntList.class);
|
TestSuite suite = new TestSuite(TestArrayIntList.class);
|
||||||
return suite;
|
return suite;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestArrayUnsignedShortList.java,v 1.8 2003/02/26 19:17:23 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestArrayUnsignedShortList.java,v 1.9 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -63,7 +63,7 @@ import junit.framework.TestSuite;
|
||||||
import org.apache.commons.collections.BulkTest;
|
import org.apache.commons.collections.BulkTest;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version $Revision: 1.8 $ $Date: 2003/02/26 19:17:23 $
|
* @version $Revision: 1.9 $ $Date: 2003/02/28 00:17:53 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public class TestArrayUnsignedShortList extends TestIntList {
|
public class TestArrayUnsignedShortList extends TestIntList {
|
||||||
|
@ -76,8 +76,7 @@ public class TestArrayUnsignedShortList extends TestIntList {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Test suite() {
|
public static Test suite() {
|
||||||
//TestSuite suite = BulkTest.makeSuite(TestArrayUnsignedShortList.class);
|
// BulkTests won't work, sublists are not serializable
|
||||||
//return suite;
|
|
||||||
return new TestSuite(TestArrayUnsignedShortList.class);
|
return new TestSuite(TestArrayUnsignedShortList.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestIntList.java,v 1.5 2003/02/26 19:17:23 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/Attic/TestIntList.java,v 1.6 2003/02/28 00:17:53 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -66,7 +66,7 @@ import org.apache.commons.collections.primitives.adapters.IntListList;
|
||||||
import org.apache.commons.collections.primitives.adapters.ListIntList;
|
import org.apache.commons.collections.primitives.adapters.ListIntList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version $Revision: 1.5 $ $Date: 2003/02/26 19:17:23 $
|
* @version $Revision: 1.6 $ $Date: 2003/02/28 00:17:53 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public abstract class TestIntList extends TestList {
|
public abstract class TestIntList extends TestList {
|
||||||
|
@ -173,6 +173,12 @@ public abstract class TestIntList extends TestList {
|
||||||
two.add(1); two.add(2); two.add(3); two.add(5); two.add(8);
|
two.add(1); two.add(2); two.add(3); two.add(5); two.add(8);
|
||||||
assertEquals("Larger non empty lists are equal",one,two);
|
assertEquals("Larger non empty lists are equal",one,two);
|
||||||
assertEquals("Equals is symmetric on larger non empty list",two,one);
|
assertEquals("Equals is symmetric on larger non empty list",two,one);
|
||||||
|
|
||||||
|
one.add(9);
|
||||||
|
two.add(10);
|
||||||
|
assertTrue(!one.equals(two));
|
||||||
|
assertTrue(!two.equals(one));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void testIntSubListEquals() {
|
public void testIntSubListEquals() {
|
||||||
|
@ -290,5 +296,18 @@ public abstract class TestIntList extends TestList {
|
||||||
assertEquals(deser,list);
|
assertEquals(deser,list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testIntListSerializeDeserializeThenCompare() throws Exception {
|
||||||
|
IntList list = makeFullIntList();
|
||||||
|
if(list instanceof Serializable) {
|
||||||
|
byte[] ser = writeExternalFormToBytes((Serializable)list);
|
||||||
|
IntList deser = (IntList)(readExternalFormFromBytes(ser));
|
||||||
|
assertEquals("obj != deserialize(serialize(obj))",list,deser);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testSubListsAreNotSerializable() throws Exception {
|
||||||
|
IntList list = makeFullIntList().subList(2,3);
|
||||||
|
assertTrue( ! (list instanceof Serializable) );
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/*
|
/*
|
||||||
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/adapters/Attic/TestListIntList.java,v 1.1 2003/02/26 19:17:24 rwaldhoff Exp $
|
* $Header: /home/jerenkrantz/tmp/commons/commons-convert/cvs/home/cvs/jakarta-commons//collections/src/test/org/apache/commons/collections/primitives/adapters/Attic/TestListIntList.java,v 1.2 2003/02/28 00:17:56 rwaldhoff Exp $
|
||||||
* ====================================================================
|
* ====================================================================
|
||||||
* The Apache Software License, Version 1.1
|
* The Apache Software License, Version 1.1
|
||||||
*
|
*
|
||||||
|
@ -62,11 +62,12 @@ import java.util.ArrayList;
|
||||||
import junit.framework.Test;
|
import junit.framework.Test;
|
||||||
import junit.framework.TestSuite;
|
import junit.framework.TestSuite;
|
||||||
|
|
||||||
|
import org.apache.commons.collections.BulkTest;
|
||||||
import org.apache.commons.collections.primitives.IntList;
|
import org.apache.commons.collections.primitives.IntList;
|
||||||
import org.apache.commons.collections.primitives.TestIntList;
|
import org.apache.commons.collections.primitives.TestIntList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @version $Revision: 1.1 $ $Date: 2003/02/26 19:17:24 $
|
* @version $Revision: 1.2 $ $Date: 2003/02/28 00:17:56 $
|
||||||
* @author Rodney Waldhoff
|
* @author Rodney Waldhoff
|
||||||
*/
|
*/
|
||||||
public class TestListIntList extends TestIntList {
|
public class TestListIntList extends TestIntList {
|
||||||
|
@ -79,16 +80,13 @@ public class TestListIntList extends TestIntList {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Test suite() {
|
public static Test suite() {
|
||||||
//TestSuite suite = BulkTest.makeSuite(TestListIntList.class);
|
TestSuite suite = BulkTest.makeSuite(TestListIntList.class);
|
||||||
// java.util.SubList is not serializable
|
|
||||||
TestSuite suite = new TestSuite(TestListIntList.class);
|
|
||||||
return suite;
|
return suite;
|
||||||
}
|
}
|
||||||
|
|
||||||
// collections testing framework
|
// collections testing framework
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see org.apache.commons.collections.primitives.TestIntList#makeEmptyIntList()
|
* @see org.apache.commons.collections.primitives.TestIntList#makeEmptyIntList()
|
||||||
*/
|
*/
|
||||||
|
@ -96,6 +94,20 @@ public class TestListIntList extends TestIntList {
|
||||||
return new ListIntList(new ArrayList());
|
return new ListIntList(new ArrayList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String[] ignoredSimpleTests() {
|
||||||
|
// sublists are not serializable
|
||||||
|
return new String[] {
|
||||||
|
"TestListIntList.bulkTestSubList.testFullListSerialization",
|
||||||
|
"TestListIntList.bulkTestSubList.testEmptyListSerialization",
|
||||||
|
"TestListIntList.bulkTestSubList.testCanonicalEmptyCollectionExists",
|
||||||
|
"TestListIntList.bulkTestSubList.testCanonicalFullCollectionExists",
|
||||||
|
"TestListIntList.bulkTestSubList.testEmptyListCompatibility",
|
||||||
|
"TestListIntList.bulkTestSubList.testFullListCompatibility",
|
||||||
|
"TestListIntList.bulkTestSubList.testSerializeDeserializeThenCompare",
|
||||||
|
"TestListIntList.bulkTestSubList.testSimpleSerialization"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
// tests
|
// tests
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -123,5 +135,4 @@ public class TestListIntList extends TestIntList {
|
||||||
// need to add a serialized form to cvs
|
// need to add a serialized form to cvs
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue