org.apache.commons.collections.primitives.adapters
Class AbstractListByteList

java.lang.Object
  extended by org.apache.commons.collections.primitives.adapters.AbstractCollectionByteCollection
      extended by org.apache.commons.collections.primitives.adapters.AbstractListByteList
All Implemented Interfaces:
ByteCollection, ByteList
Direct Known Subclasses:
ListByteList, NonSerializableListByteList

abstract class AbstractListByteList
extends AbstractCollectionByteCollection
implements ByteList

Since:
Commons Primitives 1.0
Version:
$Revision: 1.3 $ $Date: 2003/10/16 20:49:38 $
Author:
Rodney Waldhoff

Constructor Summary
AbstractListByteList()
           
 
Method Summary
 void add(int index, byte element)
          Inserts the specified element at the specified position (optional operation).
 boolean addAll(int index, ByteCollection collection)
          Inserts all of the elements in the specified collection into me, at the specified position (optional operation).
 boolean equals(java.lang.Object obj)
          Returns true iff that is an ByteList that contains the same elements in the same order as me.
 byte get(int index)
          Returns the value of the element at the specified position within me.
protected  java.util.Collection getCollection()
           
protected abstract  java.util.List getList()
           
 int hashCode()
          Returns my hash code.
 int indexOf(byte element)
          Returns the index of the first occurrence of the specified element within me, or -1 if I do not contain the element.
 int lastIndexOf(byte element)
          Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.
 ByteListIterator listIterator()
          wraps the ByteList returned by my underlying ByteListIterator, if any.
 ByteListIterator listIterator(int index)
          wraps the ByteList returned by my underlying ByteListIterator, if any.
 byte removeElementAt(int index)
          Removes the element at the specified position in (optional operation).
 byte set(int index, byte element)
          Replaces the element at the specified position in me with the specified element (optional operation).
 ByteList subList(int fromIndex, int toIndex)
          Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive.
 
Methods inherited from class org.apache.commons.collections.primitives.adapters.AbstractCollectionByteCollection
add, addAll, clear, contains, containsAll, isEmpty, iterator, removeAll, removeElement, retainAll, size, toArray, toArray, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.commons.collections.primitives.ByteList
add, iterator
 
Methods inherited from interface org.apache.commons.collections.primitives.ByteCollection
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, size, toArray, toArray
 

Constructor Detail

AbstractListByteList

AbstractListByteList()
Method Detail

add

public void add(int index,
                byte element)
Description copied from interface: ByteList
Inserts the specified element at the specified position (optional operation). Shifts the element currently at that position (if any) and any subsequent elements to the right, increasing their indices.

Specified by:
add in interface ByteList
Parameters:
index - the index at which to insert the element
element - the value to insert

addAll

public boolean addAll(int index,
                      ByteCollection collection)
Description copied from interface: ByteList
Inserts all of the elements in the specified collection into me, at the specified position (optional operation). Shifts the element currently at that position (if any) and any subsequent elements to the right, increasing their indices. The new elements will appear in the order that they are returned by the given collection's iterator.

Specified by:
addAll in interface ByteList
Parameters:
index - the index at which to insert the first element from the specified collection
collection - the ByteCollection of elements to add
Returns:
true iff I changed as a result of this call

get

public byte get(int index)
Description copied from interface: ByteList
Returns the value of the element at the specified position within me.

Specified by:
get in interface ByteList
Parameters:
index - the index of the element to return
Returns:
the value of the element at the specified position

indexOf

public int indexOf(byte element)
Description copied from interface: ByteList
Returns the index of the first occurrence of the specified element within me, or -1 if I do not contain the element.

Specified by:
indexOf in interface ByteList
Parameters:
element - the element to search for
Returns:
the smallest index of an element matching the specified value, or -1 if no such matching element can be found

lastIndexOf

public int lastIndexOf(byte element)
Description copied from interface: ByteList
Returns the index of the last occurrence of the specified element within me, or -1 if I do not contain the element.

Specified by:
lastIndexOf in interface ByteList
Parameters:
element - the element to search for
Returns:
the largest index of an element matching the specified value, or -1 if no such matching element can be found

listIterator

public ByteListIterator listIterator()
wraps the ByteList returned by my underlying ByteListIterator, if any.

Specified by:
listIterator in interface ByteList

listIterator

public ByteListIterator listIterator(int index)
wraps the ByteList returned by my underlying ByteListIterator, if any.

Specified by:
listIterator in interface ByteList

removeElementAt

public byte removeElementAt(int index)
Description copied from interface: ByteList
Removes the element at the specified position in (optional operation). Any subsequent elements are shifted to the left, subtracting one from their indices. Returns the element that was removed.

Specified by:
removeElementAt in interface ByteList
Parameters:
index - the index of the element to remove
Returns:
the value of the element that was removed

set

public byte set(int index,
                byte element)
Description copied from interface: ByteList
Replaces the element at the specified position in me with the specified element (optional operation).

Specified by:
set in interface ByteList
Parameters:
index - the index of the element to change
element - the value to be stored at the specified position
Returns:
the value previously stored at the specified position

subList

public ByteList subList(int fromIndex,
                        int toIndex)
Description copied from interface: ByteList
Returns a view of the elements within me between the specified fromIndex, inclusive, and toIndex, exclusive. The returned ByteList is backed by me, so that any changes in the returned list are reflected in me, and vice-versa. The returned list supports all of the optional operations that I support.

Note that when fromIndex == toIndex, the returned list is initially empty, and when fromIndex == 0 && toIndex == size() the returned list is my "improper" sublist, containing all my elements.

The semantics of the returned list become undefined if I am structurally modified in any way other than via the returned list.

Specified by:
subList in interface ByteList
Parameters:
fromIndex - the smallest index (inclusive) in me that appears in the returned list
toIndex - the largest index (exclusive) in me that appears in the returned list
Returns:
a view of this list from fromIndex (inclusive) to toIndex (exclusive)

equals

public boolean equals(java.lang.Object obj)
Description copied from interface: ByteList
Returns true iff that is an ByteList that contains the same elements in the same order as me. In other words, returns true iff that is an ByteList that has the same size as me, and for which the elements returned by its iterator are equal (==) to the corresponding elements within me. (This contract ensures that this method works properly across different implementations of the ByteList interface.)

Specified by:
equals in interface ByteList
Overrides:
equals in class java.lang.Object
Parameters:
obj - the object to compare to me
Returns:
true iff that is an ByteList that contains the same elements in the same order as me

hashCode

public int hashCode()
Description copied from interface: ByteList
Returns my hash code.

The hash code of an ByteList is defined to be the result of the following calculation:

 int hash = 1;
 for(ByteIterator iter = iterator(); iter.hasNext(); ) {
   byte value = iter.next();
   hash = 31*hash + (int)(value ^ (value >>> 32));
 }

This contract ensures that this method is consistent with equals and with the hashCode method of a List of Bytes.

Specified by:
hashCode in interface ByteList
Overrides:
hashCode in class java.lang.Object
Returns:
my hash code

getCollection

protected final java.util.Collection getCollection()
Specified by:
getCollection in class AbstractCollectionByteCollection

getList

protected abstract java.util.List getList()


Copyright (c) 2002-2003 - Apache Software Foundation