major refactoring to use session object
This commit is contained in:
parent
fe008a9db6
commit
0b438a62e5
4 changed files with 94 additions and 120 deletions
|
|
@ -28,9 +28,6 @@ try {
|
|||
function poll(req, res) {
|
||||
var rateRec = plugins.getDeviceRate();
|
||||
var balanceRec = plugins.getBalance();
|
||||
var fingerprint = getFingerprint(req);
|
||||
|
||||
logger.debug('poll request from: %s', fingerprint);
|
||||
|
||||
// `rateRec` and `balanceRec` are both objects, so there's no danger
|
||||
// of misinterpreting rate or balance === 0 as 'Server initializing'.
|
||||
|
|
@ -63,7 +60,7 @@ function poll(req, res) {
|
|||
config.exchanges.settings.commission;
|
||||
var sessionId = req.get('session-id');
|
||||
|
||||
plugins.dispenseStatus(fingerprint, sessionId, function(err, dispenseStatus) {
|
||||
plugins.dispenseStatus(session(req), function(err, dispenseStatus) {
|
||||
if (err) return logger.error(err);
|
||||
var response = {
|
||||
err: null,
|
||||
|
|
@ -86,14 +83,14 @@ function poll(req, res) {
|
|||
}
|
||||
|
||||
function trade(req, res) {
|
||||
plugins.trade(getFingerprint(req), req.body, function(err) {
|
||||
plugins.trade(session(req), req.body, function(err) {
|
||||
var statusCode = err ? 500 : 201;
|
||||
res.json(statusCode, {err: err});
|
||||
});
|
||||
}
|
||||
|
||||
function send(req, res) {
|
||||
plugins.sendBitcoins(getFingerprint(req), req.body, function(err, status) {
|
||||
plugins.sendBitcoins(session(req), req.body, function(err, status) {
|
||||
// TODO: use status.statusCode here after confirming machine compatibility
|
||||
// FIX: (joshm) set txHash to status.txId instead of previous status.txHash which wasn't being set
|
||||
// Need to clean up txHash vs txId
|
||||
|
|
@ -108,7 +105,7 @@ function send(req, res) {
|
|||
|
||||
function cashOut(req, res) {
|
||||
logger.info({tx: req.body, cmd: 'cashOut'});
|
||||
plugins.cashOut(getFingerprint(req), req.body, function(err, bitcoinAddress) {
|
||||
plugins.cashOut(session(req), req.body, function(err, bitcoinAddress) {
|
||||
if (err) logger.error(err);
|
||||
|
||||
res.json({
|
||||
|
|
@ -120,12 +117,12 @@ function cashOut(req, res) {
|
|||
}
|
||||
|
||||
function dispenseAck(req, res) {
|
||||
plugins.dispenseAck(getFingerprint(req), req.body);
|
||||
plugins.dispenseAck(session(req), req.body);
|
||||
res.json(200);
|
||||
}
|
||||
|
||||
function deviceEvent(req, res) {
|
||||
plugins.logEvent(req.body, getFingerprint(req));
|
||||
plugins.logEvent(session(req), req.body);
|
||||
res.json({err: null});
|
||||
}
|
||||
|
||||
|
|
@ -195,6 +192,10 @@ function init(localConfig) {
|
|||
return app;
|
||||
}
|
||||
|
||||
function session(req) {
|
||||
return {fingerprint: getFingerprint(req), id: req.get('session-id')};
|
||||
}
|
||||
|
||||
function getFingerprint(req) {
|
||||
return typeof req.connection.getPeerCertificate === 'function' &&
|
||||
req.connection.getPeerCertificate().fingerprint;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue