diff --git a/app/controllers/status.js b/app/controllers/status.js index 0d9194bb..c64eb6aa 100644 --- a/app/controllers/status.js +++ b/app/controllers/status.js @@ -17,7 +17,7 @@ exports.show = function(req, res) { } else { var option = req.query.q; - var statusObject = Status.new(); + var statusObject = new Status(); var returnJsonp = function (err) { if (err || ! statusObject) diff --git a/app/models/Address.js b/app/models/Address.js index f67ab1ca..aff16114 100644 --- a/app/models/Address.js +++ b/app/models/Address.js @@ -1,13 +1,13 @@ 'use strict'; -//var imports = require('soop').imports(); +var imports = require('soop').imports(); var async = require('async'); var BitcoreAddress = require('bitcore/Address'); var BitcoreTransaction = require('bitcore/Transaction'); var BitcoreUtil = require('bitcore/util/util'); var Parser = require('bitcore/util/BinaryParser'); var Buffer = require('buffer').Buffer; -var TransactionDb = require('../../lib/TransactionDb').default(); +var TransactionDb = imports.TransactionDb || require('../../lib/TransactionDb').default(); var CONCURRENCY = 5; function Address(addrStr) { @@ -84,7 +84,7 @@ Address.prototype.getUtxo = function(next) { if (!self.addrStr) return next(); var ret = []; - var db = new TransactionDb(); + var db = TransactionDb; db.fromAddr(self.addrStr, function(err,txOut){ if (err) return next(err); @@ -121,7 +121,7 @@ Address.prototype.update = function(next) { if (!self.addrStr) return next(); var txs = []; - var db = new TransactionDb(); + var db = TransactionDb; async.series([ function (cb) { var seen={}; diff --git a/app/models/Status.js b/app/models/Status.js index 548974f3..39e52476 100644 --- a/app/models/Status.js +++ b/app/models/Status.js @@ -3,12 +3,11 @@ var async = require('async'); var RpcClient = require('bitcore/RpcClient'); -var BlockDb = require('../../lib/BlockDb'); var config = require('../../config/config'); var rpc = new RpcClient(config.bitcoind); function Status() { - this.bDb = new BlockDb(); + this.bDb = require('../../lib/BlockDb').default(); } Status.prototype.getInfo = function(next) { diff --git a/lib/BlockDb.js b/lib/BlockDb.js index bab3d53f..0da84e30 100644 --- a/lib/BlockDb.js +++ b/lib/BlockDb.js @@ -20,7 +20,7 @@ var db = imports.db || levelup(config.leveldb + '/blocks',{maxOpenFiles: MAX_OP var Rpc = imports.rpc || require('./Rpc'); var PoolMatch = imports.poolMatch || require('soop').load('./PoolMatch',config); -var TransactionDb = require('./TransactionDb.js').default(); +var tDb = require('./TransactionDb.js').default(); var BlockDb = function() { BlockDb.super(this, arguments); @@ -56,6 +56,7 @@ BlockDb.prototype.add = function(b, cb) { .put(PREV_PREFIX + b.hash, b.previousblockhash) .write(function(err){ if (!err) { + self.emit('new_block', {blockid: b.hash}); } cb(err); }); @@ -160,10 +161,9 @@ BlockDb.prototype.has = function(hash, cb) { }; BlockDb.prototype.getPoolInfo = function(tx, cb) { - var tr = new TransactionDb(); var self = this; - tr._getInfo(tx, function(e, a) { + tDb._getInfo(tx, function(e, a) { if (e) return cb(false); if (a.isCoinBase) { diff --git a/test/integration/01-transactionouts.js b/test/integration/01-transactionouts.js index 0fc7e0ff..bb41fd25 100644 --- a/test/integration/01-transactionouts.js +++ b/test/integration/01-transactionouts.js @@ -8,7 +8,7 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var assert = require('assert'), fs = require('fs'), util = require('util'), - TransactionDb = require('../../lib/TransactionDb').class(); + TransactionDb = require('../../lib/TransactionDb').default(); var txItemsValid = JSON.parse(fs.readFileSync('test/integration/txitems.json')); var txDb; @@ -16,7 +16,7 @@ var txDb; describe('TransactionDb fromIdWithInfo', function(){ before(function(c) { - txDb = new TransactionDb(); + txDb = TransactionDb; return c(); }); @@ -118,7 +118,7 @@ describe('TransactionDb fromIdWithInfo', function(){ describe('TransactionDb Outs', function(){ before(function(c) { - txDb = new TransactionDb(); + txDb = TransactionDb; return c(); }); diff --git a/test/integration/02-transactionouts.js b/test/integration/02-transactionouts.js index e61635fd..6dc1f851 100644 --- a/test/integration/02-transactionouts.js +++ b/test/integration/02-transactionouts.js @@ -20,7 +20,7 @@ var txDb; describe('TransactionDb Expenses', function(){ before(function(c) { - txDb = new TransactionDb(); + txDb = TransactionDb; // lets spend! async.each(Object.keys(spentValid), diff --git a/test/integration/addr.js b/test/integration/addr.js index fecc7360..2bce598b 100644 --- a/test/integration/addr.js +++ b/test/integration/addr.js @@ -6,8 +6,8 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var assert = require('assert'), fs = require('fs'), - Address = require('../../app/models/Address').class(), - TransactionDb = require('../../lib/TransactionDb').class(), + Address = require('../../app/models/Address'), + TransactionDb = require('../../lib/TransactionDb').default(), addrValid = JSON.parse(fs.readFileSync('test/integration/addr.json')), utxoValid = JSON.parse(fs.readFileSync('test/integration/utxo.json')); @@ -15,7 +15,7 @@ var txDb; describe('Address balances', function() { before(function(c) { - txDb = new TransactionDb(); + txDb = TransactionDb; return c(); }); diff --git a/test/integration/block.js b/test/integration/block.js index 037f7094..0d6e5e4e 100644 --- a/test/integration/block.js +++ b/test/integration/block.js @@ -10,14 +10,14 @@ var TESTING_BLOCK = '000000000185678d3d7ecc9962c96418174431f93fe20bf216d55652724 var assert = require('assert'), // config = require('../../config/config'), - BlockDb = require('../../lib/BlockDb').class(); + BlockDb = require('../../lib/BlockDb').default(); var bDb; describe('BlockDb fromHashWithInfo', function() { before(function(c) { - bDb = new BlockDb(); + bDb = BlockDb; return c(); }); diff --git a/test/integration/blockExtractor.js b/test/integration/blockExtractor.js index 13c7e8d2..0e222f83 100644 --- a/test/integration/blockExtractor.js +++ b/test/integration/blockExtractor.js @@ -7,7 +7,7 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var assert = require('assert'), config = require('../../config/config'), - BlockExtractor = require('../../lib/BlockExtractor').class(), + BlockExtractor = require('../../lib/BlockExtractor'), networks = require('bitcore/networks'), util = require('bitcore/util/util'); diff --git a/test/integration/blocklist.js b/test/integration/blocklist.js index 628ef0d9..6491c89c 100644 --- a/test/integration/blocklist.js +++ b/test/integration/blocklist.js @@ -9,7 +9,7 @@ var START_TS = 1; var END_TS = '1296688928~'; // 2/2/2011 23:23PM var assert = require('assert'), - BlockDb = require('../../lib/BlockDb').class(); + BlockDb = require('../../lib/BlockDb').default(); var bDb; @@ -17,7 +17,7 @@ describe('BlockDb getBlocksByDate', function(){ before(function(c) { - bDb = new BlockDb(); + bDb = BlockDb; return c(); }); diff --git a/test/integration/nodecheck.js b/test/integration/nodecheck.js index 1cfef438..2e2973cd 100644 --- a/test/integration/nodecheck.js +++ b/test/integration/nodecheck.js @@ -1,8 +1,8 @@ 'use strict'; -var BlockDb = require('../../lib/BlockDb').class(); +var BlockDb = require('../../lib/BlockDb').default(); var height_needed = 180000; -var bDb = new BlockDb(); +var bDb = BlockDb; var expect = require('chai').expect; diff --git a/test/integration/status.js b/test/integration/status.js index 82dea3a4..d912fa02 100644 --- a/test/integration/status.js +++ b/test/integration/status.js @@ -4,7 +4,7 @@ process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var assert = require('assert'), - Status = require('../../app/models/Status').class(); + Status = require('../../app/models/Status'); describe('Status', function(){ diff --git a/test/lib/PeerSync.js b/test/lib/PeerSync.js index c4dc9734..092c9bae 100644 --- a/test/lib/PeerSync.js +++ b/test/lib/PeerSync.js @@ -3,7 +3,7 @@ var chai = require('chai'), expect = chai.expect, sinon = require('sinon'); -var PeerSync = require('../../lib/PeerSync.js').class(); +var PeerSync = require('../../lib/PeerSync.js'); describe('PeerSync', function() { var ps;