Skip to content
This repository has been archived by the owner on Nov 17, 2023. It is now read-only.

refactor(lnd): promisify lnd calls #1319

Merged
merged 6 commits into from
Jan 18, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 5 additions & 36 deletions app/lib/lnd/methods/channelController.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { listPeers, connectPeer } from './peersController'
import pushopenchannel from '../push/openchannel'
import { promisifiedCall } from '../../utils'

function ensurePeerConnected(lnd, pubkey, host) {
return listPeers(lnd).then(({ peers }) => {
Expand Down Expand Up @@ -66,15 +67,7 @@ export function openChannel(lnd, event, payload) {
* @return {[type]} [description]
*/
export function channelBalance(lnd) {
return new Promise((resolve, reject) => {
lnd.channelBalance({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.channelBalance, {})
}

/**
Expand All @@ -83,15 +76,7 @@ export function channelBalance(lnd) {
* @return {[type]} [description]
*/
export function listChannels(lnd) {
return new Promise((resolve, reject) => {
lnd.listChannels({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.listChannels, {})
}

/**
Expand Down Expand Up @@ -144,15 +129,7 @@ export function closeChannel(lnd, event, payload) {
* @return {[type]} [description]
*/
export function pendingChannels(lnd) {
return new Promise((resolve, reject) => {
lnd.pendingChannels({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.pendingChannels, {})
}

/**
Expand All @@ -162,13 +139,5 @@ export function pendingChannels(lnd) {
* @return {[type]} [description]
*/
export function getChanInfo(lnd, { chanId }) {
return new Promise((resolve, reject) => {
lnd.getChanInfo({ chan_id: chanId }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.getChanInfo, { chan_id: chanId })
}
41 changes: 5 additions & 36 deletions app/lib/lnd/methods/invoicesController.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import pushinvoices from '../push/subscribeinvoice'
import { promisifiedCall } from '../../utils'

/**
* Attempts to add a new invoice to the invoice database.
Expand All @@ -8,15 +9,7 @@ import pushinvoices from '../push/subscribeinvoice'
* @return [description]
*/
export function addInvoice(lnd, { memo, value, private: privateInvoice }) {
return new Promise((resolve, reject) => {
lnd.addInvoice({ memo, value, private: privateInvoice, expiry: 600 }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.addInvoice, { memo, value, private: privateInvoice, expiry: 600 })
}

/**
Expand All @@ -25,31 +18,15 @@ export function addInvoice(lnd, { memo, value, private: privateInvoice }) {
* @return {[type]} [description]
*/
export function listInvoices(lnd) {
return new Promise((resolve, reject) => {
lnd.listInvoices({ num_max_invoices: 1000 }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.listInvoices, { num_max_invoices: 1000 })
}

/**
* @param {[type]} payreq [description]
* @return {[type]} [description]
*/
export function getInvoice(lnd, { pay_req }) {
return new Promise((resolve, reject) => {
lnd.decodePayReq({ pay_req }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.decodePayReq, { pay_req })
}

/**
Expand All @@ -59,15 +36,7 @@ export function getInvoice(lnd, { pay_req }) {
* @return {[type]} [description]
*/
export function lookupInvoice(lnd, { rhash }) {
return new Promise((resolve, reject) => {
lnd.lookupInvoice({ r_hash: rhash }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.lookupInvoice, { r_hash: rhash })
}

/**
Expand Down
52 changes: 9 additions & 43 deletions app/lib/lnd/methods/networkController.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,11 @@
import { promisifiedCall } from '../../utils'
/**
* [info description]
* @param {[type]} lnd [description]
* @return {[type]} [description]
*/
export function getInfo(lnd) {
return new Promise((resolve, reject) => {
lnd.getInfo({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.getInfo, {})
}

/**
Expand All @@ -22,15 +15,7 @@ export function getInfo(lnd) {
* @return {[type]} [description]
*/
export function getNodeInfo(lnd, { pubkey }) {
return new Promise((resolve, reject) => {
lnd.getNodeInfo({ pub_key: pubkey }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.getNodeInfo, { pub_key: pubkey })
}

/**
Expand All @@ -39,15 +24,7 @@ export function getNodeInfo(lnd, { pubkey }) {
* @return {[type]} [description]
*/
export function describeGraph(lnd) {
return new Promise((resolve, reject) => {
lnd.describeGraph({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.describeGraph, {})
}

/**
Expand All @@ -59,13 +36,10 @@ export function describeGraph(lnd) {
* @return {[type]} [description]
*/
export function queryRoutes(lnd, { pubkey, amount, numRoutes = 15 }) {
return new Promise((resolve, reject) => {
lnd.queryRoutes({ pub_key: pubkey, amt: amount, num_routes: numRoutes }, (err, data) => {
if (err) {
return reject(err)
}
resolve(data)
})
return promisifiedCall(lnd, lnd.queryRoutes, {
pub_key: pubkey,
amt: amount,
num_routes: numRoutes
})
}

Expand All @@ -75,13 +49,5 @@ export function queryRoutes(lnd, { pubkey, amount, numRoutes = 15 }) {
* @return {[type]} [description]
*/
export function getNetworkInfo(lnd) {
return new Promise((resolve, reject) => {
lnd.getNetworkInfo({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.getNetworkInfo, {})
}
31 changes: 4 additions & 27 deletions app/lib/lnd/methods/paymentsController.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { promisifiedCall } from '../../utils'
import promiseTimeout from '../../utils/promiseTimeout'

const PAYMENT_TIMEOUT = 60 * 1000
Expand Down Expand Up @@ -63,15 +64,7 @@ export function sendPaymentSync(lnd, { paymentRequest, amt, feeLimit }) {
* @return {[type]} [description]
*/
export function decodePayReq(lnd, { payReq }) {
return new Promise((resolve, reject) => {
lnd.decodePayReq({ pay_req: payReq }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.decodePayReq, { pay_req: payReq })
}

/**
Expand All @@ -80,15 +73,7 @@ export function decodePayReq(lnd, { payReq }) {
* @return {[type]} [description]
*/
export function listPayments(lnd) {
return new Promise((resolve, reject) => {
lnd.listPayments({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.listPayments, {})
}

/**
Expand All @@ -97,13 +82,5 @@ export function listPayments(lnd) {
* @return {[type]} [description]
*/
export function deleteAllPayments(lnd) {
return new Promise((resolve, reject) => {
lnd.deleteAllPayments({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.deleteAllPayments, {})
}
31 changes: 4 additions & 27 deletions app/lib/lnd/methods/peersController.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { promisifiedCall } from '../../utils'
/**
* Attempts to establish a connection to a remote peer
* @param {[type]} lnd [description]
Expand All @@ -6,15 +7,7 @@
* @return {[type]} [description]
*/
export function connectPeer(lnd, { pubkey, host }) {
return new Promise((resolve, reject) => {
lnd.connectPeer({ addr: { pubkey, host } }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.connectPeer, { addr: { pubkey, host } })
}

/**
Expand All @@ -24,15 +17,7 @@ export function connectPeer(lnd, { pubkey, host }) {
* @return {[type]} [description]
*/
export function disconnectPeer(lnd, { pubkey }) {
return new Promise((resolve, reject) => {
lnd.disconnectPeer({ pub_key: pubkey }, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.disconnectPeer, { pub_key: pubkey })
}

/**
Expand All @@ -41,13 +26,5 @@ export function disconnectPeer(lnd, { pubkey }) {
* @return {[type]} [description]
*/
export function listPeers(lnd) {
return new Promise((resolve, reject) => {
lnd.listPeers({}, (err, data) => {
if (err) {
return reject(err)
}

resolve(data)
})
})
return promisifiedCall(lnd, lnd.listPeers, {})
}
Loading