com.sleepycat.collections

Class StoredValueSet

public class StoredValueSet extends StoredCollection implements Set

The Set returned by Map.values() and Map.duplicates(), 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.
Constructor Summary
StoredValueSet(Database database, EntryBinding valueBinding, boolean writeAllowed)
Creates a value set view of a Database.
StoredValueSet(Database database, EntityBinding valueEntityBinding, boolean writeAllowed)
Creates a value set entity view of a Database.
Method Summary
booleanadd(Object entity)
Adds the specified entity to this set if it is not already present (optional operation).
booleancontains(Object value)
Returns true if this set contains the specified element.
booleanremove(Object value)
Removes the specified value from this set if it is present (optional operation).

Constructor Detail

StoredValueSet

public StoredValueSet(Database database, EntryBinding valueBinding, boolean writeAllowed)
Creates a value set view of a Database.

Parameters: database is the Database underlying the new collection. valueBinding is the binding used to translate between value buffers and 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.

StoredValueSet

public StoredValueSet(Database database, EntityBinding valueEntityBinding, boolean writeAllowed)
Creates a 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

add

public boolean add(Object entity)
Adds the specified entity to this set if it is not already present (optional operation). This method conforms to the Set#add interface.

Parameters: entity is the entity to be added.

Returns: true if the entity was added, that is the key-value pair represented by the entity was not previously present in the collection.

Throws: UnsupportedOperationException if the collection is read-only, if the collection is indexed, or if an entity binding is not used. RuntimeExceptionWrapper if a DatabaseException is thrown.

contains

public boolean contains(Object value)
Returns true if this set contains the specified element. This method conforms to the java.util.Set#contains interface.

Parameters: value the value to check.

Returns: whether the set contains the given value.

remove

public boolean remove(Object value)
Removes the specified value from this set if it is present (optional operation). If an entity binding is used, the key-value pair represented by the given entity is removed. If an entity binding is used, the first occurrence of a key-value pair with the given value is removed. This method conforms to the Set#remove interface.

Throws: UnsupportedOperationException if the collection is read-only. RuntimeExceptionWrapper if a DatabaseException is thrown.