diff --git a/common/data/src/main/java/org/thingsboard/server/common/data/sync/ie/EntityExportData.java b/common/data/src/main/java/org/thingsboard/server/common/data/sync/ie/EntityExportData.java index cb87f206af..b7d4d46229 100644 --- a/common/data/src/main/java/org/thingsboard/server/common/data/sync/ie/EntityExportData.java +++ b/common/data/src/main/java/org/thingsboard/server/common/data/sync/ie/EntityExportData.java @@ -50,35 +50,35 @@ import java.util.List; import java.util.Map; @JsonIgnoreProperties(ignoreUnknown = true) -@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "entityType", include = As.EXISTING_PROPERTY, visible = true) +@JsonTypeInfo(use = JsonTypeInfo.Id.NAME, property = "entityType", include = As.EXISTING_PROPERTY, visible = true, defaultImpl = EntityExportData.class) @JsonSubTypes({ - @Type(name = "CUSTOMER", value = EntityExportData.CustomerExportData.class), @Type(name = "DEVICE", value = DeviceExportData.class), @Type(name = "RULE_CHAIN", value = RuleChainExportData.class), @Type(name = "WIDGET_TYPE", value = WidgetTypeExportData.class), @Type(name = "WIDGETS_BUNDLE", value = WidgetsBundleExportData.class), - @Type(name = "OTA_PACKAGE", value = OtaPackageExportData.class), - @Type(name = "TB_RESOURCE", value = EntityExportData.TbResourceExportData.class), - @Type(name = "DASHBOARD", value = EntityExportData.DashboardExportData.class), - @Type(name = "ASSET_PROFILE", value = EntityExportData.AssetProfileExportData.class), - @Type(name = "ASSET", value = EntityExportData.AssetExportData.class), - @Type(name = "DEVICE_PROFILE", value = EntityExportData.DeviceProfileExportData.class), - @Type(name = "ENTITY_VIEW", value = EntityExportData.EntityViewExportData.class), - @Type(name = "NOTIFICATION_TEMPLATE", value = EntityExportData.NotificationTemplateExportData.class), - @Type(name = "NOTIFICATION_TARGET", value = EntityExportData.NotificationTargetExportData.class), - @Type(name = "NOTIFICATION_RULE", value = EntityExportData.NotificationRuleExportData.class), - @Type(name = "AI_MODEL", value = EntityExportData.AiModelExportData.class), + @Type(name = "OTA_PACKAGE", value = OtaPackageExportData.class) }) @JsonInclude(JsonInclude.Include.NON_NULL) @Schema( description = "Base export container for ThingsBoard entities", discriminatorProperty = "entityType", discriminatorMapping = { + @DiscriminatorMapping(value = "CUSTOMER", schema = EntityExportData.CustomerExportData.class), @DiscriminatorMapping(value = "DEVICE", schema = DeviceExportData.class), @DiscriminatorMapping(value = "RULE_CHAIN", schema = RuleChainExportData.class), @DiscriminatorMapping(value = "WIDGET_TYPE", schema = WidgetTypeExportData.class), @DiscriminatorMapping(value = "WIDGETS_BUNDLE", schema = WidgetsBundleExportData.class), - @DiscriminatorMapping(value = "OTA_PACKAGE", schema = OtaPackageExportData.class) + @DiscriminatorMapping(value = "OTA_PACKAGE", schema = OtaPackageExportData.class), + @DiscriminatorMapping(value = "TB_RESOURCE", schema = EntityExportData.TbResourceExportData.class), + @DiscriminatorMapping(value = "DASHBOARD", schema = EntityExportData.DashboardExportData.class), + @DiscriminatorMapping(value = "ASSET_PROFILE", schema = EntityExportData.AssetProfileExportData.class), + @DiscriminatorMapping(value = "ASSET", schema = EntityExportData.AssetExportData.class), + @DiscriminatorMapping(value = "DEVICE_PROFILE", schema = EntityExportData.DeviceProfileExportData.class), + @DiscriminatorMapping(value = "ENTITY_VIEW", schema = EntityExportData.EntityViewExportData.class), + @DiscriminatorMapping(value = "NOTIFICATION_TEMPLATE", schema = EntityExportData.NotificationTemplateExportData.class), + @DiscriminatorMapping(value = "NOTIFICATION_TARGET", schema = EntityExportData.NotificationTargetExportData.class), + @DiscriminatorMapping(value = "NOTIFICATION_RULE", schema = EntityExportData.NotificationRuleExportData.class), + @DiscriminatorMapping(value = "AI_MODEL", schema = EntityExportData.AiModelExportData.class) } ) @Data