diff --git a/application/src/test/java/org/thingsboard/server/controller/BaseDeviceProfileControllerTest.java b/application/src/test/java/org/thingsboard/server/controller/BaseDeviceProfileControllerTest.java index 937283b31c..ea5a6dbf86 100644 --- a/application/src/test/java/org/thingsboard/server/controller/BaseDeviceProfileControllerTest.java +++ b/application/src/test/java/org/thingsboard/server/controller/BaseDeviceProfileControllerTest.java @@ -779,7 +779,7 @@ public abstract class BaseDeviceProfileControllerTest extends AbstractController "\n" + "message RpcRequestMsg {\n" + " optional int32 requestId = 2;\n" + - " repeated string params = 3;\n" + + " optional string params = 3;\n" + " \n" + "}", "[Transport Configuration] invalid rpc request proto schema provided! RpcRequestMsg message should always contains 3 fields: method, requestId and params!"); } @@ -793,7 +793,7 @@ public abstract class BaseDeviceProfileControllerTest extends AbstractController "message RpcRequestMsg {\n" + " optional string methodName = 1;\n" + " optional int32 requestId = 2;\n" + - " repeated string params = 3;\n" + + " optional string params = 3;\n" + " \n" + "}", "[Transport Configuration] invalid rpc request proto schema provided! Failed to get field descriptor for field: method!"); } @@ -807,7 +807,7 @@ public abstract class BaseDeviceProfileControllerTest extends AbstractController "message RpcRequestMsg {\n" + " optional string method = 1;\n" + " optional int32 requestIdentifier = 2;\n" + - " repeated string params = 3;\n" + + " optional string params = 3;\n" + " \n" + "}", "[Transport Configuration] invalid rpc request proto schema provided! Failed to get field descriptor for field: requestId!"); } @@ -821,7 +821,7 @@ public abstract class BaseDeviceProfileControllerTest extends AbstractController "message RpcRequestMsg {\n" + " optional string method = 1;\n" + " optional int32 requestId = 2;\n" + - " repeated string parameters = 3;\n" + + " optional string parameters = 3;\n" + " \n" + "}", "[Transport Configuration] invalid rpc request proto schema provided! Failed to get field descriptor for field: params!"); } diff --git a/application/src/test/java/org/thingsboard/server/transport/coap/rpc/AbstractCoapServerSideRpcProtoIntegrationTest.java b/application/src/test/java/org/thingsboard/server/transport/coap/rpc/AbstractCoapServerSideRpcProtoIntegrationTest.java index 544090d7c8..ad5cf78bc3 100644 --- a/application/src/test/java/org/thingsboard/server/transport/coap/rpc/AbstractCoapServerSideRpcProtoIntegrationTest.java +++ b/application/src/test/java/org/thingsboard/server/transport/coap/rpc/AbstractCoapServerSideRpcProtoIntegrationTest.java @@ -58,13 +58,13 @@ public abstract class AbstractCoapServerSideRpcProtoIntegrationTest extends Abst "package rpc;\n" + "\n" + "message RpcRequestMsg {\n" + - " string method = 1;\n" + - " int32 requestId = 2;\n" + + " optional string method = 1;\n" + + " optional int32 requestId = 2;\n" + " Params params = 3;\n" + "\n" + " message Params {\n" + - " string pin = 1;\n" + - " int32 value = 2;\n" + + " optional string pin = 1;\n" + + " optional int32 value = 2;\n" + " }\n" + "}"; diff --git a/application/src/test/java/org/thingsboard/server/transport/mqtt/rpc/AbstractMqttServerSideRpcProtoIntegrationTest.java b/application/src/test/java/org/thingsboard/server/transport/mqtt/rpc/AbstractMqttServerSideRpcProtoIntegrationTest.java index eea800fb0e..cf9ae499c4 100644 --- a/application/src/test/java/org/thingsboard/server/transport/mqtt/rpc/AbstractMqttServerSideRpcProtoIntegrationTest.java +++ b/application/src/test/java/org/thingsboard/server/transport/mqtt/rpc/AbstractMqttServerSideRpcProtoIntegrationTest.java @@ -56,13 +56,13 @@ public abstract class AbstractMqttServerSideRpcProtoIntegrationTest extends Abst "package rpc;\n" + "\n" + "message RpcRequestMsg {\n" + - " string method = 1;\n" + - " int32 requestId = 2;\n" + + " optional string method = 1;\n" + + " optional int32 requestId = 2;\n" + " Params params = 3;\n" + "\n" + " message Params {\n" + - " string pin = 1;\n" + - " int32 value = 2;\n" + + " optional string pin = 1;\n" + + " optional int32 value = 2;\n" + " }\n" + "}"; diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/device/profile/ProtoTransportPayloadConfiguration.java b/common/data/src/main/java/org/thingsboard/server/common/data/device/profile/ProtoTransportPayloadConfiguration.java index aed3d480ef..d3836a35a0 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/device/profile/ProtoTransportPayloadConfiguration.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/device/profile/ProtoTransportPayloadConfiguration.java @@ -83,7 +83,7 @@ public class ProtoTransportPayloadConfiguration implements TransportPayloadTypeC "package rpc;\n" + "\n" + "message RpcResponseMsg {\n" + - " string payload = 1;\n" + + " optional string payload = 1;\n" + "}"; } } @@ -96,9 +96,9 @@ public class ProtoTransportPayloadConfiguration implements TransportPayloadTypeC "package rpc;\n" + "\n" + "message RpcRequestMsg {\n" + - " string method = 1;\n" + - " int32 requestId = 2;\n" + - " string params = 3;\n" + + " optional string method = 1;\n" + + " optional int32 requestId = 2;\n" + + " optional string params = 3;\n" + "}"; } } diff --git a/common/transport/coap/src/main/java/org/thingsboard/server/transport/coap/adaptors/ProtoCoapAdaptor.java b/common/transport/coap/src/main/java/org/thingsboard/server/transport/coap/adaptors/ProtoCoapAdaptor.java index 330c4cc579..20e72fb023 100644 --- a/common/transport/coap/src/main/java/org/thingsboard/server/transport/coap/adaptors/ProtoCoapAdaptor.java +++ b/common/transport/coap/src/main/java/org/thingsboard/server/transport/coap/adaptors/ProtoCoapAdaptor.java @@ -16,7 +16,6 @@ package org.thingsboard.server.transport.coap.adaptors; import com.google.gson.JsonElement; -import com.google.gson.JsonObject; import com.google.gson.JsonParser; import com.google.protobuf.Descriptors; import com.google.protobuf.DynamicMessage; diff --git a/common/transport/transport-api/src/main/java/org/thingsboard/server/common/transport/adaptor/ProtoConverter.java b/common/transport/transport-api/src/main/java/org/thingsboard/server/common/transport/adaptor/ProtoConverter.java index 620728cda4..39d4db069e 100644 --- a/common/transport/transport-api/src/main/java/org/thingsboard/server/common/transport/adaptor/ProtoConverter.java +++ b/common/transport/transport-api/src/main/java/org/thingsboard/server/common/transport/adaptor/ProtoConverter.java @@ -175,7 +175,7 @@ public class ProtoConverter { } public static byte[] convertToRpcRequest(TransportProtos.ToDeviceRpcRequestMsg toDeviceRpcRequestMsg, DynamicMessage.Builder rpcRequestDynamicMessageBuilder) throws AdaptorException { - rpcRequestDynamicMessageBuilder.clear(); + rpcRequestDynamicMessageBuilder = rpcRequestDynamicMessageBuilder.getDefaultInstanceForType().newBuilderForType(); JsonObject rpcRequestJson = new JsonObject(); rpcRequestJson.addProperty("method", toDeviceRpcRequestMsg.getMethodName()); rpcRequestJson.addProperty("requestId", toDeviceRpcRequestMsg.getRequestId());