com.hammurapi.eventbus.tests.familyties
Class FamilyTiesEventStoreImpl

Show UML class diagram
java.lang.Object
  extended by com.hammurapi.store.AbstractStore<T,PK,S>
      extended by com.hammurapi.store.local.LocalStoreBase<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>
          extended by com.hammurapi.eventbus.tests.familyties.FamilyTiesEventStoreImpl
Type Parameters:
E -
P -
C -
All Implemented Interfaces:
EventStore<Relative,Integer,FamilyTiesRules,AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,FamilyTiesEventStore>, FamilyTiesEventStore, Store<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>, Iterable<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>>, ReadWriteLock

public class FamilyTiesEventStoreImpl
extends LocalStoreBase<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>
implements FamilyTiesEventStore

Implementation of event store.


Nested Class Summary
static class FamilyTiesEventStoreImpl.Config
          Config class with bound generic parameters.
protected static class FamilyTiesEventStoreImpl.FamilyTiesEventDeputyStore
           
protected static class FamilyTiesEventStoreImpl.FamilyTiesEventLiveView
           
protected static class FamilyTiesEventStoreImpl.FamilyTiesEventUnmodifiableStore
           
 
Nested classes/interfaces inherited from class com.hammurapi.store.AbstractStore
AbstractStore.ExtractorTask<V>, AbstractStore.IndexizationTask<V>, AbstractStore.QueryCallable<V>, AbstractStore.QueryItemCallable<V>, AbstractStore.QueryMultipleCallable<V>, AbstractStore.RemoveTask, AbstractStore.SelectorTask, AbstractStore.UpdateCallable, AbstractStore.ValueSelectorTask<V>
 
Nested classes/interfaces inherited from interface com.hammurapi.store.Store
Store.Handle<T,PK,S extends Store<T,PK,S>>, Store.QueryTask<T,PK,S extends Store<?,PK,S>>, Store.StoreIterator<T>, Store.UpdateTask<T,PK,S extends Store<T,PK,S>>, Store.ViewType
 
Field Summary
 
Fields inherited from class com.hammurapi.store.local.LocalStoreBase
config
 
Constructor Summary
FamilyTiesEventStoreImpl(FamilyTiesEventStoreImpl.Config config)
           
 
Method Summary
protected  FamilyTiesEventStore createDeputy()
           
protected  FamilyTiesEventStore createLiveView(Predicate<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,FamilyTiesEventStore> selector)
           
 FamilyTiesEventStore createUnmodifiableFacade()
           
 Iterable<Relative> getRelatives(Person subject)
           
 
Methods inherited from class com.hammurapi.store.local.LocalStoreBase
createCache, createHandle, createIndex, createIndexCollection, createMasterLock, getExecutorService, getIndices, getNoPkStore, getPkStore, getPrimaryKeyExtractor, handleIndexAsynchException, onRemoved, readLock, updateIndices, writeLock
 
Methods inherited from class com.hammurapi.store.AbstractStore
addIndex, clear, createHandle, createView, get, get, getAll, getByPrimaryKey, getHandles, getMultiple, iterator, put, query, query, queryAll, queryMultiple, remove, remove, removeByPrimaryKey, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.hammurapi.store.Store
addIndex, clear, createView, get, get, getAll, getByPrimaryKey, getMultiple, getPrimaryKeyExtractor, put, query, query, queryAll, queryMultiple, remove, remove, removeByPrimaryKey, update
 
Methods inherited from interface java.util.concurrent.locks.ReadWriteLock
readLock, writeLock
 
Methods inherited from interface java.lang.Iterable
iterator
 

Constructor Detail

FamilyTiesEventStoreImpl

public FamilyTiesEventStoreImpl(FamilyTiesEventStoreImpl.Config config)
Method Detail

getRelatives

public Iterable<Relative> getRelatives(Person subject)
Specified by:
getRelatives in interface FamilyTiesEventStore

createDeputy

protected FamilyTiesEventStore createDeputy()
Specified by:
createDeputy in class LocalStoreBase<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>

createUnmodifiableFacade

public FamilyTiesEventStore createUnmodifiableFacade()
Specified by:
createUnmodifiableFacade in interface Store<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>

createLiveView

protected FamilyTiesEventStore createLiveView(Predicate<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,FamilyTiesEventStore> selector)
Specified by:
createLiveView in class AbstractStore<AbstractEventBus.Handle<Relative,Integer,FamilyTiesRules,Long>,Relative,FamilyTiesEventStore>