examples: more examples.

This commit is contained in:
Christopher Jeffrey 2017-03-24 16:26:34 -07:00
parent 89667c3e3e
commit 9008a90cb0
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
2 changed files with 80 additions and 0 deletions

26
examples/node.js Normal file
View File

@ -0,0 +1,26 @@
'use strict';
var FullNode = require('bcoin/lib/node/fullnode');
var node = new FullNode({
network: 'testnet',
db: 'memory'
});
async function main() {
await node.open();
await node.connect();
node.on('connect', function(entry, block) {
console.log('%s (%d) added to chain.', entry.rhash(), entry.height);
});
node.on('tx', function(tx) {
console.log('%s added to mempool.', tx.txid());
});
node.startSync();
}
main();

54
examples/plugin.js Normal file
View File

@ -0,0 +1,54 @@
'use strict';
var FullNode = require('bcoin/lib/node/fullnode');
function MyPlugin(node) {
this.node = node;
}
MyPlugin.id = 'my-plugin';
MyPlugin.init = function init(node) {
return new MyPlugin(node);
};
MyPlugin.prototype.open = function open() {
console.log('Opened my plugin.');
return Promise.resolve();
};
MyPlugin.prototype.close = function close() {
console.log('Closed my plugin.');
return Promise.resolve();
};
MyPlugin.prototype.sayPeers = function sayPeers() {
console.log('Number of peers: %d', this.node.pool.peers.size());
};
var node = new FullNode({
network: 'testnet',
db: 'memory'
});
node.use(MyPlugin);
async function main() {
var plugin = node.require('my-plugin');
await node.open();
await node.connect();
plugin.sayPeers();
node.on('connect', function(entry, block) {
console.log('%s (%d) added to chain.', entry.rhash(), entry.height);
});
node.on('tx', function(tx) {
console.log('%s added to mempool.', tx.txid());
});
}
main();