# Hierarchy For Package com.hammurapi.store

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - com.hammurapi.store.AbstractIndex<ST,T,PK,V,S> (implements com.hammurapi.store.OrderedIndex<ST,T,PK,V,S>)
  - com.hammurapi.store.AbstractIndex.UpdateEntry
  - com.hammurapi.store.AbstractStore<T,PK,S> (implements com.hammurapi.store.Store<T,PK,S>)
    - com.hammurapi.store.DeputyStore<T,PK,S>
  - com.hammurapi.store.AbstractStore.ExtractorTask<V> (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.IndexizationTask<V> (implements java.util.concurrent.Callable<V>)
  - com.hammurapi.store.AbstractStore.QueryCallable<V> (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.QueryItemCallable<V> (implements java.util.concurrent.Callable<V>)
  - com.hammurapi.store.AbstractStore.QueryMultipleCallable<V> (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.RemoveTask (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.SelectorTask (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.UpdateCallable (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractStore.ValueSelectorTask<V> (implements java.util.concurrent.Callable<V>, java.io.Serializable)
  - com.hammurapi.store.AbstractTrackingLock (implements com.hammurapi.store.TrackingLock)
  - com.hammurapi.store.DeputyLock (implements com.hammurapi.store.TrackingLock)
  - com.hammurapi.store.DeputyReadWriteLock (implements java.util.concurrent.locks.ReadWriteLock)
  - com.hammurapi.store.LiveView<T,PK,S> (implements com.hammurapi.store.Store<T,PK,S>)
  - com.hammurapi.store.NaturalComparator<V> (implements java.util.Comparator<T>)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - com.hammurapi.store.StoreException
  - com.hammurapi.store.UnmodifiableStore<T,PK,S> (implements com.hammurapi.store.Store<T,PK,S>)

## Interface Hierarchy

- com.hammurapi.store.BackingStore<T,PK>
- java.lang.Iterable<T>
  - com.hammurapi.store.Index<ST,T,PK,V,S>
    - com.hammurapi.store.MultiIndex<ST,T,PK,V,S>
    - com.hammurapi.store.OrderedIndex<ST,T,PK,V,S>
    - com.hammurapi.store.UniqueIndex<ST,T,PK,V,S>
  - com.hammurapi.store.Store<T,PK,S> (also extends java.util.concurrent.locks.ReadWriteLock)
    - com.hammurapi.store.Transaction<T,PK,S>
    - com.hammurapi.store.TransactionalStore<T,PK,S>
- java.util.Iterator<E>
  - com.hammurapi.store.Store.StoreIterator<T>
- java.util.concurrent.locks.Lock
  - com.hammurapi.store.TrackingLock
- java.util.concurrent.locks.ReadWriteLock
  - com.hammurapi.store.Store<T,PK,S> (also extends java.lang.Iterable<T>)
    - com.hammurapi.store.Transaction<T,PK,S>
    - com.hammurapi.store.TransactionalStore<T,PK,S>
- com.hammurapi.store.Store.Handle<T,PK,S>
- com.hammurapi.store.Store.QueryTask<T,PK,S>
- com.hammurapi.store.Store.UpdateTask<T,PK,S>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - com.hammurapi.store.Store.ViewType
    - com.hammurapi.store.Index.Type