How to use resolve-storage-base - 10 common examples

To help you get started, we’ve selected a few resolve-storage-base examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github reimagined / resolve / packages / core / resolve-runtime / src / local / import-event-store-handler.js View on Github external
const importEventStoreHandler = options => async (req, res) => {
  const { storageAdapter } = req.resolve

  try {
    const { importFile } = options

    const eventStream = storageAdapter.import()
    const fsStream = fs.createReadStream(path.join(importFile))
    await pipeline(fsStream, eventStream)

    res.end('ok')
  } catch (error) {
    // eslint-disable-next-line no-console
    console.error(error)
    res.status(500)
    res.end(String(error))
  }
}
github reimagined / resolve / packages / core / resolve-runtime / src / local / export-event-store-handler.js View on Github external
const exportEventStoreHandler = options => async (req, res) => {
  const { storageAdapter } = req.resolve

  try {
    const { exportFile } = options

    const eventStream = storageAdapter.export()
    const fsStream = fs.createWriteStream(path.join(exportFile))
    await pipeline(eventStream, fsStream)

    res.end('ok')
  } catch (error) {
    // eslint-disable-next-line no-console
    console.error(error)
    res.status(500)
    res.end(String(error))
  }
}
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-dynamo / src / index.js View on Github external
import { globalPartitionKey, rangedIndex, apiVersion } from './constants'

// as resource
import ApplicationAutoScaling from 'aws-sdk/clients/applicationautoscaling'

import setupAutoScaling from './resource/setup-auto-scaling'
import setupAutoScalingItem from './resource/setup-auto-scaling-item'
import resourceCreate from './resource/create'
import resourceDispose from './resource/dispose'
import resourceDestroy from './resource/destroy'
import resourceWaitForCreate from './resource/wait-for-create'

const resourceMap = new WeakMap()

// as adapter
const createAdapter = _createAdapter.bind(null, {
  connect,
  init,
  loadEvents,
  getEventStream,
  getLatestEvent,
  saveEvent,
  drop,
  dispose: _dispose,
  DynamoDB,
  createTypeExpression,
  createTimestampExpression,
  createAggregateIdExpression,
  createQuery,
  expressionObject,
  expressionString,
  checkTableExists,
github reimagined / resolve / packages / storage-adapters / resolve-storage-lite / src / storage.js View on Github external
db.findOne({ aggregateId, aggregateVersion }, (err, doc) => {
            if (doc !== null) {
              return reject(
                new ConcurrentError(
                  // eslint-disable-next-line max-len
                  `Can not save the event because aggregate '${aggregateId}' is not actual at the moment. Please retry later.`
                )
              )
            }
            db.insert(event, error => (error ? reject(error) : resolve()))
          })
        })
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-lite / src / storage.js View on Github external
error => {
          if (!error) {
            resolve()
          } else if (error.errorType === 'uniqueViolated') {
            reject(
              new ConcurrentError(
                // eslint-disable-next-line max-len
                `Can not save the event because aggregate '${
                  event.aggregateId
                }' is not actual at the moment. Please retry later.`
              )
            )
          } else {
            reject(error)
          }
        }
      )
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-lite / src / index.js View on Github external
import NeDB from 'nedb'

import createAdapter from 'resolve-storage-base'

import connect from './connect'
import init from './init'
import loadEvents from './load-events'
import getLatestEvent from './get-latest-event'
import saveEvent from './save-event'
import dispose from './dispose'
import promiseInvoke from './promise-invoke'

export default createAdapter.bind(
  null,
  connect,
  init,
  loadEvents,
  getLatestEvent,
  saveEvent,
  dispose,
  { NeDB, promiseInvoke }
)
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-mongo / src / index.js View on Github external
import createAdapter from 'resolve-storage-base'

import connect from './connect'
import loadEvents from './load-events'
import getLatestEvent from './get-latest-event'
import saveEvent from './save-event'
import init from './init'
import drop from './drop'
import dispose from './dispose'
import paginateEvents from './paginate-events'
import saveEventOnly from './save-event-only'
import isFrozen from './is-frozen'
import freeze from './freeze'
import unfreeze from './unfreeze'

export default createAdapter.bind(null, {
  connect,
  loadEvents,
  getLatestEvent,
  saveEvent,
  init,
  drop,
  dispose,
  paginateEvents,
  saveEventOnly,
  isFrozen,
  freeze,
  unfreeze,
  MongoClient
})
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-postgresql-serverless / src / index.js View on Github external
import init from './init'
import loadEvents from './load-events'
import getEventStream from './get-event-stream'
import getLatestEvent from './get-latest-event'
import saveEvent from './save-event'
import drop from './drop'
import dispose from './dispose'

import _createResource from './resource/create'
import _disposeResource from './resource/dispose'
import _destroyResource from './resource/destroy'

const escapeId = str => `"${String(str).replace(/(["])/gi, '$1$1')}"`
const escape = str => `'${String(str).replace(/(['])/gi, '$1$1')}'`

const createAdapter = _createAdapter.bind(null, {
  connect,
  init,
  loadEvents,
  getEventStream,
  getLatestEvent,
  saveEvent,
  drop,
  dispose,
  RDSDataService,
  escapeId,
  escape
})

export default createAdapter

const pool = {
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-mysql-serverless / src / index.js View on Github external
import loadEvents from './load-events'
import getLatestEvent from './get-latest-event'
import saveEvent from './save-event'
import drop from './drop'
import dispose from './dispose'

import _createResource from './resource/create'
import _disposeResource from './resource/dispose'
import _destroyResource from './resource/destroy'

const escapeUnicode = str =>
  `FROM_BASE64("${Buffer.from(String(str), 'utf8').toString('base64')}")`
const escapeId = str => `\`${String(str).replace(/([`])/gi, '$1$1')}\``
const escape = str => `"${String(str).replace(/(["])/gi, '$1$1')}"`

const createAdapter = _createAdapter.bind(
  null,
  connect,
  init,
  loadEvents,
  getLatestEvent,
  saveEvent,
  drop,
  dispose,
  {
    RDSDataService,
    escapeUnicode,
    escapeId,
    escape
  }
)
github reimagined / resolve / packages / adapters / storage-adapters / resolve-storage-mysql / src / index.js View on Github external
import createAdapter from 'resolve-storage-base'

import connect from './connect'
import loadEvents from './load-events'
import getLatestEvent from './get-latest-event'
import saveEvent from './save-event'
import init from './init'
import drop from './drop'
import dispose from './dispose'
import paginateEvents from './paginate-events'
import saveEventOnly from './save-event-only'
import freeze from './freeze'
import unfreeze from './unfreeze'

export default createAdapter.bind(null, {
  connect,
  loadEvents,
  getLatestEvent,
  saveEvent,
  init,
  drop,
  dispose,
  paginateEvents,
  saveEventOnly,
  freeze,
  unfreeze,
  MySQL,
  escapeId,
  escape
})

resolve-storage-base

A base for reSolve storage adapters

MIT
Latest version published 4 years ago

Package Health Score

54 / 100
Full package analysis