org.hypergraphdb.storage
Class DBKeyedSortedSet<Key,T>

java.lang.Object
  extended by org.hypergraphdb.storage.DBKeyedSortedSet<Key,T>
All Implemented Interfaces:
java.lang.Iterable<T>, java.util.Collection<T>, java.util.Set<T>, java.util.SortedSet<T>, HGSortedSet<T>

public class DBKeyedSortedSet<Key,T>
extends java.lang.Object
implements HGSortedSet<T>

A database-backed HGSortedSet implementation representing the ordered duplicate values associated with a single key.

Author:
Borislav Iordanov

Constructor Summary
DBKeyedSortedSet(HGIndex<Key,T> idx, Key key)
           
DBKeyedSortedSet(HGIndex<Key,T> idx, Key key, java.util.Comparator<T> comparator)
           
 
Method Summary
 boolean add(T o)
           
 boolean addAll(java.util.Collection c)
           
 void clear()
           
 java.util.Comparator<T> comparator()
           
 boolean contains(java.lang.Object o)
           
 boolean containsAll(java.util.Collection c)
           
 T first()
           
 HGRandomAccessResult<T> getSearchResult()
           
 java.util.SortedSet<T> headSet(T toElement)
           
 boolean isEmpty()
           
 java.util.Iterator<T> iterator()
           This iterator is intended for use when full iteration is performed on the set.
 T last()
           
 boolean remove(java.lang.Object o)
           
 boolean removeAll(java.util.Collection c)
           
 boolean retainAll(java.util.Collection c)
           
 int size()
           
 java.util.SortedSet<T> subSet(T fromElement, T toElement)
           
 java.util.SortedSet<T> tailSet(T fromElement)
           
 java.lang.Object[] toArray()
           
 java.lang.Object[] toArray(java.lang.Object[] a)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Set
equals, hashCode
 

Constructor Detail

DBKeyedSortedSet

public DBKeyedSortedSet(HGIndex<Key,T> idx,
                        Key key)

DBKeyedSortedSet

public DBKeyedSortedSet(HGIndex<Key,T> idx,
                        Key key,
                        java.util.Comparator<T> comparator)
Method Detail

getSearchResult

public HGRandomAccessResult<T> getSearchResult()
Specified by:
getSearchResult in interface HGSortedSet<T>

comparator

public java.util.Comparator<T> comparator()
Specified by:
comparator in interface java.util.SortedSet<T>

first

public T first()
Specified by:
first in interface java.util.SortedSet<T>

headSet

public java.util.SortedSet<T> headSet(T toElement)
Specified by:
headSet in interface java.util.SortedSet<T>

last

public T last()
Specified by:
last in interface java.util.SortedSet<T>

subSet

public java.util.SortedSet<T> subSet(T fromElement,
                                     T toElement)
Specified by:
subSet in interface java.util.SortedSet<T>

tailSet

public java.util.SortedSet<T> tailSet(T fromElement)
Specified by:
tailSet in interface java.util.SortedSet<T>

add

public boolean add(T o)
Specified by:
add in interface java.util.Collection<T>
Specified by:
add in interface java.util.Set<T>

addAll

public boolean addAll(java.util.Collection c)
Specified by:
addAll in interface java.util.Collection<T>
Specified by:
addAll in interface java.util.Set<T>

clear

public void clear()
Specified by:
clear in interface java.util.Collection<T>
Specified by:
clear in interface java.util.Set<T>

contains

public boolean contains(java.lang.Object o)
Specified by:
contains in interface java.util.Collection<T>
Specified by:
contains in interface java.util.Set<T>

containsAll

public boolean containsAll(java.util.Collection c)
Specified by:
containsAll in interface java.util.Collection<T>
Specified by:
containsAll in interface java.util.Set<T>

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface java.util.Collection<T>
Specified by:
isEmpty in interface java.util.Set<T>

iterator

public java.util.Iterator<T> iterator()

This iterator is intended for use when full iteration is performed on the set. Otherwise, the underlying DB cursor remains open and locks DB pages forever.

Specified by:
iterator in interface java.lang.Iterable<T>
Specified by:
iterator in interface java.util.Collection<T>
Specified by:
iterator in interface java.util.Set<T>

remove

public boolean remove(java.lang.Object o)
Specified by:
remove in interface java.util.Collection<T>
Specified by:
remove in interface java.util.Set<T>

removeAll

public boolean removeAll(java.util.Collection c)
Specified by:
removeAll in interface java.util.Collection<T>
Specified by:
removeAll in interface java.util.Set<T>

retainAll

public boolean retainAll(java.util.Collection c)
Specified by:
retainAll in interface java.util.Collection<T>
Specified by:
retainAll in interface java.util.Set<T>

size

public int size()
Specified by:
size in interface java.util.Collection<T>
Specified by:
size in interface java.util.Set<T>

toArray

public java.lang.Object[] toArray()
Specified by:
toArray in interface java.util.Collection<T>
Specified by:
toArray in interface java.util.Set<T>

toArray

public java.lang.Object[] toArray(java.lang.Object[] a)
Specified by:
toArray in interface java.util.Collection<T>
Specified by:
toArray in interface java.util.Set<T>