Skip to content

uscreen/node-cqrs-mongo

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MongoDB Event Storage for node-cqrs

Usage

npm install node-cqrs node-cqrs-mongo --save

A configured instance of MongoEventStorage must be passed in as "storage" option to the EventStore constructor:

const { EventStore } = require('node-cqrs');
const MongoEventStorage = require('node-cqrs-mongo');

const storage = new MongoEventStorage({
	connectionString: 'mongodb://username:password@localhost:27017/db',
	eventsCollection: 'events'
});

const eventStore = new EventStore({ storage });

eventStore.commit([
	{ aggregateId: 1, aggregateVersion: 1, type: 'somethingHappened', payload: {} }
]);

The same, using DI container:

const { EventStore, Container } = require('node-cqrs');
const MongoEventStorage = require('node-cqrs-mongo');

// create container instance
const container = new Container();

// register MongoEventStorage as "storage"
container.registerInstance({ connectionString: 'mongodb://username:password@localhost:27017/db' }, 'mongoConfig');
container.register(MongoEventStorage, 'storage');

// register EventStore as "eventStore"
container.register(EventStore, 'eventStore');

// commit events to eventStore
container.eventStore.commit([
	{ aggregateId: 1, aggregateVersion: 1, type: 'somethingHappened', payload: {} }
]);

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%