Commit e0c2c5a994ae43b2f9ec94c788df3db8cb09790e

Authored by viktorbasanets
1 parent 457b5d12

Was added caching

@@ -21,6 +21,8 @@ import org.apache.commons.lang3.StringUtils; @@ -21,6 +21,8 @@ import org.apache.commons.lang3.StringUtils;
21 import org.springframework.beans.factory.annotation.Autowired; 21 import org.springframework.beans.factory.annotation.Autowired;
22 import org.springframework.cache.Cache; 22 import org.springframework.cache.Cache;
23 import org.springframework.cache.CacheManager; 23 import org.springframework.cache.CacheManager;
  24 +import org.springframework.cache.annotation.CacheEvict;
  25 +import org.springframework.cache.annotation.Cacheable;
24 import org.springframework.stereotype.Service; 26 import org.springframework.stereotype.Service;
25 import org.thingsboard.server.common.data.Customer; 27 import org.thingsboard.server.common.data.Customer;
26 import org.thingsboard.server.common.data.EntityView; 28 import org.thingsboard.server.common.data.EntityView;
@@ -41,6 +43,8 @@ import org.thingsboard.server.dao.tenant.TenantDao; @@ -41,6 +43,8 @@ import org.thingsboard.server.dao.tenant.TenantDao;
41 import java.util.ArrayList; 43 import java.util.ArrayList;
42 import java.util.List; 44 import java.util.List;
43 45
  46 +import static org.thingsboard.server.common.data.CacheConstants.DEVICE_CACHE;
  47 +import static org.thingsboard.server.common.data.CacheConstants.ENTITY_VIEW_CACHE;
44 import static org.thingsboard.server.dao.model.ModelConstants.NULL_UUID; 48 import static org.thingsboard.server.dao.model.ModelConstants.NULL_UUID;
45 import static org.thingsboard.server.dao.service.Validator.validateId; 49 import static org.thingsboard.server.dao.service.Validator.validateId;
46 import static org.thingsboard.server.dao.service.Validator.validatePageLink; 50 import static org.thingsboard.server.dao.service.Validator.validatePageLink;
@@ -68,6 +72,10 @@ public class EntityViewServiceImpl extends AbstractEntityService @@ -68,6 +72,10 @@ public class EntityViewServiceImpl extends AbstractEntityService
68 @Autowired 72 @Autowired
69 private CustomerDao customerDao; 73 private CustomerDao customerDao;
70 74
  75 + @Autowired
  76 + private CacheManager cacheManager;
  77 +
  78 + @Cacheable(cacheNames = ENTITY_VIEW_CACHE, key = "{#entityViewId}")
71 @Override 79 @Override
72 public EntityView findEntityViewById(EntityViewId entityViewId) { 80 public EntityView findEntityViewById(EntityViewId entityViewId) {
73 log.trace("Executing findEntityViewById [{}]", entityViewId); 81 log.trace("Executing findEntityViewById [{}]", entityViewId);
@@ -83,6 +91,7 @@ public class EntityViewServiceImpl extends AbstractEntityService @@ -83,6 +91,7 @@ public class EntityViewServiceImpl extends AbstractEntityService
83 .orElse(null); 91 .orElse(null);
84 } 92 }
85 93
  94 + @CacheEvict(cacheNames = ENTITY_VIEW_CACHE, key = "{#entityView.id}")
86 @Override 95 @Override
87 public EntityView saveEntityView(EntityView entityView) { 96 public EntityView saveEntityView(EntityView entityView) {
88 log.trace("Executing save entity view [{}]", entityView); 97 log.trace("Executing save entity view [{}]", entityView);
@@ -107,12 +116,14 @@ public class EntityViewServiceImpl extends AbstractEntityService @@ -107,12 +116,14 @@ public class EntityViewServiceImpl extends AbstractEntityService
107 @Override 116 @Override
108 public void deleteEntityView(EntityViewId entityViewId) { 117 public void deleteEntityView(EntityViewId entityViewId) {
109 log.trace("Executing deleteEntityView [{}]", entityViewId); 118 log.trace("Executing deleteEntityView [{}]", entityViewId);
  119 + Cache cache = cacheManager.getCache(ENTITY_VIEW_CACHE);
110 validateId(entityViewId, INCORRECT_ENTITY_VIEW_ID + entityViewId); 120 validateId(entityViewId, INCORRECT_ENTITY_VIEW_ID + entityViewId);
111 deleteEntityRelations(entityViewId); 121 deleteEntityRelations(entityViewId);
112 EntityView entityView = entityViewDao.findById(entityViewId.getId()); 122 EntityView entityView = entityViewDao.findById(entityViewId.getId());
113 List<Object> list = new ArrayList<>(); 123 List<Object> list = new ArrayList<>();
114 list.add(entityView.getTenantId()); 124 list.add(entityView.getTenantId());
115 list.add(entityView.getName()); 125 list.add(entityView.getName());
  126 + cache.evict(list);
116 entityViewDao.removeById(entityViewId.getId()); 127 entityViewDao.removeById(entityViewId.getId());
117 } 128 }
118 129
@@ -125,6 +136,7 @@ public class EntityViewServiceImpl extends AbstractEntityService @@ -125,6 +136,7 @@ public class EntityViewServiceImpl extends AbstractEntityService
125 return new TextPageData<>(entityViews, pageLink); 136 return new TextPageData<>(entityViews, pageLink);
126 } 137 }
127 138
  139 + @Cacheable(cacheNames = ENTITY_VIEW_CACHE, key = "{#tenantId, #entityId, #pageLink}")
128 @Override 140 @Override
129 public TextPageData<EntityView> findEntityViewByTenantIdAndEntityId(TenantId tenantId, EntityId entityId, 141 public TextPageData<EntityView> findEntityViewByTenantIdAndEntityId(TenantId tenantId, EntityId entityId,
130 TextPageLink pageLink) { 142 TextPageLink pageLink) {
@@ -164,6 +176,7 @@ public class EntityViewServiceImpl extends AbstractEntityService @@ -164,6 +176,7 @@ public class EntityViewServiceImpl extends AbstractEntityService
164 return new TextPageData<>(entityViews, pageLink); 176 return new TextPageData<>(entityViews, pageLink);
165 } 177 }
166 178
  179 + @Cacheable(cacheNames = ENTITY_VIEW_CACHE, key = "{#tenantId, #customerId, #entityId, #pageLink}")
167 @Override 180 @Override
168 public TextPageData<EntityView> findEntityViewsByTenantIdAndCustomerIdAndEntityId(TenantId tenantId, 181 public TextPageData<EntityView> findEntityViewsByTenantIdAndCustomerIdAndEntityId(TenantId tenantId,
169 CustomerId customerId, 182 CustomerId customerId,