Nocturnally Psychologizing Millipede

    node-cqrs-mongo

    0.4.3 • Public • Published

    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: {} }
    ]);

    Install

    npm i node-cqrs-mongo

    DownloadsWeekly Downloads

    4

    Version

    0.4.3

    License

    MIT

    Last publish

    Collaborators

    • snatalenko