Process images for system dashboard resource
This commit is contained in:
		
							parent
							
								
									1199490654
								
							
						
					
					
						commit
						ee0e2a6802
					
				@ -17,15 +17,19 @@ package org.thingsboard.server.dao.resource;
 | 
			
		||||
 | 
			
		||||
import com.google.common.hash.Hashing;
 | 
			
		||||
import com.google.common.util.concurrent.ListenableFuture;
 | 
			
		||||
import lombok.AllArgsConstructor;
 | 
			
		||||
import lombok.RequiredArgsConstructor;
 | 
			
		||||
import lombok.extern.slf4j.Slf4j;
 | 
			
		||||
import org.hibernate.exception.ConstraintViolationException;
 | 
			
		||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
			
		||||
import org.springframework.context.annotation.Lazy;
 | 
			
		||||
import org.springframework.context.annotation.Primary;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
import org.springframework.transaction.event.TransactionalEventListener;
 | 
			
		||||
import org.thingsboard.common.util.JacksonUtil;
 | 
			
		||||
import org.thingsboard.common.util.RegexUtils;
 | 
			
		||||
import org.thingsboard.server.cache.resourceInfo.ResourceInfoCacheKey;
 | 
			
		||||
import org.thingsboard.server.cache.resourceInfo.ResourceInfoEvictEvent;
 | 
			
		||||
import org.thingsboard.server.common.data.Dashboard;
 | 
			
		||||
import org.thingsboard.server.common.data.EntityType;
 | 
			
		||||
import org.thingsboard.server.common.data.ResourceType;
 | 
			
		||||
import org.thingsboard.server.common.data.TbResource;
 | 
			
		||||
@ -54,7 +58,7 @@ import static org.thingsboard.server.dao.service.Validator.validateId;
 | 
			
		||||
 | 
			
		||||
@Service("TbResourceDaoService")
 | 
			
		||||
@Slf4j
 | 
			
		||||
@AllArgsConstructor
 | 
			
		||||
@RequiredArgsConstructor
 | 
			
		||||
@Primary
 | 
			
		||||
public class BaseResourceService extends AbstractCachedEntityService<ResourceInfoCacheKey, TbResourceInfo, ResourceInfoEvictEvent> implements ResourceService {
 | 
			
		||||
 | 
			
		||||
@ -62,6 +66,8 @@ public class BaseResourceService extends AbstractCachedEntityService<ResourceInf
 | 
			
		||||
    protected final TbResourceDao resourceDao;
 | 
			
		||||
    protected final TbResourceInfoDao resourceInfoDao;
 | 
			
		||||
    protected final ResourceDataValidator resourceValidator;
 | 
			
		||||
    @Autowired @Lazy
 | 
			
		||||
    private ImageService imageService;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public TbResource saveResource(TbResource resource, boolean doValidate) {
 | 
			
		||||
@ -243,6 +249,11 @@ public class BaseResourceService extends AbstractCachedEntityService<ResourceInf
 | 
			
		||||
    public TbResource createOrUpdateSystemResource(ResourceType resourceType, String resourceKey, String data) {
 | 
			
		||||
        if (resourceType == ResourceType.DASHBOARD) {
 | 
			
		||||
            data = checkSystemResourcesUsage(data, ResourceType.JS_MODULE);
 | 
			
		||||
 | 
			
		||||
            Dashboard dashboard = JacksonUtil.fromString(data, Dashboard.class);
 | 
			
		||||
            dashboard.setTenantId(TenantId.SYS_TENANT_ID);
 | 
			
		||||
            imageService.replaceBase64WithImageUrl(dashboard);
 | 
			
		||||
            data = JacksonUtil.toString(dashboard);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        TbResource resource = findResourceByTenantIdAndKey(TenantId.SYS_TENANT_ID, resourceType, resourceKey);
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user