|
Berkeley DB version 4.8.30 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.sleepycat.collections.StoredContainer com.sleepycat.collections.StoredCollection<E>
public abstract class StoredCollection<E>
A abstract base class for all stored collections. This class, and its
base class StoredContainer
, provide implementations of most methods
in the Collection
interface. Other methods, such as add(java.lang.Object, java.lang.Object)
and Collection.remove(java.lang.Object)
, are provided by concrete classes that extend this
class.
In addition, this class provides the following methods for stored collections only. Note that the use of these methods is not compatible with the standard Java collections interface.
getIteratorBlockSize()
setIteratorBlockSize(int)
storedIterator()
storedIterator(boolean)
join(com.sleepycat.collections.StoredContainer[], java.lang.Object[], com.sleepycat.db.JoinConfig)
toList()
Field Summary | |
---|---|
static int |
DEFAULT_ITERATOR_BLOCK_SIZE
The default number of records read at one time by iterators. |
Method Summary | ||
---|---|---|
boolean |
addAll(Collection<? extends E> coll)
Adds all of the elements in the specified collection to this collection (optional operation). |
|
boolean |
containsAll(Collection<?> coll)
Returns true if this collection contains all of the elements in the specified collection. |
|
boolean |
equals(Object other)
Compares the specified object with this collection for equality. |
|
int |
getIteratorBlockSize()
Returns the number of records read at one time by iterators returned by the iterator() method. |
|
int |
hashCode()
|
|
Iterator<E> |
iterator()
Returns an iterator over the elements in this collection. |
|
StoredIterator<E> |
iterator(boolean writeAllowed)
Deprecated. Please use storedIterator() or storedIterator(boolean) instead. Because the iterator returned must
be closed, the method name iterator is confusing since standard
Java iterators do not need to be closed. |
|
StoredIterator<E> |
join(StoredContainer[] indices,
Object[] indexKeys,
JoinConfig joinConfig)
Returns an iterator representing an equality join of the indices and index key values specified. |
|
boolean |
removeAll(Collection<?> coll)
Removes all this collection's elements that are also contained in the specified collection (optional operation). |
|
boolean |
retainAll(Collection<?> coll)
Retains only the elements in this collection that are contained in the specified collection (optional operation). |
|
void |
setIteratorBlockSize(int blockSize)
Changes the number of records read at one time by iterators returned by the iterator() method. |
|
int |
size()
Returns a non-transactional count of the records in the collection or map. |
|
StoredIterator<E> |
storedIterator()
Returns an iterator over the elements in this collection. |
|
StoredIterator<E> |
storedIterator(boolean writeAllowed)
Returns a read or read-write iterator over the elements in this collection. |
|
Object[] |
toArray()
Returns an array of all the elements in this collection. |
|
|
toArray(T[] a)
Returns an array of all the elements in this collection whose runtime type is that of the specified array. |
|
List<E> |
toList()
Returns a copy of this collection as an ArrayList. |
|
String |
toString()
Converts the collection to a string representation for debugging. |
Methods inherited from class com.sleepycat.collections.StoredContainer |
---|
areDuplicatesAllowed, areDuplicatesOrdered, areKeyRangesAllowed, areKeysRenumbered, clear, getCursorConfig, isEmpty, isOrdered, isSecondary, isTransactional, isWriteAllowed |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.util.Collection |
---|
add, clear, contains, isEmpty, remove |
Field Detail |
---|
public static final int DEFAULT_ITERATOR_BLOCK_SIZE
setIteratorBlockSize(int)
,
Constant Field ValuesMethod Detail |
---|
public int getIteratorBlockSize()
iterator()
method. By default this value is DEFAULT_ITERATOR_BLOCK_SIZE
.
public void setIteratorBlockSize(int blockSize)
iterator()
method. By default this value is DEFAULT_ITERATOR_BLOCK_SIZE
.
IllegalArgumentException
- if the blockSize is less than two.public Iterator<E> iterator()
Collection.iterator()
interface.
The iterator returned by this method does not keep a database cursor
open and therefore it does not need to be closed. It reads blocks of
records as needed, opening and closing a cursor to read each block of
records. The number of records per block is 10 by default and can be
changed with setIteratorBlockSize(int)
.
Because this iterator does not keep a cursor open, if it is used
without transactions, the iterator does not have cursor
stability characteristics. In other words, the record at the
current iterator position can be changed or deleted by another thread.
To prevent this from happening, call this method within a transaction or
use the storedIterator()
method instead.
iterator
in interface Iterable<E>
iterator
in interface Collection<E>
Iterator
for this collection.StoredContainer.isWriteAllowed()
public StoredIterator<E> storedIterator()
Collection
interface.
If Iterator.set
or Iterator.remove
will be called
and the underlying Database is transactional, then a transaction must be
active when calling this method and must remain active while using the
iterator.
Warning: The iterator returned must be explicitly
closed using StoredIterator.close()
or StoredIterator.close(java.util.Iterator)
to release the underlying
database cursor resources.
StoredIterator
for this collection.StoredContainer.isWriteAllowed()
public StoredIterator<E> storedIterator(boolean writeAllowed)
Collection
interface.
If Iterator.set
or Iterator.remove
will be called
and the underlying Database is transactional, then a transaction must be
active when calling this method and must remain active while using the
iterator.
Warning: The iterator returned must be explicitly
closed using StoredIterator.close()
or StoredIterator.close(java.util.Iterator)
to release the underlying
database cursor resources.
writeAllowed
- is true to open a read-write iterator or false to
open a read-only iterator. If the collection is read-only the iterator
will always be read-only.
StoredIterator
for this collection.
IllegalStateException
- if writeAllowed is true but the collection
is read-only.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.StoredContainer.isWriteAllowed()
public StoredIterator<E> iterator(boolean writeAllowed)
storedIterator()
or storedIterator(boolean)
instead. Because the iterator returned must
be closed, the method name iterator
is confusing since standard
Java iterators do not need to be closed.
public Object[] toArray()
Collection.toArray()
interface.
toArray
in interface Collection<E>
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public <T> T[] toArray(T[] a)
Collection.toArray(Object[])
interface.
toArray
in interface Collection<E>
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public boolean containsAll(Collection<?> coll)
Collection.containsAll(java.util.Collection>)
interface.
containsAll
in interface Collection<E>
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public boolean addAll(Collection<? extends E> coll)
Collection.add(Object)
method of the concrete
collection class, which may or may not be supported.
This method conforms to the Collection.addAll(java.util.Collection extends E>)
interface.
addAll
in interface Collection<E>
UnsupportedOperationException
- if the collection is read-only, or
if the collection is indexed, or if the add method is not supported by
the concrete collection.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public boolean removeAll(Collection<?> coll)
Collection.removeAll(java.util.Collection>)
interface.
removeAll
in interface Collection<E>
UnsupportedOperationException
- if the collection is read-only.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public boolean retainAll(Collection<?> coll)
Collection.removeAll(java.util.Collection>)
interface.
retainAll
in interface Collection<E>
UnsupportedOperationException
- if the collection is read-only.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public boolean equals(Object other)
Collection.equals(java.lang.Object)
interface.
equals
in interface Collection<E>
equals
in class Object
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public int hashCode()
hashCode
in interface Collection<E>
hashCode
in class Object
public List<E> toList()
toArray()
but returns a collection instead of an array.
ArrayList
containing a copy of all elements in this
collection.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public String toString()
toString
in class Object
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.public int size()
StoredContainer
Collection.size()
and
Map.size()
interfaces.
size
in interface Collection<E>
size
in class StoredContainer
public StoredIterator<E> join(StoredContainer[] indices, Object[] indexKeys, JoinConfig joinConfig)
Collection
interface.
Warning: The iterator returned must be explicitly
closed using StoredIterator.close()
or StoredIterator.close(java.util.Iterator)
to release the underlying
database cursor resources.
The returned iterator supports only the two methods: hasNext() and next(). All other methods will throw UnsupportedOperationException.
indices
- is an array of indices with elements corresponding to
those in the indexKeys array.indexKeys
- is an array of index key values identifying the
elements to be selected.joinConfig
- is the join configuration, or null to use the
default configuration.
IllegalArgumentException
- if this collection is indexed or if a
given index does not have the same store as this collection.
RuntimeExceptionWrapper
- if a DatabaseException
is
thrown.
|
Berkeley DB version 4.8.30 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |