Commit bd42cfc81f4c8641ad7b41f6e24e95f6d2da80f0

Authored by zbeacon
Committed by Andrew Shvayka
1 parent 52d1b756

Changes according to comment

@@ -423,6 +423,25 @@ public class RuleChainController extends BaseController { @@ -423,6 +423,25 @@ public class RuleChainController extends BaseController {
423 } 423 }
424 424
425 private String msgToOutput(TbMsg msg) throws Exception { 425 private String msgToOutput(TbMsg msg) throws Exception {
  426 + JsonNode resultNode = convertMsgToOut(msg);
  427 + return objectMapper.writeValueAsString(resultNode);
  428 + }
  429 +
  430 + private String msgToOutput(List<TbMsg> msgs) throws Exception {
  431 + JsonNode resultNode;
  432 + if (msgs.size() > 1) {
  433 + resultNode = objectMapper.createArrayNode();
  434 + for (TbMsg msg : msgs) {
  435 + JsonNode convertedData = convertMsgToOut(msg);
  436 + ((ArrayNode) resultNode).add(convertedData);
  437 + }
  438 + } else {
  439 + resultNode = convertMsgToOut(msgs.get(0));
  440 + }
  441 + return objectMapper.writeValueAsString(resultNode);
  442 + }
  443 +
  444 + private JsonNode convertMsgToOut(TbMsg msg) throws Exception{
426 ObjectNode msgData = objectMapper.createObjectNode(); 445 ObjectNode msgData = objectMapper.createObjectNode();
427 if (!StringUtils.isEmpty(msg.getData())) { 446 if (!StringUtils.isEmpty(msg.getData())) {
428 msgData.set("msg", objectMapper.readTree(msg.getData())); 447 msgData.set("msg", objectMapper.readTree(msg.getData()));
@@ -430,25 +449,8 @@ public class RuleChainController extends BaseController { @@ -430,25 +449,8 @@ public class RuleChainController extends BaseController {
430 Map<String, String> metadata = msg.getMetaData().getData(); 449 Map<String, String> metadata = msg.getMetaData().getData();
431 msgData.set("metadata", objectMapper.valueToTree(metadata)); 450 msgData.set("metadata", objectMapper.valueToTree(metadata));
432 msgData.put("msgType", msg.getType()); 451 msgData.put("msgType", msg.getType());
433 - return objectMapper.writeValueAsString(msgData); 452 + return msgData;
434 } 453 }
435 454
436 - private String msgToOutput(List<TbMsg> msgs) throws Exception {  
437 - ArrayNode resultNode = objectMapper.createArrayNode();  
438 - for (TbMsg msg:msgs) {  
439 - ObjectNode msgData = objectMapper.createObjectNode();  
440 - if (!StringUtils.isEmpty(msg.getData())) {  
441 - msgData.set("msg", objectMapper.readTree(msg.getData()));  
442 - }  
443 - Map<String, String> metadata = msg.getMetaData().getData();  
444 - msgData.set("metadata", objectMapper.valueToTree(metadata));  
445 - msgData.put("msgType", msg.getType());  
446 - resultNode.add(msgData);  
447 - }  
448 - if (resultNode.size() == 1) {  
449 - return objectMapper.writeValueAsString(resultNode.get(0));  
450 - }  
451 - return objectMapper.writeValueAsString(resultNode);  
452 - }  
453 455
454 } 456 }