Awesome
deferred-leveldown
A mock abstract-leveldown
implementation that queues operations while a real abstract-leveldown
instance is being opened.
:pushpin: This module will soon be deprecated, because its functionality is included in
abstract-level
.
Usage
If you are upgrading: please see UPGRADING.md.
deferred-leveldown
implements the abstract-leveldown
API so it can be used as a drop-in replacement where leveldown
is needed.
put()
, get()
, getMany()
, del()
, batch()
and clear()
operations are all queued and kept in memory until the abstract-leveldown
-compatible object has been opened through deferred-leveldown
's open()
method.
batch()
operations will all be replayed as the array form. Chained-batch operations are converted before being stored.
const deferred = require('deferred-leveldown')
const leveldown = require('leveldown')
const db = deferred(leveldown('location'))
// Must always call open() first
db.open(function (err) {
// ...
})
// But can operate before open() has finished
db.put('foo', 'bar', function (err) {
// ...
})
Contributing
Level/deferred-leveldown
is an OPEN Open Source Project. This means that:
Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.
See the Contribution Guide for more details.
Donate
Support us with a monthly donation on Open Collective and help us continue our work.