moved cache to own .js file
This commit is contained in:
parent
54d73e1530
commit
187b4beb70
2 changed files with 118 additions and 19 deletions
95
libs/cache.js
Normal file
95
libs/cache.js
Normal file
|
@ -0,0 +1,95 @@
|
|||
const logger = require('./logger.js');
|
||||
|
||||
var banks = undefined;
|
||||
var pedalboards = undefined;
|
||||
var defaultPedalboard = undefined;
|
||||
var currentPedalboard = undefined;
|
||||
var currentPedals = undefined;
|
||||
|
||||
function getBanks() {
|
||||
return banks;
|
||||
}
|
||||
|
||||
function clearBanks() {
|
||||
logger.debug('clearing bank(s)');
|
||||
setBanks(undefined);
|
||||
}
|
||||
|
||||
function setBanks(value) {
|
||||
logger.debug('caching ' + value.length + ' bank(s)');
|
||||
banks = value;
|
||||
}
|
||||
|
||||
function getPedalboards() {
|
||||
return pedalboards;
|
||||
}
|
||||
|
||||
function clearPedalboards() {
|
||||
logger.debug('clearing pedalboard(s)');
|
||||
setPedalboards(undefined);
|
||||
}
|
||||
|
||||
function setPedalboards(value) {
|
||||
logger.debug('caching ' + value.length + ' pedalboard(s)');
|
||||
pedalboards = value;
|
||||
}
|
||||
|
||||
function getDefaultPedalboard() {
|
||||
return defaultPedalboard;
|
||||
}
|
||||
|
||||
function clearDefaultPedalboard() {
|
||||
logger.debug('clearing default pedalboard');
|
||||
setDefaultPedalboard(undefined);
|
||||
}
|
||||
|
||||
function setDefaultPedalboard(value) {
|
||||
logger.debug('caching default pedalboard');
|
||||
defaultPedalboard = value;
|
||||
}
|
||||
|
||||
function getCurrentPedalboard() {
|
||||
return currentPedalboard;
|
||||
}
|
||||
|
||||
function clearCurrentPedalboard() {
|
||||
logger.debug('clearing current pedalboard');
|
||||
setCurrentPedalboard(undefined);
|
||||
}
|
||||
|
||||
function setCurrentPedalboard(value) {
|
||||
logger.debug('caching current pedalboard');
|
||||
currentPedalboard = value;
|
||||
}
|
||||
|
||||
function getCurrentPedals() {
|
||||
return currentPedals;
|
||||
}
|
||||
|
||||
function clearCurrenPedals() {
|
||||
logger.debug('clearing current pedal(s))');
|
||||
setCurrentPedals(undefined);
|
||||
}
|
||||
|
||||
function setCurrentPedals(value) {
|
||||
logger.debug('caching ' + value.length + ' current pedal(s)');
|
||||
currentPedals = value;
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
getBanks,
|
||||
clearBanks,
|
||||
setBanks,
|
||||
getPedalboards,
|
||||
clearPedalboards,
|
||||
setPedalboards,
|
||||
getDefaultPedalboard,
|
||||
clearDefaultPedalboard,
|
||||
setDefaultPedalboard,
|
||||
getCurrentPedalboard,
|
||||
clearCurrentPedalboard,
|
||||
setCurrentPedalboard,
|
||||
getCurrentPedals,
|
||||
clearCurrenPedals,
|
||||
setCurrentPedals
|
||||
}
|
|
@ -2,17 +2,14 @@ const config = require('../config.json');
|
|||
const util = require('./util.js');
|
||||
const constants = require('./constants.js');
|
||||
const logger = require('./logger.js');
|
||||
const cache = require('./cache.js');
|
||||
const path = require('path');
|
||||
const fs = require('fs');
|
||||
const { spawn } = require('child_process')
|
||||
const ttl2jsonld = require('@frogcat/ttl2jsonld').parse;
|
||||
|
||||
// TODO: MOVE TO CACHE.JS
|
||||
var banks = undefined;
|
||||
var pedalboards = undefined;
|
||||
var defaultPedalboard = undefined;
|
||||
var currentPedalboard = undefined;
|
||||
var currentPedals = undefined;
|
||||
|
||||
|
||||
function reset() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
@ -24,6 +21,7 @@ function reset() {
|
|||
|
||||
function getBanks() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var banks = cache.getBanks();
|
||||
if (banks != undefined) {
|
||||
return resolve(banks);
|
||||
}
|
||||
|
@ -42,6 +40,7 @@ function getBanks() {
|
|||
bank.id = index;
|
||||
}
|
||||
banks = util.sortById(banks);
|
||||
cache.setBanks(banks);
|
||||
return resolve(banks);
|
||||
})
|
||||
.catch(reject);
|
||||
|
@ -66,6 +65,7 @@ function getBankById(bankId) {
|
|||
|
||||
function getPedalboards() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var pedalboards = cache.getPedalboards();
|
||||
if (pedalboards != undefined) {
|
||||
return resolve(pedalboards);
|
||||
}
|
||||
|
@ -86,10 +86,10 @@ function getPedalboards() {
|
|||
// return resolve(fake);
|
||||
|
||||
util.httpGET(config.modep.host, config.modep.port, '/pedalboard/list')
|
||||
.then(function (data) {
|
||||
.then(function (pedalboards) {
|
||||
var id = 1;
|
||||
for (var index = 0; index < data.length; index++) {
|
||||
var pedalboard = data[index];
|
||||
for (var index = 0; index < pedalboards.length; index++) {
|
||||
var pedalboard = pedalboards[index];
|
||||
if (pedalboard.bundle == constants.PEDALBOARD_DEFAULT) {
|
||||
pedalboard.id = 0;
|
||||
defaultPedalboard = pedalboard;
|
||||
|
@ -98,7 +98,8 @@ function getPedalboards() {
|
|||
pedalboard.id = id;
|
||||
id++;
|
||||
}
|
||||
pedalboards = util.sortById(data);
|
||||
pedalboards = util.sortById(pedalboards);
|
||||
cache.setPedalboards(pedalboards);
|
||||
return resolve(pedalboards);
|
||||
})
|
||||
.catch(reject);
|
||||
|
@ -107,17 +108,22 @@ function getPedalboards() {
|
|||
|
||||
function getDefaultPedalboard() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var defaultPedalboard = cache.getDefaultPedalboard();
|
||||
if (defaultPedalboard != undefined) {
|
||||
return resolve(defaultPedalboard);
|
||||
}
|
||||
getPedalboardByBundle(constants.PEDALBOARD_DEFAULT)
|
||||
.then(resolve)
|
||||
.then(function (defaultPedalboard) {
|
||||
cache.setDefaultPedalboard(defaultPedalboard);
|
||||
return resolve(defaultPedalboard);
|
||||
})
|
||||
.catch(reject);
|
||||
});
|
||||
}
|
||||
|
||||
function getCurrentPedalboard() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var currentPedalboard = cache.getCurrentPedalboard();
|
||||
if (currentPedalboard != undefined && currentPedalboard.id != undefined) {
|
||||
return resolve(currentPedalboard);
|
||||
}
|
||||
|
@ -133,8 +139,8 @@ function getCurrentPedalboard() {
|
|||
// PRODUCTION
|
||||
util.httpGET(config.modep.host, config.modep.port, '/pedalboard/current')
|
||||
.then(getPedalboardByBundle)
|
||||
.then(function (pedalboard) {
|
||||
currentPedalboard = pedalboard;
|
||||
.then(function (currentPedalboard) {
|
||||
cache.setCurrentPedalboard(currentPedalboard);
|
||||
return resolve(currentPedalboard)
|
||||
})
|
||||
.catch(reject);
|
||||
|
@ -213,12 +219,16 @@ function getCurrentPedalById(id) {
|
|||
|
||||
function getCurrentPedals() {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var currentPedals = cache.getCurrentPedals();
|
||||
if (currentPedals) {
|
||||
return resolve(currentPedals);
|
||||
}
|
||||
getCurrentPedalboard()
|
||||
.then(parseCurrentPedalboard)
|
||||
.then(resolve)
|
||||
.then(function (pedals) {
|
||||
cache.setCurrentPedals(pedals);
|
||||
return resolve(pedals);
|
||||
})
|
||||
.catch(reject);
|
||||
});
|
||||
}
|
||||
|
@ -341,12 +351,6 @@ function setControlValue(pedalId, requestParams) {
|
|||
});
|
||||
}
|
||||
|
||||
function sendValueToControl(pedalId, controlId, value) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
function setPedalboardById(pedalboardId) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
if (pedalboardId == undefined) {
|
||||
|
|
Loading…
Reference in a new issue