From 796632d6f90dd5830dec0594504c8d701b60dff8 Mon Sep 17 00:00:00 2001 From: dashevchenko Date: Thu, 9 Jan 2025 18:14:46 +0200 Subject: [PATCH] fixed mobile app store info validation --- .../validator/MobileAppDataValidator.java | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/dao/src/main/java/org/thingsboard/server/dao/service/validator/MobileAppDataValidator.java b/dao/src/main/java/org/thingsboard/server/dao/service/validator/MobileAppDataValidator.java index d91ea8251d..68d9de859b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/service/validator/MobileAppDataValidator.java +++ b/dao/src/main/java/org/thingsboard/server/dao/service/validator/MobileAppDataValidator.java @@ -30,21 +30,17 @@ public class MobileAppDataValidator extends DataValidator { @Override protected void validateDataImpl(TenantId tenantId, MobileApp mobileApp) { - if (mobileApp.getPlatformType() == PlatformType.ANDROID) { - if (mobileApp.getStoreInfo() != null && + if (mobileApp.getStatus() == MobileAppStatus.PUBLISHED) { + if (mobileApp.getStoreInfo() == null) { + throw new DataValidationException("Store info is required for published apps"); + } + if (mobileApp.getPlatformType() == PlatformType.ANDROID && (mobileApp.getStoreInfo().getSha256CertFingerprints() == null || mobileApp.getStoreInfo().getStoreLink() == null)) { throw new DataValidationException("Sha256CertFingerprints and store link are required"); - } - } else if (mobileApp.getPlatformType() == PlatformType.IOS) { - if (mobileApp.getStoreInfo() != null && + } else if (mobileApp.getPlatformType() == PlatformType.IOS && (mobileApp.getStoreInfo().getAppId() == null || mobileApp.getStoreInfo().getStoreLink() == null)) { throw new DataValidationException("AppId and store link are required"); } - } else { - throw new DataValidationException("Wrong application platform type"); - } - if (mobileApp.getStatus() == MobileAppStatus.PUBLISHED && mobileApp.getStoreInfo() == null) { - throw new DataValidationException("Store info is required for published apps"); } } }