T - The type of aggregate stored in this repository. Must implement EventSourcedAggregateRoot.public class HybridJpaRepository<T extends AggregateRoot> extends GenericJpaRepository<T>
| Constructor and Description | 
|---|
HybridJpaRepository(EntityManagerProvider entityManagerProvider,
                   Class<T> aggregateType)
Initializes a Hybrid Repository that stored entities of the given  
aggregateType and the locking
 mechanism provided by the backend storage. | 
HybridJpaRepository(EntityManagerProvider entityManagerProvider,
                   Class<T> aggregateType,
                   LockManager lockManager)
Initializes a Hybrid Repository that stored entities of the given  
aggregateType and a locking
 mechanism based on the given lockManager. | 
HybridJpaRepository(EntityManagerProvider entityManagerProvider,
                   Class<T> aggregateType,
                   String aggregateTypeIdentifier)
Initializes a Hybrid Repository that stored entities of the given  
aggregateType without locking. | 
HybridJpaRepository(EntityManagerProvider entityManagerProvider,
                   Class<T> aggregateType,
                   String aggregateTypeIdentifier,
                   LockManager lockManager)
Initializes a Hybrid Repository that stored entities of the given  
aggregateType and a locking
 mechanism based on the given lockManager. | 
| Modifier and Type | Method and Description | 
|---|---|
protected void | 
doDeleteWithLock(T aggregate)
Perform the actual deleting of the aggregate. 
 | 
protected void | 
doSaveWithLock(T aggregate)
Perform the actual saving of the aggregate. 
 | 
protected String | 
getTypeIdentifier()
Returns the type identifier to use when appending events in the event store. 
 | 
void | 
setEventStore(EventStore eventStore)
The event store to which events are appended. 
 | 
doLoad, setForceFlushOnSaveadd, doDelete, doSave, loadgetAggregateType, load, postDelete, postSave, setEventBus, validateOnLoadpublic HybridJpaRepository(EntityManagerProvider entityManagerProvider, Class<T> aggregateType)
aggregateType and the locking
 mechanism provided by the backend storage.entityManagerProvider - The EntityManagerProvider providing the EntityManager instance for this repositoryaggregateType - The type of aggregate stored in this repository.public HybridJpaRepository(EntityManagerProvider entityManagerProvider, Class<T> aggregateType, String aggregateTypeIdentifier)
aggregateType without locking.
 The events are appended to the event store under the given aggregateTypeIdentifier.entityManagerProvider - The EntityManagerProvider providing the EntityManager instance for this
                                repositoryaggregateType - The type of aggregate stored in this repository.aggregateTypeIdentifier - The type identifier to store events withpublic HybridJpaRepository(EntityManagerProvider entityManagerProvider, Class<T> aggregateType, LockManager lockManager)
aggregateType and a locking
 mechanism based on the given lockManager.entityManagerProvider - The EntityManagerProvider providing the EntityManager instance for this repositoryaggregateType - The type of aggregate stored in this repository.lockManager - The locking strategy to use when loading and storing aggregatespublic HybridJpaRepository(EntityManagerProvider entityManagerProvider, Class<T> aggregateType, String aggregateTypeIdentifier, LockManager lockManager)
aggregateType and a locking
 mechanism based on the given lockManager.entityManagerProvider - The EntityManagerProvider providing the EntityManager instance for this
                                repositoryaggregateType - The type of aggregate stored in this repository.aggregateTypeIdentifier - The type identifier to store events withlockManager - The locking strategy to use when loading and storing aggregatesprotected void doDeleteWithLock(T aggregate)
LockingRepositorydoDeleteWithLock in class GenericJpaRepository<T extends AggregateRoot>aggregate - the aggregate to deleteprotected void doSaveWithLock(T aggregate)
LockingRepositorydoSaveWithLock in class GenericJpaRepository<T extends AggregateRoot>aggregate - the aggregate to storeprotected String getTypeIdentifier()
public void setEventStore(EventStore eventStore)
eventStore - The event store where events should be appendedCopyright © 2010-2014. All Rights Reserved.