Rule chain refactoring
This commit is contained in:
parent
1a084a80f8
commit
31a1e310f1
@ -135,15 +135,15 @@ public class DashboardInfo extends SearchTextBased<DashboardId> implements HasNa
|
||||
if (this.assignedEdges == null) {
|
||||
this.assignedEdges = new HashSet<>();
|
||||
}
|
||||
return EdgeUtils.addAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.addAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
|
||||
public boolean updateAssignedEdge(Edge edge) {
|
||||
return EdgeUtils.updateAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.updateAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
|
||||
public boolean removeAssignedEdge(Edge edge) {
|
||||
return EdgeUtils.removeAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.removeAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
package org.thingsboard.server.common.data;
|
||||
|
||||
import org.thingsboard.server.common.data.edge.Edge;
|
||||
import org.thingsboard.server.common.data.id.EdgeId;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
public final class EdgeUtils {
|
||||
|
||||
private EdgeUtils() {}
|
||||
private EdgeUtils() {
|
||||
}
|
||||
|
||||
public static boolean isAssignedToEdge(Set<ShortEdgeInfo> assignedEdges, EdgeId edgeId) {
|
||||
return assignedEdges != null && assignedEdges.contains(new ShortEdgeInfo(edgeId, null, null));
|
||||
@ -24,8 +24,7 @@ public final class EdgeUtils {
|
||||
return null;
|
||||
}
|
||||
|
||||
public static boolean addAssignedEdge(Set<ShortEdgeInfo> assignedEdges, Edge edge) {
|
||||
ShortEdgeInfo edgeInfo = edge.toShortEdgeInfo();
|
||||
public static boolean addAssignedEdge(Set<ShortEdgeInfo> assignedEdges, ShortEdgeInfo edgeInfo) {
|
||||
if (assignedEdges != null && assignedEdges.contains(edgeInfo)) {
|
||||
return false;
|
||||
} else {
|
||||
@ -38,8 +37,7 @@ public final class EdgeUtils {
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean updateAssignedEdge(Set<ShortEdgeInfo> assignedEdges, Edge edge) {
|
||||
ShortEdgeInfo edgeInfo = edge.toShortEdgeInfo();
|
||||
public static boolean updateAssignedEdge(Set<ShortEdgeInfo> assignedEdges, ShortEdgeInfo edgeInfo) {
|
||||
if (assignedEdges != null && assignedEdges.contains(edgeInfo)) {
|
||||
assignedEdges.remove(edgeInfo);
|
||||
assignedEdges.add(edgeInfo);
|
||||
@ -49,8 +47,7 @@ public final class EdgeUtils {
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean removeAssignedEdge(Set<ShortEdgeInfo> assignedEdges, Edge edge) {
|
||||
ShortEdgeInfo edgeInfo = edge.toShortEdgeInfo();
|
||||
public static boolean removeAssignedEdge(Set<ShortEdgeInfo> assignedEdges, ShortEdgeInfo edgeInfo) {
|
||||
if (assignedEdges != null && assignedEdges.contains(edgeInfo)) {
|
||||
assignedEdges.remove(edgeInfo);
|
||||
return true;
|
||||
|
||||
@ -104,14 +104,14 @@ public class RuleChain extends SearchTextBasedWithAdditionalInfo<RuleChainId> im
|
||||
if (this.assignedEdges == null) {
|
||||
this.assignedEdges = new HashSet<>();
|
||||
}
|
||||
return EdgeUtils.addAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.addAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
|
||||
public boolean updateAssignedEdge(Edge edge) {
|
||||
return EdgeUtils.updateAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.updateAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
|
||||
public boolean removeAssignedEdge(Edge edge) {
|
||||
return EdgeUtils.removeAssignedEdge(this.assignedEdges, edge);
|
||||
return EdgeUtils.removeAssignedEdge(this.assignedEdges, edge.toShortEdgeInfo());
|
||||
}
|
||||
}
|
||||
|
||||
@ -46,6 +46,7 @@ import org.thingsboard.server.common.data.rule.RuleChainMetaData;
|
||||
import org.thingsboard.server.common.data.rule.RuleChainType;
|
||||
import org.thingsboard.server.common.data.rule.RuleNode;
|
||||
import org.thingsboard.server.dao.edge.EdgeDao;
|
||||
import org.thingsboard.server.dao.edge.EdgeService;
|
||||
import org.thingsboard.server.dao.entity.AbstractEntityService;
|
||||
import org.thingsboard.server.dao.exception.DataValidationException;
|
||||
import org.thingsboard.server.dao.service.DataValidator;
|
||||
@ -78,7 +79,7 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
|
||||
private TenantDao tenantDao;
|
||||
|
||||
@Autowired
|
||||
private EdgeDao edgeDao;
|
||||
private EdgeService edgeService;
|
||||
|
||||
@Override
|
||||
public RuleChain saveRuleChain(RuleChain ruleChain) {
|
||||
@ -395,7 +396,7 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
|
||||
@Override
|
||||
public RuleChain assignRuleChainToEdge(TenantId tenantId, RuleChainId ruleChainId, EdgeId edgeId) {
|
||||
RuleChain ruleChain = findRuleChainById(tenantId, ruleChainId);
|
||||
Edge edge = edgeDao.findById(tenantId, edgeId.getId());
|
||||
Edge edge = edgeService.findEdgeById(tenantId, edgeId);
|
||||
if (edge == null) {
|
||||
throw new DataValidationException("Can't assign ruleChain to non-existent edge!");
|
||||
}
|
||||
@ -417,7 +418,7 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
|
||||
@Override
|
||||
public RuleChain unassignRuleChainFromEdge(TenantId tenantId, RuleChainId ruleChainId, EdgeId edgeId, boolean remove) {
|
||||
RuleChain ruleChain = findRuleChainById(tenantId, ruleChainId);
|
||||
Edge edge = edgeDao.findById(tenantId, edgeId.getId());
|
||||
Edge edge = edgeService.findEdgeById(tenantId, edgeId);
|
||||
if (edge == null) {
|
||||
throw new DataValidationException("Can't unassign rule chain from non-existent edge!");
|
||||
}
|
||||
@ -441,7 +442,7 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
|
||||
public void unassignEdgeRuleChains(TenantId tenantId, EdgeId edgeId) {
|
||||
log.trace("Executing unassignEdgeRuleChains, edgeId [{}]", edgeId);
|
||||
Validator.validateId(edgeId, "Incorrect edgeId " + edgeId);
|
||||
Edge edge = edgeDao.findById(tenantId, edgeId.getId());
|
||||
Edge edge = edgeService.findEdgeById(tenantId, edgeId);
|
||||
if (edge == null) {
|
||||
throw new DataValidationException("Can't unassign ruleChains from non-existent edge!");
|
||||
}
|
||||
@ -452,7 +453,7 @@ public class BaseRuleChainService extends AbstractEntityService implements RuleC
|
||||
public void updateEdgeRuleChains(TenantId tenantId, EdgeId edgeId) {
|
||||
log.trace("Executing updateEdgeRuleChains, edgeId [{}]", edgeId);
|
||||
Validator.validateId(edgeId, "Incorrect edgeId " + edgeId);
|
||||
Edge edge = edgeDao.findById(tenantId, edgeId.getId());
|
||||
Edge edge = edgeService.findEdgeById(tenantId, edgeId);
|
||||
if (edge == null) {
|
||||
throw new DataValidationException("Can't update ruleChains for non-existent edge!");
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user