Start the refactor

This commit is contained in:
Maciej Małecki 2014-04-10 12:09:29 +02:00
parent e5b94527a9
commit f376e96ab2
10 changed files with 608 additions and 2 deletions

View file

@ -0,0 +1,33 @@
'use strict';
require('date-utils');
var winston = require('winston');
var logger = new (winston.Logger)({transports:[new (winston.transports.Console)()]});
var _tickerExchange;
var _api;
var _rates = {};
var _pollRate = function(currency) {
logger.info('polling for rate...');
_tickerExchange.ticker(currency, function(err, rate) {
if (err) return;
logger.info('Rate update:', rate);
_rates[currency] = {rate: rate, timestamp: new Date()};
});
};
exports.init = function(config, api, tickerExchange) {
_api = api;
_tickerExchange = tickerExchange;
_pollRate(config.settings.currency);
setInterval(function () {
_pollRate(config.settings.currency);
}, 60 * 1000);
};
exports.rate = function(currency) {
if (!_rates[currency]) return null;
return _rates[currency];
};