Add propertySelect to switch node

This commit is contained in:
Nick O'Leary
2015-12-30 23:09:35 +00:00
parent 1f848b205b
commit fe4dae8518
5 changed files with 138 additions and 32 deletions

View File

@@ -149,6 +149,26 @@ function setMessageProperty(msg,prop,value,createMissing) {
}, msg);
}
function evaluateNodeProperty(value, type, node, msg) {
if (type === 'str') {
return ""+value;
} else if (type === 'num') {
return Number(value);
} else if (type === 'json') {
return JSON.parse(value);
} else if (type === 're') {
return new RegExp(value);
} else if (type === 'msg' && msg) {
return getMessageProperty(msg,value);
} else if (type === 'flow' && node) {
return node.context().flow.get(value);
} else if (type === 'global' && node) {
return node.context().global.get(value);
}
return value;
}
module.exports = {
ensureString: ensureString,
ensureBuffer: ensureBuffer,
@@ -156,5 +176,6 @@ module.exports = {
compareObjects: compareObjects,
generateId: generateId,
getMessageProperty: getMessageProperty,
setMessageProperty: setMessageProperty
setMessageProperty: setMessageProperty,
evaluateNodeProperty: evaluateNodeProperty
};