com.sleepycat.collections

Class StoredSortedValueSet

public class StoredSortedValueSet extends StoredValueSet implements SortedSet

The SortedSet returned by Map.values() and which can also be constructed directly if a Map is not needed. Although this collection is a set it may contain duplicate values. Only if an entity value binding is used are all elements guaranteed to be unique.

In addition to the standard SortedSet methods, this class provides the following methods for stored sorted value sets only. Note that the use of these methods is not compatible with the standard Java collections interface.

Constructor Summary
StoredSortedValueSet(Database database, EntityBinding valueEntityBinding, boolean writeAllowed)
Creates a sorted value set entity view of a Database.
Method Summary
Comparatorcomparator()
Returns null since comparators are not supported.
Objectfirst()
Returns the first (lowest) element currently in this sorted set.
SortedSetheadSet(Object toValue)
Returns a view of the portion of this sorted set whose elements are strictly less than toValue.
SortedSetheadSet(Object toValue, boolean toInclusive)
Returns a view of the portion of this sorted set whose elements are strictly less than toValue, optionally including toValue.
Objectlast()
Returns the last (highest) element currently in this sorted set.
SortedSetsubSet(Object fromValue, Object toValue)
Returns a view of the portion of this sorted set whose elements range from fromValue, inclusive, to toValue, exclusive.
SortedSetsubSet(Object fromValue, boolean fromInclusive, Object toValue, boolean toInclusive)
Returns a view of the portion of this sorted set whose elements are strictly greater than fromValue and strictly less than toValue, optionally including fromValue and toValue.
SortedSettailSet(Object fromValue)
Returns a view of the portion of this sorted set whose elements are greater than or equal to fromValue.
SortedSettailSet(Object fromValue, boolean fromInclusive)
Returns a view of the portion of this sorted set whose elements are strictly greater than fromValue, optionally including fromValue.

Constructor Detail

StoredSortedValueSet

public StoredSortedValueSet(Database database, EntityBinding valueEntityBinding, boolean writeAllowed)
Creates a sorted value set entity view of a Database.

Parameters: database is the Database underlying the new collection. valueEntityBinding is the binding used to translate between key/value buffers and entity value objects. writeAllowed is true to create a read-write collection or false to create a read-only collection.

Throws: IllegalArgumentException if formats are not consistently defined or a parameter is invalid. RuntimeExceptionWrapper if a DatabaseException is thrown.

Method Detail

comparator

public Comparator comparator()
Returns null since comparators are not supported. The natural ordering of a stored collection is data byte order, whether the data classes implement the java.lang.Comparable interface or not. This method does not conform to the SortedSet#comparator interface.

Returns: null.

first

public Object first()
Returns the first (lowest) element currently in this sorted set. This method conforms to the SortedSet#first interface.

Returns: the first element.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

headSet

public SortedSet headSet(Object toValue)
Returns a view of the portion of this sorted set whose elements are strictly less than toValue. This method conforms to the SortedSet#headSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: toValue the upper bound.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

headSet

public SortedSet headSet(Object toValue, boolean toInclusive)
Returns a view of the portion of this sorted set whose elements are strictly less than toValue, optionally including toValue. This method does not exist in the standard SortedSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: toValue is the upper bound. toInclusive is true to include toValue.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

last

public Object last()
Returns the last (highest) element currently in this sorted set. This method conforms to the SortedSet#last interface.

Returns: the last element.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

subSet

public SortedSet subSet(Object fromValue, Object toValue)
Returns a view of the portion of this sorted set whose elements range from fromValue, inclusive, to toValue, exclusive. This method conforms to the SortedSet#subSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: fromValue is the lower bound. toValue is the upper bound.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

subSet

public SortedSet subSet(Object fromValue, boolean fromInclusive, Object toValue, boolean toInclusive)
Returns a view of the portion of this sorted set whose elements are strictly greater than fromValue and strictly less than toValue, optionally including fromValue and toValue. This method does not exist in the standard SortedSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: fromValue is the lower bound. fromInclusive is true to include fromValue. toValue is the upper bound. toInclusive is true to include toValue.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

tailSet

public SortedSet tailSet(Object fromValue)
Returns a view of the portion of this sorted set whose elements are greater than or equal to fromValue. This method conforms to the SortedSet#tailSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: fromValue is the lower bound.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.

tailSet

public SortedSet tailSet(Object fromValue, boolean fromInclusive)
Returns a view of the portion of this sorted set whose elements are strictly greater than fromValue, optionally including fromValue. This method does not exist in the standard SortedSet interface.

Note that the return value is a StoredCollection and must be treated as such; for example, its iterators must be explicitly closed.

Parameters: fromValue is the lower bound. fromInclusive is true to include fromValue.

Returns: the subset.

Throws: RuntimeExceptionWrapper if a DatabaseException is thrown.