public class MongoEventStore extends Object implements org.axonframework.eventstore.SnapshotEventStore, org.axonframework.eventstore.management.EventStoreManagement, org.axonframework.upcasting.UpcasterAware, org.axonframework.eventstore.PartialStreamSupport
Implementation of the EventStore based on a MongoDB instance or replica set. Sharding and pairing
are not explicitly supported.
This event store implementation needs a serializer as well as a MongoTemplate to interact with the mongo database.
Warning: This implementation is still in progress and may be subject to alterations. The implementation works, but has not been optimized to fully leverage MongoDB's features, yet.
| Constructor and Description |
|---|
MongoEventStore(MongoTemplate mongo)
Constructor that uses the default Serializer.
|
MongoEventStore(MongoTemplate mongoTemplate,
org.axonframework.serializer.Serializer eventSerializer,
StorageStrategy storageStrategy)
Initialize the mongo event store with given
mongoTemplate, eventSerializer and
storageStrategy. |
MongoEventStore(MongoTemplate mongoTemplate,
StorageStrategy storageStrategy)
Constructor that accepts a MongoTemplate and a custom StorageStrategy.
|
MongoEventStore(org.axonframework.serializer.Serializer eventSerializer,
MongoTemplate mongo)
Constructor that accepts a Serializer and the MongoTemplate.
|
| Modifier and Type | Method and Description |
|---|---|
void |
appendEvents(String type,
org.axonframework.domain.DomainEventStream events) |
void |
appendSnapshotEvent(String type,
org.axonframework.domain.DomainEventMessage snapshotEvent) |
void |
ensureIndexes()
Make sure an index is created on the collection that stores domain events.
|
MongoCriteriaBuilder |
newCriteriaBuilder() |
org.axonframework.domain.DomainEventStream |
readEvents(String type,
Object identifier) |
org.axonframework.domain.DomainEventStream |
readEvents(String type,
Object identifier,
long firstSequenceNumber) |
org.axonframework.domain.DomainEventStream |
readEvents(String type,
Object identifier,
long firstSequenceNumber,
long lastSequenceNumber) |
void |
setUpcasterChain(org.axonframework.upcasting.UpcasterChain upcasterChain) |
void |
visitEvents(org.axonframework.eventstore.management.Criteria criteria,
org.axonframework.eventstore.EventVisitor visitor) |
void |
visitEvents(org.axonframework.eventstore.EventVisitor visitor) |
public MongoEventStore(org.axonframework.serializer.Serializer eventSerializer,
MongoTemplate mongo)
SerializedMetaData.isSerializedMetaData(org.axonframework.serializer.SerializedObject)eventSerializer - Your own Serializermongo - Mongo instance to obtain the database and the collections.public MongoEventStore(MongoTemplate mongo)
mongo - MongoTemplate instance to obtain the database and the collections.public MongoEventStore(MongoTemplate mongoTemplate, StorageStrategy storageStrategy)
mongoTemplate - The template giving access to the required collectionsstorageStrategy - The strategy for storing and retrieving events from the collectionspublic MongoEventStore(MongoTemplate mongoTemplate, org.axonframework.serializer.Serializer eventSerializer, StorageStrategy storageStrategy)
mongoTemplate, eventSerializer and
storageStrategy.mongoTemplate - The template giving access to the required collectionseventSerializer - The serializer to serialize events withstorageStrategy - The strategy for storing and retrieving events from the collections@PostConstruct public void ensureIndexes()
public void appendEvents(String type, org.axonframework.domain.DomainEventStream events)
appendEvents in interface org.axonframework.eventstore.EventStorepublic org.axonframework.domain.DomainEventStream readEvents(String type, Object identifier)
readEvents in interface org.axonframework.eventstore.EventStorepublic org.axonframework.domain.DomainEventStream readEvents(String type, Object identifier, long firstSequenceNumber)
readEvents in interface org.axonframework.eventstore.PartialStreamSupportpublic org.axonframework.domain.DomainEventStream readEvents(String type, Object identifier, long firstSequenceNumber, long lastSequenceNumber)
readEvents in interface org.axonframework.eventstore.PartialStreamSupportpublic void appendSnapshotEvent(String type, org.axonframework.domain.DomainEventMessage snapshotEvent)
appendSnapshotEvent in interface org.axonframework.eventstore.SnapshotEventStorepublic void visitEvents(org.axonframework.eventstore.EventVisitor visitor)
visitEvents in interface org.axonframework.eventstore.management.EventStoreManagementpublic void visitEvents(org.axonframework.eventstore.management.Criteria criteria,
org.axonframework.eventstore.EventVisitor visitor)
visitEvents in interface org.axonframework.eventstore.management.EventStoreManagementpublic MongoCriteriaBuilder newCriteriaBuilder()
newCriteriaBuilder in interface org.axonframework.eventstore.management.EventStoreManagementpublic void setUpcasterChain(org.axonframework.upcasting.UpcasterChain upcasterChain)
setUpcasterChain in interface org.axonframework.upcasting.UpcasterAwareCopyright © 2010-2014. All Rights Reserved.