Minor refactoring: use edgeVersion instead of passing boolean
This commit is contained in:
parent
188a21c2c1
commit
561e825eda
@ -37,7 +37,6 @@ import org.thingsboard.server.gen.edge.v1.DownlinkMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.transport.TransportProtos;
|
||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -52,7 +51,7 @@ public class AlarmEdgeProcessor extends BaseAlarmProcessor {
|
||||
log.trace("[{}] processAlarmMsgFromEdge [{}]", tenantId, alarmUpdateMsg);
|
||||
try {
|
||||
edgeSynchronizationManager.getEdgeId().set(edgeId);
|
||||
return processAlarmMsg(tenantId, alarmUpdateMsg, EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
return processAlarmMsg(tenantId, alarmUpdateMsg, edgeVersion);
|
||||
} finally {
|
||||
edgeSynchronizationManager.getEdgeId().remove();
|
||||
}
|
||||
|
||||
@ -47,9 +47,10 @@ import java.util.UUID;
|
||||
@Slf4j
|
||||
public abstract class BaseAlarmProcessor extends BaseEdgeProcessor {
|
||||
|
||||
public ListenableFuture<Void> processAlarmMsg(TenantId tenantId, AlarmUpdateMsg alarmUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
public ListenableFuture<Void> processAlarmMsg(TenantId tenantId, AlarmUpdateMsg alarmUpdateMsg, EdgeVersion edgeVersion) {
|
||||
log.trace("[{}] processAlarmMsg [{}]", tenantId, alarmUpdateMsg);
|
||||
AlarmId alarmId = new AlarmId(new UUID(alarmUpdateMsg.getIdMSB(), alarmUpdateMsg.getIdLSB()));
|
||||
boolean isEdgeVersionOlderThan_3_6_2 = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion);
|
||||
Alarm alarm = isEdgeVersionOlderThan_3_6_2 ? createDeprecatedAlarm(tenantId, alarmUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(alarmUpdateMsg.getEntity(), Alarm.class);
|
||||
if (alarm == null) {
|
||||
|
||||
@ -84,8 +84,7 @@ public class AssetEdgeProcessor extends BaseAssetProcessor {
|
||||
}
|
||||
|
||||
private void saveOrUpdateAsset(TenantId tenantId, AssetId assetId, AssetUpdateMsg assetUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateAsset(tenantId, assetId, assetUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateAsset(tenantId, assetId, assetUpdateMsg, edgeVersion);
|
||||
Boolean created = resultPair.getFirst();
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), assetId);
|
||||
@ -148,8 +147,8 @@ public class AssetEdgeProcessor extends BaseAssetProcessor {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, Asset asset, AssetUpdateMsg assetUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
CustomerId customerUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, Asset asset, AssetUpdateMsg assetUpdateMsg, EdgeVersion edgeVersion) {
|
||||
CustomerId customerUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetCustomerId(assetUpdateMsg.getCustomerIdMSB(), assetUpdateMsg.getCustomerIdLSB())
|
||||
: asset.getCustomerId() != null ? asset.getCustomerId() : customerId;
|
||||
asset.setCustomerId(customerUUID);
|
||||
|
||||
@ -74,8 +74,7 @@ public class AssetProfileEdgeProcessor extends BaseAssetProfileProcessor {
|
||||
}
|
||||
|
||||
private void saveOrUpdateAssetProfile(TenantId tenantId, AssetProfileId assetProfileId, AssetProfileUpdateMsg assetProfileUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateAssetProfile(tenantId, assetProfileId, assetProfileUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateAssetProfile(tenantId, assetProfileId, assetProfileUpdateMsg, edgeVersion);
|
||||
Boolean created = resultPair.getFirst();
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), assetProfileId);
|
||||
@ -134,16 +133,16 @@ public class AssetProfileEdgeProcessor extends BaseAssetProfileProcessor {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setDefaultEdgeRuleChainId(AssetProfile assetProfile, RuleChainId ruleChainId, AssetProfileUpdateMsg assetProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
UUID defaultEdgeRuleChainUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setDefaultEdgeRuleChainId(AssetProfile assetProfile, RuleChainId ruleChainId, AssetProfileUpdateMsg assetProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
UUID defaultEdgeRuleChainUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetUUID(assetProfileUpdateMsg.getDefaultRuleChainIdMSB(), assetProfileUpdateMsg.getDefaultRuleChainIdLSB())
|
||||
: ruleChainId != null ? ruleChainId.getId() : null;
|
||||
assetProfile.setDefaultEdgeRuleChainId(defaultEdgeRuleChainUUID != null ? new RuleChainId(defaultEdgeRuleChainUUID) : null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, AssetProfile assetProfile, AssetProfileUpdateMsg assetProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
UUID defaultDashboardUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, AssetProfile assetProfile, AssetProfileUpdateMsg assetProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
UUID defaultDashboardUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetUUID(assetProfileUpdateMsg.getDefaultDashboardIdMSB(), assetProfileUpdateMsg.getDefaultDashboardIdLSB())
|
||||
: assetProfile.getDefaultDashboardId() != null ? assetProfile.getDefaultDashboardId().getId() : (dashboardId != null ? dashboardId.getId() : null);
|
||||
assetProfile.setDefaultDashboardId(defaultDashboardUUID != null ? new DashboardId(defaultDashboardUUID) : null);
|
||||
|
||||
@ -26,19 +26,21 @@ import org.thingsboard.server.common.data.id.AssetProfileId;
|
||||
import org.thingsboard.server.common.data.id.CustomerId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.gen.edge.v1.AssetUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseAssetProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateAsset(TenantId tenantId, AssetId assetId, AssetUpdateMsg assetUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateAsset(TenantId tenantId, AssetId assetId, AssetUpdateMsg assetUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
boolean assetNameUpdated = false;
|
||||
assetCreationLock.lock();
|
||||
try {
|
||||
Asset asset = isEdgeVersionOlderThan_3_6_2
|
||||
Asset asset = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createAsset(tenantId, assetId, assetUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(assetUpdateMsg.getEntity(), Asset.class);
|
||||
if (asset == null) {
|
||||
@ -60,7 +62,7 @@ public abstract class BaseAssetProcessor extends BaseEdgeProcessor {
|
||||
assetNameUpdated = true;
|
||||
}
|
||||
asset.setName(assetName);
|
||||
setCustomerId(tenantId, created ? null : assetById.getCustomerId(), asset, assetUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setCustomerId(tenantId, created ? null : assetById.getCustomerId(), asset, assetUpdateMsg, edgeVersion);
|
||||
|
||||
assetValidator.validate(asset, Asset::getTenantId);
|
||||
if (created) {
|
||||
@ -94,5 +96,5 @@ public abstract class BaseAssetProcessor extends BaseEdgeProcessor {
|
||||
return asset;
|
||||
}
|
||||
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, Asset asset, AssetUpdateMsg assetUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, Asset asset, AssetUpdateMsg assetUpdateMsg, EdgeVersion edgeVersion);
|
||||
}
|
||||
|
||||
@ -26,19 +26,21 @@ import org.thingsboard.server.common.data.id.DashboardId;
|
||||
import org.thingsboard.server.common.data.id.RuleChainId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.gen.edge.v1.AssetProfileUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseAssetProfileProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateAssetProfile(TenantId tenantId, AssetProfileId assetProfileId, AssetProfileUpdateMsg assetProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateAssetProfile(TenantId tenantId, AssetProfileId assetProfileId, AssetProfileUpdateMsg assetProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
boolean assetProfileNameUpdated = false;
|
||||
assetCreationLock.lock();
|
||||
try {
|
||||
AssetProfile assetProfile = isEdgeVersionOlderThan_3_6_2
|
||||
AssetProfile assetProfile = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createAssetProfile(tenantId, assetProfileId, assetProfileUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(assetProfileUpdateMsg.getEntity(), AssetProfile.class);
|
||||
if (assetProfile == null) {
|
||||
@ -63,8 +65,8 @@ public abstract class BaseAssetProfileProcessor extends BaseEdgeProcessor {
|
||||
|
||||
RuleChainId ruleChainId = assetProfile.getDefaultRuleChainId();
|
||||
setDefaultRuleChainId(tenantId, assetProfile, created ? null : assetProfileById.getDefaultRuleChainId());
|
||||
setDefaultEdgeRuleChainId(assetProfile, ruleChainId, assetProfileUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setDefaultDashboardId(tenantId, created ? null : assetProfileById.getDefaultDashboardId(), assetProfile, assetProfileUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setDefaultEdgeRuleChainId(assetProfile, ruleChainId, assetProfileUpdateMsg, edgeVersion);
|
||||
setDefaultDashboardId(tenantId, created ? null : assetProfileById.getDefaultDashboardId(), assetProfile, assetProfileUpdateMsg, edgeVersion);
|
||||
|
||||
assetProfileValidator.validate(assetProfile, AssetProfile::getTenantId);
|
||||
if (created) {
|
||||
@ -95,7 +97,7 @@ public abstract class BaseAssetProfileProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected abstract void setDefaultRuleChainId(TenantId tenantId, AssetProfile assetProfile, RuleChainId ruleChainId);
|
||||
|
||||
protected abstract void setDefaultEdgeRuleChainId(AssetProfile assetProfile, RuleChainId ruleChainId, AssetProfileUpdateMsg assetProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setDefaultEdgeRuleChainId(AssetProfile assetProfile, RuleChainId ruleChainId, AssetProfileUpdateMsg assetProfileUpdateMsg, EdgeVersion edgeVersion);
|
||||
|
||||
protected abstract void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, AssetProfile assetProfile, AssetProfileUpdateMsg assetProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, AssetProfile assetProfile, AssetProfileUpdateMsg assetProfileUpdateMsg, EdgeVersion edgeVersion);
|
||||
}
|
||||
|
||||
@ -25,16 +25,18 @@ import org.thingsboard.server.common.data.id.CustomerId;
|
||||
import org.thingsboard.server.common.data.id.DashboardId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.gen.edge.v1.DashboardUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseDashboardProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected boolean saveOrUpdateDashboard(TenantId tenantId, DashboardId dashboardId, DashboardUpdateMsg dashboardUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2, CustomerId customerId) {
|
||||
protected boolean saveOrUpdateDashboard(TenantId tenantId, DashboardId dashboardId, DashboardUpdateMsg dashboardUpdateMsg, CustomerId customerId, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
Dashboard dashboard = isEdgeVersionOlderThan_3_6_2
|
||||
Dashboard dashboard = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createDashboard(tenantId, dashboardId, dashboardUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(dashboardUpdateMsg.getEntity(), Dashboard.class);
|
||||
if (dashboard == null) {
|
||||
|
||||
@ -35,7 +35,6 @@ import org.thingsboard.server.gen.edge.v1.DownlinkMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.edge.v1.UpdateMsgType;
|
||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
@ -80,7 +79,7 @@ public class DashboardEdgeProcessor extends BaseDashboardProcessor {
|
||||
|
||||
private void saveOrUpdateDashboard(TenantId tenantId, DashboardId dashboardId, DashboardUpdateMsg dashboardUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
boolean created = super.saveOrUpdateDashboard(tenantId, dashboardId, dashboardUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion), edge.getCustomerId());
|
||||
edge.getCustomerId(), edgeVersion);
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), dashboardId);
|
||||
pushDashboardCreatedEventToRuleEngine(tenantId, edge, dashboardId);
|
||||
|
||||
@ -32,8 +32,10 @@ import org.thingsboard.server.common.data.security.DeviceCredentials;
|
||||
import org.thingsboard.server.common.data.security.DeviceCredentialsType;
|
||||
import org.thingsboard.server.gen.edge.v1.DeviceCredentialsUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.DeviceUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.queue.util.DataDecodingEncodingService;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
@ -44,12 +46,12 @@ public abstract class BaseDeviceProcessor extends BaseEdgeProcessor {
|
||||
@Autowired
|
||||
protected DataDecodingEncodingService dataDecodingEncodingService;
|
||||
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateDevice(TenantId tenantId, DeviceId deviceId, DeviceUpdateMsg deviceUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateDevice(TenantId tenantId, DeviceId deviceId, DeviceUpdateMsg deviceUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
boolean deviceNameUpdated = false;
|
||||
deviceCreationLock.lock();
|
||||
try {
|
||||
Device device = isEdgeVersionOlderThan_3_6_2
|
||||
Device device = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createDevice(tenantId, deviceId, deviceUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(deviceUpdateMsg.getEntity(), Device.class);
|
||||
if (device == null) {
|
||||
@ -71,7 +73,7 @@ public abstract class BaseDeviceProcessor extends BaseEdgeProcessor {
|
||||
deviceNameUpdated = true;
|
||||
}
|
||||
device.setName(deviceName);
|
||||
setCustomerId(tenantId, created ? null : deviceById.getCustomerId(), device, deviceUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setCustomerId(tenantId, created ? null : deviceById.getCustomerId(), device, deviceUpdateMsg, edgeVersion);
|
||||
|
||||
deviceValidator.validate(device, Device::getTenantId);
|
||||
if (created) {
|
||||
@ -157,5 +159,5 @@ public abstract class BaseDeviceProcessor extends BaseEdgeProcessor {
|
||||
return deviceCredentials;
|
||||
}
|
||||
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, Device device, DeviceUpdateMsg deviceUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, Device device, DeviceUpdateMsg deviceUpdateMsg, EdgeVersion edgeVersion);
|
||||
}
|
||||
|
||||
@ -32,8 +32,10 @@ import org.thingsboard.server.common.data.id.OtaPackageId;
|
||||
import org.thingsboard.server.common.data.id.RuleChainId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.gen.edge.v1.DeviceProfileUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.queue.util.DataDecodingEncodingService;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Optional;
|
||||
@ -45,12 +47,12 @@ public abstract class BaseDeviceProfileProcessor extends BaseEdgeProcessor {
|
||||
@Autowired
|
||||
private DataDecodingEncodingService dataDecodingEncodingService;
|
||||
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateDeviceProfile(TenantId tenantId, DeviceProfileId deviceProfileId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateDeviceProfile(TenantId tenantId, DeviceProfileId deviceProfileId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
boolean deviceProfileNameUpdated = false;
|
||||
deviceCreationLock.lock();
|
||||
try {
|
||||
DeviceProfile deviceProfile = isEdgeVersionOlderThan_3_6_2
|
||||
DeviceProfile deviceProfile = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createDeviceProfile(tenantId, deviceProfileId, deviceProfileUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(deviceProfileUpdateMsg.getEntity(), DeviceProfile.class);
|
||||
if (deviceProfile == null) {
|
||||
@ -75,8 +77,8 @@ public abstract class BaseDeviceProfileProcessor extends BaseEdgeProcessor {
|
||||
|
||||
RuleChainId ruleChainId = deviceProfile.getDefaultRuleChainId();
|
||||
setDefaultRuleChainId(tenantId, deviceProfile, created ? null : deviceProfileById.getDefaultRuleChainId());
|
||||
setDefaultEdgeRuleChainId(deviceProfile, ruleChainId, deviceProfileUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setDefaultDashboardId(tenantId, created ? null : deviceProfileById.getDefaultDashboardId(), deviceProfile, deviceProfileUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setDefaultEdgeRuleChainId(deviceProfile, ruleChainId, deviceProfileUpdateMsg, edgeVersion);
|
||||
setDefaultDashboardId(tenantId, created ? null : deviceProfileById.getDefaultDashboardId(), deviceProfile, deviceProfileUpdateMsg, edgeVersion);
|
||||
|
||||
deviceProfileValidator.validate(deviceProfile, DeviceProfile::getTenantId);
|
||||
if (created) {
|
||||
@ -127,7 +129,7 @@ public abstract class BaseDeviceProfileProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected abstract void setDefaultRuleChainId(TenantId tenantId, DeviceProfile deviceProfile, RuleChainId ruleChainId);
|
||||
|
||||
protected abstract void setDefaultEdgeRuleChainId(DeviceProfile deviceProfile, RuleChainId ruleChainId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setDefaultEdgeRuleChainId(DeviceProfile deviceProfile, RuleChainId ruleChainId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, EdgeVersion edgeVersion);
|
||||
|
||||
protected abstract void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, DeviceProfile deviceProfile, DeviceProfileUpdateMsg deviceProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, DeviceProfile deviceProfile, DeviceProfileUpdateMsg deviceProfileUpdateMsg, EdgeVersion edgeVersion);
|
||||
}
|
||||
|
||||
@ -110,8 +110,7 @@ public class DeviceEdgeProcessor extends BaseDeviceProcessor {
|
||||
}
|
||||
|
||||
private void saveOrUpdateDevice(TenantId tenantId, DeviceId deviceId, DeviceUpdateMsg deviceUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateDevice(tenantId, deviceId, deviceUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateDevice(tenantId, deviceId, deviceUpdateMsg, edgeVersion);
|
||||
Boolean created = resultPair.getFirst();
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), deviceId);
|
||||
@ -289,8 +288,8 @@ public class DeviceEdgeProcessor extends BaseDeviceProcessor {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, Device device, DeviceUpdateMsg deviceUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
CustomerId customerUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, Device device, DeviceUpdateMsg deviceUpdateMsg, EdgeVersion edgeVersion) {
|
||||
CustomerId customerUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetCustomerId(deviceUpdateMsg.getCustomerIdMSB(), deviceUpdateMsg.getCustomerIdLSB())
|
||||
: device.getCustomerId() != null ? device.getCustomerId() : customerId;
|
||||
device.setCustomerId(customerUUID);
|
||||
|
||||
@ -74,8 +74,7 @@ public class DeviceProfileEdgeProcessor extends BaseDeviceProfileProcessor {
|
||||
}
|
||||
|
||||
private void saveOrUpdateDeviceProfile(TenantId tenantId, DeviceProfileId deviceProfileId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateDeviceProfile(tenantId, deviceProfileId, deviceProfileUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateDeviceProfile(tenantId, deviceProfileId, deviceProfileUpdateMsg, edgeVersion);
|
||||
Boolean created = resultPair.getFirst();
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), deviceProfileId);
|
||||
@ -134,16 +133,16 @@ public class DeviceProfileEdgeProcessor extends BaseDeviceProfileProcessor {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setDefaultEdgeRuleChainId(DeviceProfile deviceProfile, RuleChainId ruleChainId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
UUID defaultEdgeRuleChainUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setDefaultEdgeRuleChainId(DeviceProfile deviceProfile, RuleChainId ruleChainId, DeviceProfileUpdateMsg deviceProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
UUID defaultEdgeRuleChainUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetUUID(deviceProfileUpdateMsg.getDefaultRuleChainIdMSB(), deviceProfileUpdateMsg.getDefaultRuleChainIdLSB())
|
||||
: ruleChainId != null ? ruleChainId.getId() : null;
|
||||
deviceProfile.setDefaultEdgeRuleChainId(defaultEdgeRuleChainUUID != null ? new RuleChainId(defaultEdgeRuleChainUUID) : null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, DeviceProfile deviceProfile, DeviceProfileUpdateMsg deviceProfileUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
UUID defaultDashboardUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setDefaultDashboardId(TenantId tenantId, DashboardId dashboardId, DeviceProfile deviceProfile, DeviceProfileUpdateMsg deviceProfileUpdateMsg, EdgeVersion edgeVersion) {
|
||||
UUID defaultDashboardUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetUUID(deviceProfileUpdateMsg.getDefaultDashboardIdMSB(), deviceProfileUpdateMsg.getDefaultDashboardIdLSB())
|
||||
: deviceProfile.getDefaultDashboardId() != null ? deviceProfile.getDefaultDashboardId().getId() : (dashboardId != null ? dashboardId.getId() : null);
|
||||
deviceProfile.setDefaultDashboardId(defaultDashboardUUID != null ? new DashboardId(defaultDashboardUUID) : null);
|
||||
|
||||
@ -27,18 +27,20 @@ import org.thingsboard.server.common.data.id.DeviceId;
|
||||
import org.thingsboard.server.common.data.id.EntityViewId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeEntityType;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.edge.v1.EntityViewUpdateMsg;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseEntityViewProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateEntityView(TenantId tenantId, EntityViewId entityViewId, EntityViewUpdateMsg entityViewUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected Pair<Boolean, Boolean> saveOrUpdateEntityView(TenantId tenantId, EntityViewId entityViewId, EntityViewUpdateMsg entityViewUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean created = false;
|
||||
boolean entityViewNameUpdated = false;
|
||||
EntityView entityView = isEdgeVersionOlderThan_3_6_2
|
||||
EntityView entityView = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createEntityView(tenantId, entityViewId, entityViewUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(entityViewUpdateMsg.getEntity(), EntityView.class);
|
||||
if (entityView == null) {
|
||||
@ -60,7 +62,7 @@ public abstract class BaseEntityViewProcessor extends BaseEdgeProcessor {
|
||||
entityViewNameUpdated = true;
|
||||
}
|
||||
entityView.setName(entityViewName);
|
||||
setCustomerId(tenantId, created ? null : entityViewById.getCustomerId(), entityView, entityViewUpdateMsg, isEdgeVersionOlderThan_3_6_2);
|
||||
setCustomerId(tenantId, created ? null : entityViewById.getCustomerId(), entityView, entityViewUpdateMsg, edgeVersion);
|
||||
|
||||
entityViewValidator.validate(entityView, EntityView::getTenantId);
|
||||
if (created) {
|
||||
@ -92,5 +94,5 @@ public abstract class BaseEntityViewProcessor extends BaseEdgeProcessor {
|
||||
return entityView;
|
||||
}
|
||||
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, EntityView entityView, EntityViewUpdateMsg entityViewUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2);
|
||||
protected abstract void setCustomerId(TenantId tenantId, CustomerId customerId, EntityView entityView, EntityViewUpdateMsg entityViewUpdateMsg, EdgeVersion edgeVersion);
|
||||
}
|
||||
|
||||
@ -81,8 +81,7 @@ public class EntityViewEdgeProcessor extends BaseEntityViewProcessor {
|
||||
}
|
||||
|
||||
private void saveOrUpdateEntityView(TenantId tenantId, EntityViewId entityViewId, EntityViewUpdateMsg entityViewUpdateMsg, Edge edge, EdgeVersion edgeVersion) {
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateEntityView(tenantId, entityViewId, entityViewUpdateMsg,
|
||||
EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
Pair<Boolean, Boolean> resultPair = super.saveOrUpdateEntityView(tenantId, entityViewId, entityViewUpdateMsg, edgeVersion);
|
||||
Boolean created = resultPair.getFirst();
|
||||
if (created) {
|
||||
createRelationFromEdge(tenantId, edge.getId(), entityViewId);
|
||||
@ -140,8 +139,8 @@ public class EntityViewEdgeProcessor extends BaseEntityViewProcessor {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, EntityView entityView, EntityViewUpdateMsg entityViewUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
CustomerId customerUUID = isEdgeVersionOlderThan_3_6_2
|
||||
protected void setCustomerId(TenantId tenantId, CustomerId customerId, EntityView entityView, EntityViewUpdateMsg entityViewUpdateMsg, EdgeVersion edgeVersion) {
|
||||
CustomerId customerUUID = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? safeGetCustomerId(entityViewUpdateMsg.getCustomerIdMSB(), entityViewUpdateMsg.getCustomerIdLSB())
|
||||
: entityView.getCustomerId() != null ? entityView.getCustomerId() : customerId;
|
||||
entityView.setCustomerId(customerUUID);
|
||||
|
||||
@ -25,18 +25,20 @@ import org.thingsboard.server.common.data.id.EntityIdFactory;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.relation.EntityRelation;
|
||||
import org.thingsboard.server.common.data.relation.RelationTypeGroup;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.edge.v1.RelationUpdateMsg;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseRelationProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected ListenableFuture<Void> processRelationMsg(TenantId tenantId, RelationUpdateMsg relationUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected ListenableFuture<Void> processRelationMsg(TenantId tenantId, RelationUpdateMsg relationUpdateMsg, EdgeVersion edgeVersion) {
|
||||
log.trace("[{}] processRelationMsg [{}]", tenantId, relationUpdateMsg);
|
||||
try {
|
||||
EntityRelation entityRelation = isEdgeVersionOlderThan_3_6_2
|
||||
EntityRelation entityRelation = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createEntityRelation(relationUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(relationUpdateMsg.getEntity(), EntityRelation.class);
|
||||
if (entityRelation == null) {
|
||||
|
||||
@ -35,7 +35,6 @@ import org.thingsboard.server.gen.edge.v1.RelationUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.UpdateMsgType;
|
||||
import org.thingsboard.server.gen.transport.TransportProtos;
|
||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
@ -51,7 +50,7 @@ public class RelationEdgeProcessor extends BaseRelationProcessor {
|
||||
log.trace("[{}] executing processRelationMsgFromEdge [{}] from edge [{}]", tenantId, relationUpdateMsg, edge.getId());
|
||||
try {
|
||||
edgeSynchronizationManager.getEdgeId().set(edge.getId());
|
||||
return processRelationMsg(tenantId, relationUpdateMsg, EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
return processRelationMsg(tenantId, relationUpdateMsg, edgeVersion);
|
||||
} finally {
|
||||
edgeSynchronizationManager.getEdgeId().remove();
|
||||
}
|
||||
|
||||
@ -25,16 +25,18 @@ import org.thingsboard.server.common.data.TbResourceInfo;
|
||||
import org.thingsboard.server.common.data.id.TbResourceId;
|
||||
import org.thingsboard.server.common.data.id.TenantId;
|
||||
import org.thingsboard.server.common.data.page.PageDataIterable;
|
||||
import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.edge.v1.ResourceUpdateMsg;
|
||||
import org.thingsboard.server.service.edge.rpc.processor.BaseEdgeProcessor;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
@Slf4j
|
||||
public abstract class BaseResourceProcessor extends BaseEdgeProcessor {
|
||||
|
||||
protected boolean saveOrUpdateTbResource(TenantId tenantId, TbResourceId tbResourceId, ResourceUpdateMsg resourceUpdateMsg, boolean isEdgeVersionOlderThan_3_6_2) {
|
||||
protected boolean saveOrUpdateTbResource(TenantId tenantId, TbResourceId tbResourceId, ResourceUpdateMsg resourceUpdateMsg, EdgeVersion edgeVersion) {
|
||||
boolean resourceKeyUpdated = false;
|
||||
try {
|
||||
TbResource resource = isEdgeVersionOlderThan_3_6_2
|
||||
TbResource resource = EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion)
|
||||
? createTbResource(tenantId, resourceUpdateMsg)
|
||||
: JacksonUtil.fromStringIgnoreUnknownProperties(resourceUpdateMsg.getEntity(), TbResource.class);
|
||||
if (resource == null) {
|
||||
|
||||
@ -33,7 +33,6 @@ import org.thingsboard.server.gen.edge.v1.EdgeVersion;
|
||||
import org.thingsboard.server.gen.edge.v1.ResourceUpdateMsg;
|
||||
import org.thingsboard.server.gen.edge.v1.UpdateMsgType;
|
||||
import org.thingsboard.server.queue.util.TbCoreComponent;
|
||||
import org.thingsboard.server.service.edge.rpc.utils.EdgeVersionUtils;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
@ -50,7 +49,7 @@ public class ResourceEdgeProcessor extends BaseResourceProcessor {
|
||||
switch (resourceUpdateMsg.getMsgType()) {
|
||||
case ENTITY_CREATED_RPC_MESSAGE:
|
||||
case ENTITY_UPDATED_RPC_MESSAGE:
|
||||
boolean resourceKeyUpdated = super.saveOrUpdateTbResource(tenantId, tbResourceId, resourceUpdateMsg, EdgeVersionUtils.isEdgeVersionOlderThan_3_6_2(edgeVersion));
|
||||
boolean resourceKeyUpdated = super.saveOrUpdateTbResource(tenantId, tbResourceId, resourceUpdateMsg, edgeVersion);
|
||||
if (resourceKeyUpdated) {
|
||||
saveEdgeEvent(tenantId, edge.getId(), EdgeEventType.TB_RESOURCE, EdgeEventActionType.UPDATED, tbResourceId, null);
|
||||
}
|
||||
|
||||
@ -15,7 +15,6 @@
|
||||
*/
|
||||
package org.thingsboard.server.service.edge.rpc.processor.telemetry;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.thingsboard.server.common.data.DataConstants;
|
||||
@ -37,7 +36,7 @@ public class TelemetryEdgeProcessor extends BaseTelemetryProcessor {
|
||||
return DataConstants.EDGE_MSG_SOURCE;
|
||||
}
|
||||
|
||||
public DownlinkMsg convertTelemetryEventToDownlink(EdgeEvent edgeEvent) throws JsonProcessingException {
|
||||
public DownlinkMsg convertTelemetryEventToDownlink(EdgeEvent edgeEvent) {
|
||||
if (edgeEvent.getBody() != null) {
|
||||
String bodyStr = edgeEvent.getBody().toString();
|
||||
if (bodyStr.length() > 1000) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user