|
PCJ API Version 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object bak.pcj.AbstractByteCollection bak.pcj.adapter.CollectionToByteCollectionAdapter
This class represents adaptions of Java Collections Framework collections to primitive collections of byte values. The adapter is implemented as a wrapper around the collection. Thus, changes to the underlying collection are reflected by this collection and vice versa.
Adapters from JCF collections to primitive collections will fail if the JCF collection contains null values or values of the wrong class. However, adapters are not fast failing in the case that the underlying collection should contain illegal values. To implement fast failure would require every operation to check every element of the underlying collection before doing anything. Instead validation methods are provided. They can be called using the assertion facility in the client code:
CollectionToByteCollectionAdapter s; ... assert s.validate();or by letting the adapter throw an exception on illegal values:
CollectionToByteCollectionAdapter s; ... s.evalidate(); // Throws an exception on illegal valuesEither way, validation must be invoked directly by the client code.
Field Summary | |
protected Collection |
collection
The underlying collection. |
Constructor Summary | |
CollectionToByteCollectionAdapter(Collection collection)
Creates a new adaption of a collection to a collection of byte values. |
|
CollectionToByteCollectionAdapter(Collection collection,
boolean validate)
Creates a new adaption of a collection to a collection of byte values. |
Method Summary | |
boolean |
add(byte v)
Throws UnsupportedOperationException. |
void |
clear()
Clears this collection. |
boolean |
contains(byte v)
Indicates whether this collection contains a specified element. |
void |
evalidate()
Validates the collection underlying this adapter and throws an exception if it is invalid. |
int |
hashCode()
Returns a hash code value for this collection. |
ByteIterator |
iterator()
Returns an iterator over this collection. |
boolean |
remove(byte v)
Removes a specified element from this collection. |
int |
size()
Returns the number of elements in this collection. |
boolean |
validate()
Indicates whether the underlying collection is valid for this adapter. |
Methods inherited from class bak.pcj.AbstractByteCollection |
addAll, containsAll, isEmpty, removeAll, retainAll, toArray, toArray, toString, trimToSize |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface bak.pcj.ByteCollection |
equals |
Field Detail |
protected Collection collection
Constructor Detail |
public CollectionToByteCollectionAdapter(Collection collection)
collection
- the underlying collection. This collection must
consist of values of class
Byte
. Otherwise a
ClassCastException
will be thrown by some methods.
NullPointerException
- if collection is null.public CollectionToByteCollectionAdapter(Collection collection, boolean validate)
collection
- the underlying collection. This collection must
consist of values of class
Byte
. Otherwise a
ClassCastException
will be thrown by some methods.validate
- indicates whether collection should
be checked for illegal values.
NullPointerException
- if collection is null.
IllegalStateException
- if validate is true and
collection contains a null value
or a value that is not of class
Byte
.Method Detail |
public boolean add(byte v)
AbstractByteCollection
add
in interface ByteCollection
add
in class AbstractByteCollection
public void clear()
ByteCollection
clear
in interface ByteCollection
clear
in class AbstractByteCollection
public boolean contains(byte v)
ByteCollection
contains
in interface ByteCollection
contains
in class AbstractByteCollection
public int hashCode()
ByteCollection
public ByteIterator iterator()
ByteCollection
public boolean remove(byte v)
ByteCollection
remove
in interface ByteCollection
remove
in class AbstractByteCollection
public int size()
ByteCollection
size
in interface ByteCollection
size
in class AbstractByteCollection
public boolean validate()
Byte
values and no null
values.
public void evalidate()
Byte
values and no null values.
IllegalStateException
- if the underlying collection is invalid.
|
PCJ API Version 1.2 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |