Edge: added singleton mode and configuration version fields for rule node proto
This commit is contained in:
parent
cc441b4148
commit
7f649e33c3
@ -97,6 +97,8 @@ public abstract class AbstractRuleChainMetadataConstructor implements RuleChainM
|
||||
.setDebugMode(node.isDebugMode())
|
||||
.setConfiguration(JacksonUtil.OBJECT_MAPPER.writeValueAsString(node.getConfiguration()))
|
||||
.setAdditionalInfo(JacksonUtil.OBJECT_MAPPER.writeValueAsString(node.getAdditionalInfo()))
|
||||
.setSingletonMode(node.isSingletonMode())
|
||||
.setConfigurationVersion(node.getConfigurationVersion())
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
@ -32,6 +32,7 @@ import org.thingsboard.server.dao.service.DaoSqlTest;
|
||||
import org.thingsboard.server.gen.edge.v1.RuleChainMetadataRequestMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.RuleChainMetadataUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.RuleChainUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.RuleNodeProto;
|
||||
import org.thingsboard.server.gen.edge.v1.UpdateMsgType;
|
||||
import org.thingsboard.server.gen.edge.v1.UplinkMsg;
|
||||
|
||||
@ -46,6 +47,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
|
||||
@DaoSqlTest
|
||||
public class RuleChainEdgeTest extends AbstractEdgeTest {
|
||||
|
||||
private static final int CONFIGURATION_VERSION = 5;
|
||||
|
||||
@Test
|
||||
public void testRuleChains() throws Exception {
|
||||
// create rule chain
|
||||
@ -138,6 +141,10 @@ public class RuleChainEdgeTest extends AbstractEdgeTest {
|
||||
RuleChainId receivedRuleChainId =
|
||||
new RuleChainId(new UUID(ruleChainMetadataUpdateMsg.getRuleChainIdMSB(), ruleChainMetadataUpdateMsg.getRuleChainIdLSB()));
|
||||
Assert.assertEquals(ruleChainId, receivedRuleChainId);
|
||||
|
||||
for (RuleNodeProto ruleNodeProto : ruleChainMetadataUpdateMsg.getNodesList()) {
|
||||
Assert.assertEquals(CONFIGURATION_VERSION, ruleNodeProto.getConfigurationVersion());
|
||||
}
|
||||
}
|
||||
|
||||
private void createRuleChainMetadata(RuleChain ruleChain) {
|
||||
@ -147,7 +154,7 @@ public class RuleChainEdgeTest extends AbstractEdgeTest {
|
||||
RuleNode ruleNode1 = new RuleNode();
|
||||
ruleNode1.setName("name1");
|
||||
ruleNode1.setType(org.thingsboard.rule.engine.metadata.TbGetAttributesNode.class.getName());
|
||||
ruleNode1.setConfigurationVersion(TbGetAttributesNode.class.getAnnotation(org.thingsboard.rule.engine.api.RuleNode.class).version());
|
||||
ruleNode1.setConfigurationVersion(CONFIGURATION_VERSION);
|
||||
TbGetAttributesNodeConfiguration configuration = new TbGetAttributesNodeConfiguration();
|
||||
configuration.setFetchTo(TbMsgSource.METADATA);
|
||||
configuration.setServerAttributeNames(Collections.singletonList("serverAttributeKey2"));
|
||||
@ -156,13 +163,13 @@ public class RuleChainEdgeTest extends AbstractEdgeTest {
|
||||
RuleNode ruleNode2 = new RuleNode();
|
||||
ruleNode2.setName("name2");
|
||||
ruleNode2.setType(org.thingsboard.rule.engine.metadata.TbGetAttributesNode.class.getName());
|
||||
ruleNode2.setConfigurationVersion(TbGetAttributesNode.class.getAnnotation(org.thingsboard.rule.engine.api.RuleNode.class).version());
|
||||
ruleNode2.setConfigurationVersion(CONFIGURATION_VERSION);
|
||||
ruleNode2.setConfiguration(JacksonUtil.valueToTree(configuration));
|
||||
|
||||
RuleNode ruleNode3 = new RuleNode();
|
||||
ruleNode3.setName("name3");
|
||||
ruleNode3.setType(org.thingsboard.rule.engine.metadata.TbGetAttributesNode.class.getName());
|
||||
ruleNode3.setConfigurationVersion(TbGetAttributesNode.class.getAnnotation(org.thingsboard.rule.engine.api.RuleNode.class).version());
|
||||
ruleNode3.setConfigurationVersion(CONFIGURATION_VERSION);
|
||||
ruleNode3.setConfiguration(JacksonUtil.valueToTree(configuration));
|
||||
|
||||
List<RuleNode> ruleNodes = new ArrayList<>();
|
||||
|
||||
@ -163,6 +163,8 @@ message RuleNodeProto {
|
||||
bool debugMode = 5;
|
||||
string configuration = 6;
|
||||
string additionalInfo = 7;
|
||||
bool singletonMode = 8;
|
||||
int32 configurationVersion = 9;
|
||||
}
|
||||
|
||||
message NodeConnectionInfoProto {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user