Refactoring

This commit is contained in:
Yevhenii 2025-09-16 18:19:45 +03:00
parent d6d9413082
commit caec9699d4
2 changed files with 10 additions and 19 deletions

View File

@ -63,12 +63,7 @@ public class AiModelEdgeProcessor extends BaseAiModelProcessor implements AiMode
return handleUnsupportedMsgType(aiModelUpdateMsg.getMsgType()); return handleUnsupportedMsgType(aiModelUpdateMsg.getMsgType());
} }
} catch (DataValidationException e) { } catch (DataValidationException e) {
if (e.getMessage().contains("limit reached")) { return Futures.immediateFailedFuture(e);
log.warn("[{}] Number of allowed aiModel violated {}", tenantId, aiModelUpdateMsg, e);
return Futures.immediateFuture(null);
} else {
return Futures.immediateFailedFuture(e);
}
} finally { } finally {
edgeSynchronizationManager.getEdgeId().remove(); edgeSynchronizationManager.getEdgeId().remove();
} }

View File

@ -37,6 +37,7 @@ import org.thingsboard.server.dao.sql.JpaExecutorService;
import java.util.Optional; import java.util.Optional;
import java.util.Set; import java.util.Set;
import java.util.UUID;
import static org.thingsboard.server.dao.service.Validator.validatePageLink; import static org.thingsboard.server.dao.service.Validator.validatePageLink;
@ -125,11 +126,7 @@ class AiModelServiceImpl extends CachedVersionedEntityService<AiModelCacheKey, A
@Override @Override
@Transactional @Transactional
public boolean deleteByTenantIdAndId(TenantId tenantId, AiModelId modelId) { public boolean deleteByTenantIdAndId(TenantId tenantId, AiModelId modelId) {
AiModel aiModel = aiModelDao.findById(tenantId, modelId.getId()); return deleteByTenantIdAndIdInternal(tenantId, modelId.getId());
if (aiModel == null) {
return true;
}
return deleteByTenantIdAndIdInternal(tenantId, aiModel);
} }
@Override @Override
@ -146,17 +143,16 @@ class AiModelServiceImpl extends CachedVersionedEntityService<AiModelCacheKey, A
@Override @Override
@Transactional @Transactional
public void deleteEntity(TenantId tenantId, EntityId id, boolean force) { public void deleteEntity(TenantId tenantId, EntityId id, boolean force) {
AiModel aiModel = aiModelDao.findById(tenantId, id.getId()); deleteByTenantIdAndIdInternal(tenantId, id.getId());
if (aiModel == null) {
return;
}
deleteByTenantIdAndIdInternal(tenantId, aiModel);
} }
private boolean deleteByTenantIdAndIdInternal(TenantId tenantId, AiModel aiModel) { private boolean deleteByTenantIdAndIdInternal(TenantId tenantId, UUID aiModelId) {
boolean deleted = aiModelDao.deleteByTenantIdAndId(tenantId, aiModel.getId()); AiModel aiModel = aiModelDao.findById(tenantId, aiModelId);
if (aiModel == null) {
return false;
}
boolean deleted = aiModelDao.deleteByTenantIdAndId(tenantId, aiModel.getId());
if (deleted) { if (deleted) {
publishEvictEvent(new AiModelCacheEvictEvent.Deleted(AiModelCacheKey.of(tenantId, aiModel.getId()))); publishEvictEvent(new AiModelCacheEvictEvent.Deleted(AiModelCacheKey.of(tenantId, aiModel.getId())));
eventPublisher.publishEvent(DeleteEntityEvent.builder().tenantId(tenantId).entityId(aiModel.getId()).entity(aiModel).build()); eventPublisher.publishEvent(DeleteEntityEvent.builder().tenantId(tenantId).entityId(aiModel.getId()).entity(aiModel).build());