- if (flowNode.hasNode(attrName)) {
- // we assume this is a primitive
- // since ref are not yet implemented
- Node valueNode = flowNode.getNode(attrName);
- String type = valueNode.getProperty(SLC_TYPE).getString();
- String valueStr = valueNode.getProperty(SLC_VALUE)
- .getString();
- Object value = PrimitiveUtils.convert(type, valueStr);
- values.put(attrName, value);
- // Property prop = flowNode.getNode(attrName).getProperty(
- // SLC_VALUE);
- // // yes, this could be a switch... (patches welcome)
- // if (prop.getType() == PropertyType.STRING)
- // values.put(attrName, prop.getString());
- // else if (prop.getType() == PropertyType.LONG)
- // values.put(attrName, prop.getLong());
- // else if (prop.getType() == PropertyType.DOUBLE)
- // values.put(attrName, prop.getDouble());
- // else if (prop.getType() == PropertyType.BOOLEAN)
- // values.put(attrName, prop.getBoolean());
- // else
- // throw new SlcException("Unsupported value type "
- // + PropertyType.nameFromValue(prop.getType()));
- } else {
- ExecutionSpecAttribute attr = attrs.get(attrName);
- Object value = attr.getValue();
- values.put(attrName, value);
- }