Browse Source

Refactor deletion events handling

pull/10201/head
ViacheslavKlimov 2 years ago
parent
commit
49a1a37b06
  1. 2
      application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java
  2. 2
      application/src/main/java/org/thingsboard/server/service/entitiy/EntityStateSourcingListener.java
  3. 3
      dao/src/main/java/org/thingsboard/server/dao/tenant/TenantServiceImpl.java

2
application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java

@ -100,7 +100,7 @@ public class EdgeEventSourcingListener {
public void handleEvent(DeleteEntityEvent<?> event) {
TenantId tenantId = event.getTenantId();
EntityType entityType = event.getEntityId().getEntityType();
if (!tenantService.tenantExists(tenantId)) {
if (!tenantId.isSysTenantId() && !tenantService.tenantExists(tenantId)) {
log.debug("[{}] Ignoring DeleteEntityEvent because tenant does not exist: {}", tenantId, event);
return;
}

2
application/src/main/java/org/thingsboard/server/service/entitiy/EntityStateSourcingListener.java

@ -123,7 +123,7 @@ public class EntityStateSourcingListener {
TenantId tenantId = event.getTenantId();
EntityId entityId = event.getEntityId();
EntityType entityType = entityId.getEntityType();
if (entityType != EntityType.TENANT && !tenantService.tenantExists(tenantId)) {
if (!tenantId.isSysTenantId() && entityType != EntityType.TENANT && !tenantService.tenantExists(tenantId)) {
log.debug("[{}] Ignoring DeleteEntityEvent because tenant does not exist: {}", tenantId, event);
return;
}

3
dao/src/main/java/org/thingsboard/server/dao/tenant/TenantServiceImpl.java

@ -160,9 +160,7 @@ public class TenantServiceImpl extends AbstractCachedEntityService<TenantId, Ten
adminSettingsService.deleteAdminSettingsByTenantId(tenantId);
notificationSettingsService.deleteNotificationSettings(tenantId);
tenantDao.removeById(tenantId, tenantId.getId());
publishEvictEvent(new TenantEvictEvent(tenantId, true));
eventPublisher.publishEvent(DeleteEntityEvent.builder().tenantId(tenantId).entityId(tenantId).entity(tenant).build());
cleanUpService.removeTenantEntities(tenantId, // don't forget to implement deleteEntity from EntityDaoService when adding entity type to this list
EntityType.ENTITY_VIEW, EntityType.WIDGETS_BUNDLE, EntityType.WIDGET_TYPE,
@ -172,6 +170,7 @@ public class TenantServiceImpl extends AbstractCachedEntityService<TenantId, Ten
EntityType.NOTIFICATION_REQUEST, EntityType.NOTIFICATION_RULE, EntityType.NOTIFICATION_TEMPLATE,
EntityType.NOTIFICATION_TARGET, EntityType.QUEUE_STATS, EntityType.CUSTOMER
);
eventPublisher.publishEvent(DeleteEntityEvent.builder().tenantId(tenantId).entityId(tenantId).entity(tenant).build());
}
@Override

Loading…
Cancel
Save