Browse Source

Add prefix to device credentials cache keys.

pull/1503/head
Igor Kulikov 8 years ago
parent
commit
ffc56f5c23
  1. 6
      dao/src/main/java/org/thingsboard/server/dao/cache/PreviousDeviceCredentialsIdKeyGenerator.java
  2. 4
      dao/src/main/java/org/thingsboard/server/dao/device/DeviceCredentialsServiceImpl.java
  3. 2
      dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheServiceNoSqlTest.java
  4. 2
      dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheServiceSqlTest.java

6
dao/src/main/java/org/thingsboard/server/dao/cache/PreviousDeviceCredentialsIdKeyGenerator.java

@ -22,9 +22,11 @@ import org.thingsboard.server.dao.device.DeviceCredentialsService;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import static org.thingsboard.server.common.data.CacheConstants.DEVICE_CREDENTIALS_CACHE;
public class PreviousDeviceCredentialsIdKeyGenerator implements KeyGenerator { public class PreviousDeviceCredentialsIdKeyGenerator implements KeyGenerator {
private static final String NOT_VALID_DEVICE = "notValidDeviceCredentialsId"; private static final String NOT_VALID_DEVICE = DEVICE_CREDENTIALS_CACHE + "_notValidDeviceCredentialsId";
@Override @Override
public Object generate(Object o, Method method, Object... objects) { public Object generate(Object o, Method method, Object... objects) {
@ -34,7 +36,7 @@ public class PreviousDeviceCredentialsIdKeyGenerator implements KeyGenerator {
if (deviceCredentials.getDeviceId() != null) { if (deviceCredentials.getDeviceId() != null) {
DeviceCredentials oldDeviceCredentials = deviceCredentialsService.findDeviceCredentialsByDeviceId(tenantId, deviceCredentials.getDeviceId()); DeviceCredentials oldDeviceCredentials = deviceCredentialsService.findDeviceCredentialsByDeviceId(tenantId, deviceCredentials.getDeviceId());
if (oldDeviceCredentials != null) { if (oldDeviceCredentials != null) {
return oldDeviceCredentials.getCredentialsId(); return DEVICE_CREDENTIALS_CACHE + "_" + oldDeviceCredentials.getCredentialsId();
} }
} }
return NOT_VALID_DEVICE; return NOT_VALID_DEVICE;

4
dao/src/main/java/org/thingsboard/server/dao/device/DeviceCredentialsServiceImpl.java

@ -54,7 +54,7 @@ public class DeviceCredentialsServiceImpl implements DeviceCredentialsService {
} }
@Override @Override
@Cacheable(cacheNames = DEVICE_CREDENTIALS_CACHE, unless = "#result == null") @Cacheable(cacheNames = DEVICE_CREDENTIALS_CACHE, key = "'deviceCredentials_' + #credentialsId", unless = "#result == null")
public DeviceCredentials findDeviceCredentialsByCredentialsId(String credentialsId) { public DeviceCredentials findDeviceCredentialsByCredentialsId(String credentialsId) {
log.trace("Executing findDeviceCredentialsByCredentialsId [{}]", credentialsId); log.trace("Executing findDeviceCredentialsByCredentialsId [{}]", credentialsId);
validateString(credentialsId, "Incorrect credentialsId " + credentialsId); validateString(credentialsId, "Incorrect credentialsId " + credentialsId);
@ -89,7 +89,7 @@ public class DeviceCredentialsServiceImpl implements DeviceCredentialsService {
} }
@Override @Override
@CacheEvict(cacheNames = DEVICE_CREDENTIALS_CACHE, key = "#deviceCredentials.credentialsId") @CacheEvict(cacheNames = DEVICE_CREDENTIALS_CACHE, key = "'deviceCredentials_' + #deviceCredentials.credentialsId")
public void deleteDeviceCredentials(TenantId tenantId, DeviceCredentials deviceCredentials) { public void deleteDeviceCredentials(TenantId tenantId, DeviceCredentials deviceCredentials) {
log.trace("Executing deleteDeviceCredentials [{}]", deviceCredentials); log.trace("Executing deleteDeviceCredentials [{}]", deviceCredentials);
deviceCredentialsDao.removeById(tenantId, deviceCredentials.getUuidId()); deviceCredentialsDao.removeById(tenantId, deviceCredentials.getUuidId());

2
dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheNoSqlTest.java → dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheServiceNoSqlTest.java

@ -19,5 +19,5 @@ import org.thingsboard.server.dao.service.BaseDeviceCredentialsCacheTest;
import org.thingsboard.server.dao.service.DaoNoSqlTest; import org.thingsboard.server.dao.service.DaoNoSqlTest;
@DaoNoSqlTest @DaoNoSqlTest
public class DeviceCredentialCacheNoSqlTest extends BaseDeviceCredentialsCacheTest { public class DeviceCredentialCacheServiceNoSqlTest extends BaseDeviceCredentialsCacheTest {
} }

2
dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheSqlTest.java → dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheServiceSqlTest.java

@ -19,5 +19,5 @@ import org.thingsboard.server.dao.service.BaseDeviceCredentialsCacheTest;
import org.thingsboard.server.dao.service.DaoSqlTest; import org.thingsboard.server.dao.service.DaoSqlTest;
@DaoSqlTest @DaoSqlTest
public class DeviceCredentialsCacheSqlTest extends BaseDeviceCredentialsCacheTest { public class DeviceCredentialsCacheServiceSqlTest extends BaseDeviceCredentialsCacheTest {
} }
Loading…
Cancel
Save