Commit 08c6a80d2a5709ab250043d2d67f2ada0d0fc441

Authored by ShvaykaD
Committed by Andrew Shvayka
1 parent 94c5dfdf

fixed additional info parsing for RPC entity

@@ -244,7 +244,7 @@ class DeviceActorMessageProcessor extends AbstractContextAwareMsgProcessor { @@ -244,7 +244,7 @@ class DeviceActorMessageProcessor extends AbstractContextAwareMsgProcessor {
244 rpc.setExpirationTime(request.getExpirationTime()); 244 rpc.setExpirationTime(request.getExpirationTime());
245 rpc.setRequest(JacksonUtil.valueToTree(request)); 245 rpc.setRequest(JacksonUtil.valueToTree(request));
246 rpc.setStatus(status); 246 rpc.setStatus(status);
247 - rpc.setAdditionalInfo(JacksonUtil.valueToTree(request.getAdditionalInfo())); 247 + rpc.setAdditionalInfo(JacksonUtil.toJsonNode(request.getAdditionalInfo()));
248 return systemContext.getTbRpcService().save(tenantId, rpc); 248 return systemContext.getTbRpcService().save(tenantId, rpc);
249 } 249 }
250 250
@@ -95,15 +95,8 @@ public class TbSendRPCRequestNode implements TbNode { @@ -95,15 +95,8 @@ public class TbSendRPCRequestNode implements TbNode {
95 tmp = msg.getMetaData().getValue(DataConstants.RETRIES); 95 tmp = msg.getMetaData().getValue(DataConstants.RETRIES);
96 Integer retries = !StringUtils.isEmpty(tmp) ? Integer.parseInt(tmp) : null; 96 Integer retries = !StringUtils.isEmpty(tmp) ? Integer.parseInt(tmp) : null;
97 97
98 - String params;  
99 - JsonElement paramsEl = json.get("params");  
100 - if (paramsEl.isJsonPrimitive()) {  
101 - params = paramsEl.getAsString();  
102 - } else {  
103 - params = gson.toJson(paramsEl);  
104 - }  
105 -  
106 - String additionalInfo = gson.toJson(json.get(DataConstants.ADDITIONAL_INFO)); 98 + String params = parseJsonData(json.get("params"));
  99 + String additionalInfo = parseJsonData(json.get(DataConstants.ADDITIONAL_INFO));
107 100
108 RuleEngineDeviceRpcRequest request = RuleEngineDeviceRpcRequest.builder() 101 RuleEngineDeviceRpcRequest request = RuleEngineDeviceRpcRequest.builder()
109 .oneway(oneway) 102 .oneway(oneway)
@@ -144,4 +137,8 @@ public class TbSendRPCRequestNode implements TbNode { @@ -144,4 +137,8 @@ public class TbSendRPCRequestNode implements TbNode {
144 return gson.toJson(json); 137 return gson.toJson(json);
145 } 138 }
146 139
  140 + private String parseJsonData(JsonElement paramsEl) {
  141 + return paramsEl.isJsonPrimitive() ? paramsEl.getAsString() : gson.toJson(paramsEl);
  142 + }
  143 +
147 } 144 }