🚀 Launch Week Day 4:Introducing the Alert Details Page: A Better Way to Explore Alerts.Learn More →
Socket
Book a DemoInstallSign in
Socket

level-change-processor

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

level-change-processor

follows a changes-feed and processes each entry, storing state in a leveldb

latest
Source
npmnpm
Version
1.0.0
Version published
Maintainers
1
Created
Source

level-change-processor

NPM

Build Status dat

Follows a changes-feed and processes each entry, storing state in a levelup. Automatically handles resuming the changes processing from where it left off when restarted.

Designed for creating secondary indexes with leveldb but can be used in many different applications.

Usage

require('level-change-processor')(opts)

Construct a new change processor instance.

opts is an object:

  • db (required) - a levelup to store the change state in
  • feed (required) - a changes-feed instance
  • worker (required) - a function (see below) that processes each change
  • key (default latest) - a key to use to store the change state in the db above
  • dbOptions (default {valueEncoding: 'utf8'}) - options to pass to the db .get and .put calls

example:

var processor = changeProcessor({
  db: stateDb,
  feed: feed,
  worker: worker
})

Worker function

A function that takes two arguments: (change, cb).

change will be an object with these properties:

  • change - this will be a js Number that increments by 1 for every change, starting at 1
  • value - this will be the change payload that the changes feed writes to you. usually is a Buffer but depends on the feed

These are the two guaranteed properties. There may be other properties on change depending on the feed.

error handling

To catch errors attach a processor.on('error', errorHandler) event

Keywords

leveldb

FAQs

Package last updated on 16 Jan 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts