Browse Source

Changes according to comment

pull/4287/head
zbeacon 5 years ago
committed by Andrew Shvayka
parent
commit
bd42cfc81f
  1. 38
      application/src/main/java/org/thingsboard/server/controller/RuleChainController.java

38
application/src/main/java/org/thingsboard/server/controller/RuleChainController.java

@ -423,6 +423,25 @@ public class RuleChainController extends BaseController {
}
private String msgToOutput(TbMsg msg) throws Exception {
JsonNode resultNode = convertMsgToOut(msg);
return objectMapper.writeValueAsString(resultNode);
}
private String msgToOutput(List<TbMsg> msgs) throws Exception {
JsonNode resultNode;
if (msgs.size() > 1) {
resultNode = objectMapper.createArrayNode();
for (TbMsg msg : msgs) {
JsonNode convertedData = convertMsgToOut(msg);
((ArrayNode) resultNode).add(convertedData);
}
} else {
resultNode = convertMsgToOut(msgs.get(0));
}
return objectMapper.writeValueAsString(resultNode);
}
private JsonNode convertMsgToOut(TbMsg msg) throws Exception{
ObjectNode msgData = objectMapper.createObjectNode();
if (!StringUtils.isEmpty(msg.getData())) {
msgData.set("msg", objectMapper.readTree(msg.getData()));
@ -430,25 +449,8 @@ public class RuleChainController extends BaseController {
Map<String, String> metadata = msg.getMetaData().getData();
msgData.set("metadata", objectMapper.valueToTree(metadata));
msgData.put("msgType", msg.getType());
return objectMapper.writeValueAsString(msgData);
return msgData;
}
private String msgToOutput(List<TbMsg> msgs) throws Exception {
ArrayNode resultNode = objectMapper.createArrayNode();
for (TbMsg msg:msgs) {
ObjectNode msgData = objectMapper.createObjectNode();
if (!StringUtils.isEmpty(msg.getData())) {
msgData.set("msg", objectMapper.readTree(msg.getData()));
}
Map<String, String> metadata = msg.getMetaData().getData();
msgData.set("metadata", objectMapper.valueToTree(metadata));
msgData.put("msgType", msg.getType());
resultNode.add(msgData);
}
if (resultNode.size() == 1) {
return objectMapper.writeValueAsString(resultNode.get(0));
}
return objectMapper.writeValueAsString(resultNode);
}
}

Loading…
Cancel
Save