orwelldb
Version:
Library, wich helps syncronize blockchain and any database use datascript protocol to write operations (can be wroten in blockchain transactions hex like scriptSig or scriptPubKey)
39 lines (31 loc) • 973 B
JavaScript
var transaction = require('./database/transaction')
var $ = require('./database/crypto').createDB
var imp = require('./database/import')
var datascript = require('./datascript/index')
var orwell = {};
orwell.export = function (options, cb) {
transaction.start();
return $(options)
.then(function (db) {
return cb(db)
})
.then(function () {
return new Promise(function (resolve) {
resolve(transaction.commit())
})
})
.catch(function (err) {
transaction.rollback();
console.log(err)
})
}
orwell.import = function (options, script) {
return new Promise(function (resolve) {
new imp(script, options, function (results) {
resolve(results)
})
})
}
orwell.$ = $;
orwell.datascript = datascript;
module.exports = orwell