53 lines
1.6 KiB
JavaScript
53 lines
1.6 KiB
JavaScript
/*
|
|
* This file is part of the authRXBN single sign-on package.
|
|
*
|
|
* (c) Ruben Meyer <contact@rxbn.de>
|
|
*/
|
|
|
|
module.exports = {
|
|
'command': 'cache [action] [type]',
|
|
'description': 'do something with the cache',
|
|
'actionDependencies': ['vorpal'],
|
|
'action': (actionDependencies) => {
|
|
let vorpal = actionDependencies.vorpal;
|
|
return (args, cb) => {
|
|
if(typeof args.action !== 'undefined') {
|
|
let action = args.action.toLowerCase();
|
|
|
|
if(typeof args.type !== 'undefined') { var type = args.type.toLowerCase(); }
|
|
else { var type = ''; }
|
|
|
|
//Object.keys(args.options).length > 0
|
|
if(action == 'help' || action == '?') {
|
|
vorpal.exec('cache --help');
|
|
}
|
|
else if(action == 'flush') {
|
|
if(typeof global['gds'].cache[type] !== "undefined") {
|
|
global['gds'].cache[type] = {};
|
|
console.log(type+' cache flush');
|
|
} else if(type == 'all') {
|
|
global['gds'].cache = {};
|
|
console.log('full cache flush');
|
|
}
|
|
else vorpal.exec('cache --help');
|
|
}
|
|
else if(action == 'get') {
|
|
console.log(Object.keys(global['gds'].cache));
|
|
console.log(type);
|
|
console.log(type in Object.keys(global['gds'].cache));
|
|
console.log(Object.keys(global['gds'].cache).hasOwnProperty(type));
|
|
if(typeof global['gds'].cache[type] !== "undefined") {
|
|
console.log(JSON.stringify(global['gds'].cache[type]));
|
|
} else if(type == 'all'){
|
|
console.log(JSON.stringify(global['gds'].cache));
|
|
} else {
|
|
console.log("The cache \""+type+"\" doesnt exists.");
|
|
vorpal.exec('cache --help');
|
|
}
|
|
} else vorpal.exec('cache --help');
|
|
} else vorpal.exec('cache --help');
|
|
cb();
|
|
}
|
|
}
|
|
};
|