refactor to be more readable (#65)

This commit is contained in:
Lynn 2017-04-24 12:51:35 -07:00 committed by GitHub
parent db6736491c
commit a9bcb275b1

View File

@ -16,42 +16,46 @@ var symphonyRegistryHKLM = new Registry({
var symphonyRegistryHKLM6432 = new Registry({
key: symphonyRegistry.replace('\\Software','\\Software\\WOW6432Node')
});
/**
* Reads Windows Registry key. This Registry holds the Symphony registry keys
* that are intended to be used as global (or default) value for all users
* Reads Windows Registry key. This Registry holds the Symphony registry keys
* that are intended to be used as global (or default) value for all users
* running this app.
*/
var getRegistry = function (name) {
var promise = new Promise(function(resolve, reject) {
if (isMac){
reject('Mac OS. Using default url from config.json.');
} else{
//Try to get registry on HKEY_CURRENT_USER
symphonyRegistryHKCU.get( name, function( err1, reg1 ) {
if ( !err1 && reg1!==null && reg1.value) {
resolve(reg1.value);
} else{
//Try to get registry on HKEY_LOCAL_MACHINE
symphonyRegistryHKLM.get( name, function( err2, reg2 ) {
if ( !err2 && reg2!==null && reg2.value) {
resolve(reg2.value);
} else{
//Try to get registry on HKEY_LOCAL_MACHINE in case 32bit app installed on 64bit system.
//winreg does not merge keys as normally windows does.
symphonyRegistryHKLM6432.get( name, function( err3, reg3 ) {
if ( !err3 && reg3!==null && reg3.value) {
resolve(reg3.value);
} else{
reject('Cannot find PodUrl Registry. Using default url.');
}
});
}
});
}
});
if (isMac) {
reject('registry is not supported for mac osx.');
return;
}
//Try to get registry on HKEY_CURRENT_USER
symphonyRegistryHKCU.get( name, function( err1, reg1 ) {
if (!err1 && reg1 !==null && reg1.value) {
resolve(reg1.value);
return;
}
//Try to get registry on HKEY_LOCAL_MACHINE
symphonyRegistryHKLM.get( name, function( err2, reg2 ) {
if ( !err2 && reg2!==null && reg2.value) {
resolve(reg2.value);
return;
}
// Try to get registry on HKEY_LOCAL_MACHINE in case 32bit app installed on 64bit system.
// winreg does not merge keys as normally windows does.
symphonyRegistryHKLM6432.get( name, function( err3, reg3 ) {
if ( !err3 && reg3!==null && reg3.value) {
resolve(reg3.value);
} else{
reject('Cannot find PodUrl Registry. Using default url.');
}
});
});
});
});
return promise;
}