From 67fe8067b73440dbf99c93fa79eaa30190a0bfcd Mon Sep 17 00:00:00 2001 From: Andrii Landiak Date: Tue, 16 Jan 2024 09:24:45 +0200 Subject: [PATCH] Refactor SaveEntityEvent to make it more generic in EdgeEventSourcingListener --- .../edge/EdgeEventSourcingListener.java | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java b/application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java index 89241f9a21..3ed90ee431 100644 --- a/application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java +++ b/application/src/main/java/org/thingsboard/server/service/edge/EdgeEventSourcingListener.java @@ -80,24 +80,16 @@ public class EdgeEventSourcingListener { } log.trace("[{}] SaveEntityEvent called: {}", event.getTenantId(), event); boolean isAdded = Boolean.TRUE.equals(event.getAdded()); - EdgeEventActionType action = isAdded ? EdgeEventActionType.ADDED : EdgeEventActionType.UPDATED; - if (event.getEntity() instanceof AlarmComment) { - processAlarmCommentEvent(event, isAdded); - return; - } + String body = getBodyMsgForEntityEvent(event.getEntity()); + EdgeEventType type = getEdgeEventTypeForEntityEvent(event.getEntity()); + EdgeEventActionType action = getActionForEntityEvent(event.getEntity(), isAdded); tbClusterService.sendNotificationMsgToEdge(event.getTenantId(), null, event.getEntityId(), - null, null, action, edgeSynchronizationManager.getEdgeId().get()); + body, type, action, edgeSynchronizationManager.getEdgeId().get()); } catch (Exception e) { log.error("[{}] failed to process SaveEntityEvent: {}", event.getTenantId(), event, e); } } - private void processAlarmCommentEvent(SaveEntityEvent event, boolean added) { - EdgeEventActionType action = added ? EdgeEventActionType.ADDED_COMMENT : EdgeEventActionType.UPDATED_COMMENT; - tbClusterService.sendNotificationMsgToEdge(event.getTenantId(), null, event.getEntityId(), - JacksonUtil.toString(event.getEntity()), EdgeEventType.ALARM_COMMENT, action, edgeSynchronizationManager.getEdgeId().get()); - } - @TransactionalEventListener(fallbackExecution = true) public void handleEvent(DeleteEntityEvent event) { try { @@ -207,4 +199,11 @@ public class EdgeEventSourcingListener { } return null; } + + private EdgeEventActionType getActionForEntityEvent(Object entity, boolean isAdded) { + if (entity instanceof AlarmComment) { + return isAdded ? EdgeEventActionType.ADDED_COMMENT : EdgeEventActionType.UPDATED_COMMENT; + } + return isAdded ? EdgeEventActionType.ADDED : EdgeEventActionType.UPDATED; + } }