Files
orbitdb/src/Cache.js
2016-04-11 14:13:53 +02:00

32 lines
748 B
JavaScript

'use strict';
const fs = require('fs');
const path = require('path');
const logger = require('orbit-common/lib/logger')("orbit-db.Cache");
const defaultFilepath = path.resolve('./orbit-db-cache.json');
let filePath = defaultFilepath;
let cache = {};
class Cache {
static set(key, value) {
cache[key] = value;
fs.writeFile(filePath, JSON.stringify(cache, null, 2) + "\n", (err) => {
if (err) throw err;
});
}
static get(key) {
return cache[key];
}
static loadCache(cacheFile) {
filePath = cacheFile ? cacheFile : defaultFilepath;
if(fs.existsSync(filePath)) {
logger.debug('Load cache from', filePath);
cache = JSON.parse(fs.readFileSync(filePath));
}
}
}
module.exports = Cache;