elc

etcd-live-collection

A local cache of objects that auto-updates from etcd wait listeners

Showing:

Popularity

Downloads/wk

1

GitHub Stars

1

Maintenance

Last Commit

7yrs ago

Contributors

0

Package

Dependencies

2

Size (min+gzip)

13.0KB

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

etcd-live-collection

A local cache of objects that auto-updates from etcd wait listeners

install

$ npm install etcd-live-collection

usage

Create a collection based on an etcd key - the collection will automatically keep in sync.

var liveCollection = require('etcd-live-collection')
var etcdjs = require('etcdjs')

var etcd = etcdjs('127.0.0.1:4001')
var collection = liveCollection(etcd, '/my/key')

// once the collection has initialized with values
collection.on('ready', function(map){
    // map is a flat object with etcd keys and values
    console.dir(collection.values())
})

// the collection has changed somehow
collection.on('action', function(action, key, value){

})

api

var collection = liveCollection(etcdConnection, key)

Create a new collection - etcdConnection can be a connection string or an existing etcdjs object

key is the base key for values to be saved.

If the base key is /apples and you add a /green key to the collection then the etcd key will be /apples/green

var map = collection.values()

Return all the current values in the collection

Map is a flat object of keys onto values:

{
    "/apples/green":10,
    "/oranges":12
}

events

collection.on('ready', function(){})

called once when the collection is up and running and has the current values loaded

collection.on('action', function(action, key, value){})

Called when a change has happened to a value in the collection.

license

MIT

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100