Refactoring to contain list of rulenodes for PE
This commit is contained in:
parent
0b01d73ba7
commit
eb7c52974c
@ -45,7 +45,8 @@ import java.util.UUID;
|
||||
@AllArgsConstructor
|
||||
public abstract class AbstractRuleChainMetadataConstructor implements RuleChainMetadataConstructor {
|
||||
|
||||
public static final String CHECKPOINT_NODE = TbCheckpointNode.class.getName();
|
||||
public static final List<String> nodeTypes = List.of(TbCheckpointNode.class.getName());
|
||||
|
||||
private final QueueService queueService;
|
||||
|
||||
@Override
|
||||
@ -144,10 +145,10 @@ public abstract class AbstractRuleChainMetadataConstructor implements RuleChainM
|
||||
.build();
|
||||
}
|
||||
|
||||
protected List<RuleNode> updateCheckpointNodesConfiguration(TenantId tenantId, List<RuleNode> nodes) {
|
||||
protected List<RuleNode> updateQueueIdToQueueNameNodeConfiguration(TenantId tenantId, List<RuleNode> nodes) {
|
||||
List<RuleNode> result = new ArrayList<>();
|
||||
for (RuleNode node : nodes) {
|
||||
if (CHECKPOINT_NODE.equals(node.getType())) {
|
||||
if (nodeTypes.contains(node.getType())) {
|
||||
ObjectNode configuration = (ObjectNode) node.getConfiguration();
|
||||
JsonNode queueIdNode = configuration.remove("queueId");
|
||||
if (queueIdNode != null) {
|
||||
|
||||
@ -52,7 +52,7 @@ public class RuleChainMetadataConstructorV330 extends AbstractRuleChainMetadataC
|
||||
RuleChainMetadataUpdateMsg.Builder builder,
|
||||
RuleChainMetaData ruleChainMetaData) throws JsonProcessingException {
|
||||
List<RuleNode> supportedNodes = filterNodes(ruleChainMetaData.getNodes());
|
||||
supportedNodes = updateCheckpointNodesConfiguration(tenantId, supportedNodes);
|
||||
supportedNodes = updateQueueIdToQueueNameNodeConfiguration(tenantId, supportedNodes);
|
||||
|
||||
NavigableSet<Integer> removedNodeIndexes = getRemovedNodeIndexes(ruleChainMetaData.getNodes(), ruleChainMetaData.getConnections());
|
||||
List<NodeConnectionInfo> connections = filterConnections(ruleChainMetaData.getNodes(), ruleChainMetaData.getConnections(), removedNodeIndexes);
|
||||
|
||||
@ -37,7 +37,7 @@ public class RuleChainMetadataConstructorV333 extends AbstractRuleChainMetadataC
|
||||
protected void constructRuleChainMetadataUpdatedMsg(TenantId tenantId,
|
||||
RuleChainMetadataUpdateMsg.Builder builder,
|
||||
RuleChainMetaData ruleChainMetaData) throws JsonProcessingException {
|
||||
List<RuleNode> nodes = updateCheckpointNodesConfiguration(tenantId, ruleChainMetaData.getNodes());
|
||||
List<RuleNode> nodes = updateQueueIdToQueueNameNodeConfiguration(tenantId, ruleChainMetaData.getNodes());
|
||||
builder.addAllNodes(constructNodes(nodes))
|
||||
.addAllConnections(constructConnections(ruleChainMetaData.getConnections()))
|
||||
.addAllRuleChainConnections(constructRuleChainConnections(ruleChainMetaData.getRuleChainConnections(), new TreeSet<>()));
|
||||
|
||||
@ -217,7 +217,7 @@ public class RuleChainMsgConstructorTest {
|
||||
private void assertCheckpointRuleNodeConfiguration(List<RuleNodeProto> nodesList,
|
||||
String expectedConfiguration) {
|
||||
Optional<RuleNodeProto> checkpointRuleNodeOpt = nodesList.stream()
|
||||
.filter(rn -> RuleChainMetadataConstructorV333.CHECKPOINT_NODE.equals(rn.getType()))
|
||||
.filter(rn -> "org.thingsboard.rule.engine.flow.TbCheckpointNode".equals(rn.getType()))
|
||||
.findFirst();
|
||||
Assert.assertTrue(checkpointRuleNodeOpt.isPresent());
|
||||
RuleNodeProto checkpointRuleNode = checkpointRuleNodeOpt.get();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user