Config renamed to index.js for implicit importing. Moved routes to their own files
This commit is contained in:
parent
a5528e49d8
commit
836a2c4457
@ -1,4 +1,5 @@
|
||||
const config = {
|
||||
logging: 'debug',
|
||||
bcoin: {
|
||||
network: 'main',
|
||||
db: 'leveldb',
|
||||
4
index.js
4
index.js
@ -1,5 +1,5 @@
|
||||
const node = require('./lib/node');
|
||||
const config = require('./config/config');
|
||||
const config = require('./config');
|
||||
const logger = require('./lib/logger');
|
||||
const Api = require('./lib/api');
|
||||
const db = require('./lib/db');
|
||||
@ -14,4 +14,4 @@ Api.listen(config.api.port, () => {
|
||||
'listening on port 3000');
|
||||
});
|
||||
|
||||
node.start();
|
||||
//node.start();
|
||||
|
||||
42
lib/api/address.js
Normal file
42
lib/api/address.js
Normal file
@ -0,0 +1,42 @@
|
||||
|
||||
module.exports = function(app) {
|
||||
app.get('/addr/:addr', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/utxo', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addrs/:addrs/utxo', (req, res) => {
|
||||
res.send(req.params.addrs);
|
||||
});
|
||||
|
||||
app.post('/addrs/utxo', (req, res) => {
|
||||
res.send('post stub');
|
||||
});
|
||||
|
||||
app.get('/addrs/:addrs/txs', (req, res) => {
|
||||
res.send(req.params.addrs);
|
||||
});
|
||||
|
||||
app.post('/addrs/txs', (req, res) => {
|
||||
res.send('post stub');
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/balance', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/totalReceived', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/totalSent', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/unconfirmedBalance', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
};
|
||||
29
lib/api/block.js
Normal file
29
lib/api/block.js
Normal file
@ -0,0 +1,29 @@
|
||||
const Block = require('../../models/block.js');
|
||||
|
||||
module.exports = function (app) {
|
||||
app.get('/block/:blockHash', (req, res) => {
|
||||
Block.find({ hash: req.params.blockHash }, (err, block) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
}
|
||||
res.send(block);
|
||||
});
|
||||
});
|
||||
|
||||
app.get('/blocks', (req, res) => {
|
||||
res.send({
|
||||
blocks: [],
|
||||
length: 0,
|
||||
pagination: {
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
app.get('/rawblock/:blockHash', (req, res) => {
|
||||
res.send(req.params.blockHash);
|
||||
});
|
||||
|
||||
app.get('/block-index/:height', (req, res) => {
|
||||
res.send(req.params.height);
|
||||
});
|
||||
};
|
||||
5
lib/api/currency.js
Normal file
5
lib/api/currency.js
Normal file
@ -0,0 +1,5 @@
|
||||
module.exports = function(app) {
|
||||
app.get('/currency', (req, res) => {
|
||||
res.send('currency');
|
||||
});
|
||||
};
|
||||
137
lib/api/index.js
137
lib/api/index.js
@ -1,137 +1,14 @@
|
||||
const express = require('express');
|
||||
|
||||
const app = express();
|
||||
const mongoose = require('mongoose');
|
||||
const config = require('../../config/config');
|
||||
const Block = require('../../models/block.js');
|
||||
const BLOCK_LIMIT = 200;
|
||||
|
||||
mongoose.connect(config.mongodb.uri, config.mongodb.options);
|
||||
const AddressAPI = require('./address')(app);
|
||||
const BlockAPI = require('./block')(app);
|
||||
const StatusAPI = require('./status')(app);
|
||||
const TransactionAPI = require('./transaction')(app);
|
||||
const MessageAPI = require('./message')(app);
|
||||
|
||||
// Address Routes
|
||||
app.get('/block/:blockhash', (req, res) => {
|
||||
res.send(req.params.blockhash);
|
||||
});
|
||||
|
||||
app.get('/blocks', (req, res) => {
|
||||
res.send({
|
||||
blocks: [],
|
||||
length: 0,
|
||||
pagination: {
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
app.get('/rawblock/:blockHash', (req, res) => {
|
||||
res.send(req.params.blockHash);
|
||||
});
|
||||
|
||||
app.get('/block-index/:height', (req, res) => {
|
||||
res.send(req.params.height);
|
||||
});
|
||||
|
||||
|
||||
// Tx Routes
|
||||
app.get('/tx/:txid', (req, res) => {
|
||||
res.send(req.params.txid);
|
||||
});
|
||||
|
||||
app.get('/txs', (req, res) => {
|
||||
res.send('list of txs');
|
||||
});
|
||||
|
||||
app.post('/tx/send', (req, res) => {
|
||||
res.send('tx send stub');
|
||||
});
|
||||
|
||||
|
||||
// Raw Routes
|
||||
app.get('/rawtx/:txid', (req, res) => {
|
||||
res.send(req.params.txid);
|
||||
});
|
||||
|
||||
|
||||
// Address Routes
|
||||
app.get('/addr/:addr', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/utxo', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addrs/:addrs/utxo', (req, res) => {
|
||||
res.send(req.params.addrs);
|
||||
});
|
||||
|
||||
app.post('/addrs/utxo', (req, res) => {
|
||||
res.send('post stub');
|
||||
});
|
||||
|
||||
app.get('/addrs/:addrs/txs', (req, res) => {
|
||||
res.send(req.params.addrs);
|
||||
});
|
||||
|
||||
app.post('/addrs/txs', (req, res) => {
|
||||
res.send('post stub');
|
||||
});
|
||||
|
||||
|
||||
// Address property routes
|
||||
app.get('/addr/:addr/balance', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/totalReceived', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/totalSent', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
app.get('/addr/:addr/unconfirmedBalance', (req, res) => {
|
||||
res.send(req.params.addr);
|
||||
});
|
||||
|
||||
|
||||
// Status
|
||||
app.get('/status', (req, res) => {
|
||||
res.send('status');
|
||||
});
|
||||
|
||||
app.get('/sync', (req, res) => {
|
||||
res.send('sync');
|
||||
});
|
||||
|
||||
app.get('/peer', (req, res) => {
|
||||
res.send('peer');
|
||||
});
|
||||
|
||||
app.get('/version', (req, res) => {
|
||||
res.send('version');
|
||||
});
|
||||
|
||||
// Messages
|
||||
app.get('/messages/verify', (req, res) => {
|
||||
res.send('messages verify');
|
||||
});
|
||||
|
||||
app.post('/messages/verify', (req, res) => {
|
||||
res.send('post messages verify');
|
||||
});
|
||||
|
||||
app.get('/utils/estimatefee', (req, res) => {
|
||||
res.send('estimate fees');
|
||||
});
|
||||
|
||||
|
||||
// Currency
|
||||
app.get('/currency', (req, res) => {
|
||||
res.send('currency');
|
||||
});
|
||||
|
||||
|
||||
// 404 Catchall
|
||||
// 404
|
||||
app.use((req, res) => {
|
||||
res.status(404).send({
|
||||
status: 404,
|
||||
|
||||
13
lib/api/message.js
Normal file
13
lib/api/message.js
Normal file
@ -0,0 +1,13 @@
|
||||
module.exports = function(app) {
|
||||
app.get('/messages/verify', (req, res) => {
|
||||
res.send('messages verify');
|
||||
});
|
||||
|
||||
app.post('/messages/verify', (req, res) => {
|
||||
res.send('post messages verify');
|
||||
});
|
||||
|
||||
app.get('/utils/estimatefee', (req, res) => {
|
||||
res.send('estimate fees');
|
||||
});
|
||||
};
|
||||
17
lib/api/status.js
Normal file
17
lib/api/status.js
Normal file
@ -0,0 +1,17 @@
|
||||
module.exports = function(app) {
|
||||
app.get('/status', (req, res) => {
|
||||
res.send('status');
|
||||
});
|
||||
|
||||
app.get('/sync', (req, res) => {
|
||||
res.send('sync');
|
||||
});
|
||||
|
||||
app.get('/peer', (req, res) => {
|
||||
res.send('peer');
|
||||
});
|
||||
|
||||
app.get('/version', (req, res) => {
|
||||
res.send('version');
|
||||
});
|
||||
};
|
||||
19
lib/api/transaction.js
Normal file
19
lib/api/transaction.js
Normal file
@ -0,0 +1,19 @@
|
||||
const Transaction = require('../../models/transaction.js').Transaction;
|
||||
|
||||
module.exports = function (app) {
|
||||
app.get('/tx/:txid', (req, res) => {
|
||||
res.send(req.params.txid);
|
||||
});
|
||||
|
||||
app.get('/txs', (req, res) => {
|
||||
res.send('list of txs');
|
||||
});
|
||||
|
||||
app.get('/rawtx/:txid', (req, res) => {
|
||||
res.send(req.params.txid);
|
||||
});
|
||||
|
||||
app.post('/tx/send', (req, res) => {
|
||||
res.send('tx send stub');
|
||||
});
|
||||
};
|
||||
@ -1,4 +1,6 @@
|
||||
const winston = require('winston');
|
||||
const config = require('../../config');
|
||||
|
||||
const logfile = new Date().toISOString();
|
||||
|
||||
const logger = new (winston.Logger)({
|
||||
@ -12,6 +14,6 @@ const logger = new (winston.Logger)({
|
||||
],
|
||||
});
|
||||
|
||||
logger.level = process.env.LOG || 'debug';
|
||||
logger.level = process.env.LOG || config.logging;
|
||||
|
||||
module.exports = logger;
|
||||
|
||||
@ -1,6 +1,5 @@
|
||||
const FullNode = require('bcoin/lib/node/fullnode');
|
||||
const config = require('../../config/config');
|
||||
const node = new FullNode(config.bcoin);
|
||||
const config = require('../../config');
|
||||
const logger = require('../../lib/logger');
|
||||
const util = require('../../lib/util');
|
||||
const BlockModel = require('../../models/block');
|
||||
@ -8,13 +7,15 @@ const TxModel = require('../../models/transaction').Transaction;
|
||||
const InputModel = require('../../models/transaction').Input;
|
||||
const OutputModel = require('../../models/transaction').Output;
|
||||
|
||||
const node = new FullNode(config.bcoin);
|
||||
|
||||
function start() {
|
||||
node.open()
|
||||
.then(() => {
|
||||
node.connect().then(() => {
|
||||
node.startSync();
|
||||
.then(() => {
|
||||
node.connect().then(() => {
|
||||
node.startSync();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
node.chain.on('connect', (entry, block) => {
|
||||
logger.log('debug',
|
||||
@ -84,7 +85,7 @@ function processTx(entry, txs) {
|
||||
vout: 0,
|
||||
});
|
||||
}),
|
||||
blockHash: blockHash,
|
||||
blockHash,
|
||||
blockHeight: entry.height,
|
||||
confirmations: 0,
|
||||
time: entry.ts,
|
||||
@ -98,8 +99,8 @@ function processTx(entry, txs) {
|
||||
});
|
||||
t.save((err) => {
|
||||
if (err) {
|
||||
console.log(err.message);
|
||||
}
|
||||
console.log(err.message);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@ -52,5 +52,5 @@ const Output = mongoose.model('Output', OutputSchema);
|
||||
module.exports = {
|
||||
Transaction,
|
||||
Input,
|
||||
Output
|
||||
Output,
|
||||
};
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
const db = require('../lib/db');
|
||||
const Block = require('../models/block.js');
|
||||
|
||||
Block.findOne({}, function(err, block) {
|
||||
console.log(err)
|
||||
console.log(block)
|
||||
})
|
||||
Block.findOne({}, (err, block) => {
|
||||
console.log(err);
|
||||
console.log(block);
|
||||
});
|
||||
|
||||
Loading…
Reference in New Issue
Block a user