diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/AllUsersNotificationTargetConfig.java b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/AllUsersNotificationTargetConfig.java index 8e380cafa5..c5ab241f18 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/AllUsersNotificationTargetConfig.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/AllUsersNotificationTargetConfig.java @@ -16,9 +16,11 @@ package org.thingsboard.server.common.data.notification.targets; import lombok.Data; +import lombok.EqualsAndHashCode; @Data -public class AllUsersNotificationTargetConfig implements NotificationTargetConfig { +@EqualsAndHashCode(callSuper = true) +public class AllUsersNotificationTargetConfig extends NotificationTargetConfig { @Override public NotificationTargetConfigType getType() { diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/CustomerUsersNotificationTargetConfig.java b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/CustomerUsersNotificationTargetConfig.java index 8d48500f93..123cee9e80 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/CustomerUsersNotificationTargetConfig.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/CustomerUsersNotificationTargetConfig.java @@ -17,13 +17,15 @@ package org.thingsboard.server.common.data.notification.targets; import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; +import lombok.EqualsAndHashCode; import org.thingsboard.server.common.data.id.EntityId; import javax.validation.constraints.AssertTrue; import java.util.UUID; @Data -public class CustomerUsersNotificationTargetConfig implements NotificationTargetConfig { +@EqualsAndHashCode(callSuper = true) +public class CustomerUsersNotificationTargetConfig extends NotificationTargetConfig { private UUID customerId; // might not be set if using with notification rule private boolean getCustomerIdFromOriginatorEntity; // e.g. from alarm diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/NotificationTargetConfig.java b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/NotificationTargetConfig.java index 059391bd96..5b6e49dfb4 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/NotificationTargetConfig.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/NotificationTargetConfig.java @@ -19,6 +19,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonSubTypes; import com.fasterxml.jackson.annotation.JsonSubTypes.Type; import com.fasterxml.jackson.annotation.JsonTypeInfo; +import lombok.Data; @JsonIgnoreProperties(ignoreUnknown = true) @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "type") @@ -27,8 +28,11 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; @Type(value = CustomerUsersNotificationTargetConfig.class, name = "CUSTOMER_USERS"), @Type(value = AllUsersNotificationTargetConfig.class, name = "ALL_USERS") }) -public interface NotificationTargetConfig { +@Data +public abstract class NotificationTargetConfig { - NotificationTargetConfigType getType(); + private String description; + + public abstract NotificationTargetConfigType getType(); } diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/UserListNotificationTargetConfig.java b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/UserListNotificationTargetConfig.java index ea05948ff6..c851242c10 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/UserListNotificationTargetConfig.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/notification/targets/UserListNotificationTargetConfig.java @@ -16,14 +16,15 @@ package org.thingsboard.server.common.data.notification.targets; import lombok.Data; -import org.thingsboard.server.common.data.id.UserId; +import lombok.EqualsAndHashCode; import javax.validation.constraints.NotEmpty; import java.util.List; import java.util.UUID; @Data -public class UserListNotificationTargetConfig implements NotificationTargetConfig { +@EqualsAndHashCode(callSuper = true) +public class UserListNotificationTargetConfig extends NotificationTargetConfig { @NotEmpty private List usersIds;