retval.setInputs(getIOData(json.get("inputs").isArray()));
retval.setOutputs(getIOData(json.get("outputs").isArray()));
Map<String, String> metaData = new HashMap<String, String>();
JSONObject jsonMetaData = json.get("metaData") == null ? null : json.get("metaData").isObject();
if (jsonMetaData != null) {
for (String key : jsonMetaData.keySet()) {
metaData.put(key, jsonMetaData.get(key).isString().stringValue());
}
}
retval.setMetaData(metaData);
if (json.get("packageName") != null && json.get("packageName").isString() != null) {