Merge branch 'rc' of github.com:thingsboard/thingsboard into rc
This commit is contained in:
		
						commit
						1b34617506
					
				@ -64,7 +64,7 @@ public class OAuth2ClientServiceImpl extends AbstractEntityService implements OA
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<OAuth2ClientLoginInfo> findOAuth2ClientLoginInfosByMobilePkgNameAndPlatformType(String pkgName, PlatformType platformType) {
 | 
			
		||||
        log.trace("Executing findOAuth2ClientLoginInfosByMobilePkgNameAndPlatformType pkgName=[{}] platformType=[{}]",pkgName, platformType);
 | 
			
		||||
        log.trace("Executing findOAuth2ClientLoginInfosByMobilePkgNameAndPlatformType pkgName=[{}] platformType=[{}]", pkgName, platformType);
 | 
			
		||||
        return oauth2ClientDao.findEnabledByPkgNameAndPlatformType(pkgName, platformType)
 | 
			
		||||
                .stream()
 | 
			
		||||
                .map(OAuth2Utils::toClientLoginInfo)
 | 
			
		||||
 | 
			
		||||
@ -31,6 +31,7 @@ import org.thingsboard.server.dao.oauth2.OAuth2ClientDao;
 | 
			
		||||
import org.thingsboard.server.dao.sql.JpaAbstractDao;
 | 
			
		||||
import org.thingsboard.server.dao.util.SqlDao;
 | 
			
		||||
 | 
			
		||||
import java.util.Collections;
 | 
			
		||||
import java.util.List;
 | 
			
		||||
import java.util.UUID;
 | 
			
		||||
 | 
			
		||||
@ -65,8 +66,17 @@ public class JpaOAuth2ClientDao extends JpaAbstractDao<OAuth2ClientEntity, OAuth
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<OAuth2Client> findEnabledByPkgNameAndPlatformType(String pkgName, PlatformType platformType) {
 | 
			
		||||
        return DaoUtil.convertDataList(repository.findEnabledByPkgNameAndPlatformType(pkgName,
 | 
			
		||||
                platformType != null ? platformType.name() : null));
 | 
			
		||||
        List<OAuth2ClientEntity> clientEntities;
 | 
			
		||||
        if (platformType != null) {
 | 
			
		||||
            clientEntities = switch (platformType) {
 | 
			
		||||
                case ANDROID -> repository.findEnabledByAndroidPkgNameAndPlatformType(pkgName, platformType.name());
 | 
			
		||||
                case IOS -> repository.findEnabledByIosPkgNameAndPlatformType(pkgName, platformType.name());
 | 
			
		||||
                default -> Collections.emptyList();
 | 
			
		||||
            };
 | 
			
		||||
        } else {
 | 
			
		||||
            clientEntities = Collections.emptyList();
 | 
			
		||||
        }
 | 
			
		||||
        return DaoUtil.convertDataList(clientEntities);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
 | 
			
		||||
@ -49,11 +49,21 @@ public interface OAuth2ClientRepository extends JpaRepository<OAuth2ClientEntity
 | 
			
		||||
            "FROM OAuth2ClientEntity c " +
 | 
			
		||||
            "LEFT JOIN MobileAppBundleOauth2ClientEntity ac ON c.id = ac.oauth2ClientId " +
 | 
			
		||||
            "LEFT JOIN MobileAppBundleEntity b ON ac.mobileAppBundleId = b.id " +
 | 
			
		||||
            "LEFT JOIN MobileAppEntity andApp ON b.androidAppId = andApp.id LEFT JOIN MobileAppEntity iosApp ON b.iosAppID = iosApp.id " +
 | 
			
		||||
            "WHERE andApp.pkgName = :pkgName OR iosApp.pkgName = :pkgName AND b.oauth2Enabled = true " +
 | 
			
		||||
            "LEFT JOIN MobileAppEntity andApp ON b.androidAppId = andApp.id " +
 | 
			
		||||
            "WHERE andApp.pkgName = :pkgName AND b.oauth2Enabled = true " +
 | 
			
		||||
            "AND (:platformFilter IS NULL OR c.platforms IS NULL OR c.platforms = '' OR ilike(c.platforms, CONCAT('%', :platformFilter, '%')) = true)")
 | 
			
		||||
    List<OAuth2ClientEntity> findEnabledByPkgNameAndPlatformType(@Param("pkgName") String pkgName,
 | 
			
		||||
                                                                 @Param("platformFilter") String platformFilter);
 | 
			
		||||
    List<OAuth2ClientEntity> findEnabledByAndroidPkgNameAndPlatformType(@Param("pkgName") String pkgName,
 | 
			
		||||
                                                                        @Param("platformFilter") String platformFilter);
 | 
			
		||||
 | 
			
		||||
    @Query("SELECT c " +
 | 
			
		||||
            "FROM OAuth2ClientEntity c " +
 | 
			
		||||
            "LEFT JOIN MobileAppBundleOauth2ClientEntity ac ON c.id = ac.oauth2ClientId " +
 | 
			
		||||
            "LEFT JOIN MobileAppBundleEntity b ON ac.mobileAppBundleId = b.id " +
 | 
			
		||||
            "LEFT JOIN MobileAppEntity iosApp ON b.iosAppID = iosApp.id " +
 | 
			
		||||
            "WHERE iosApp.pkgName = :pkgName AND b.oauth2Enabled = true " +
 | 
			
		||||
            "AND (:platformFilter IS NULL OR c.platforms IS NULL OR c.platforms = '' OR ilike(c.platforms, CONCAT('%', :platformFilter, '%')) = true)")
 | 
			
		||||
    List<OAuth2ClientEntity> findEnabledByIosPkgNameAndPlatformType(@Param("pkgName") String pkgName,
 | 
			
		||||
                                                                    @Param("platformFilter") String platformFilter);
 | 
			
		||||
 | 
			
		||||
    @Query("SELECT c " +
 | 
			
		||||
            "FROM OAuth2ClientEntity c " +
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user