diff --git a/sa-token-dependencies/pom.xml b/sa-token-dependencies/pom.xml index 8388144b..0459feab 100644 --- a/sa-token-dependencies/pom.xml +++ b/sa-token-dependencies/pom.xml @@ -24,8 +24,8 @@ 6.0.0 3.0.9.RELEASE 2.2.3 - 1.4.5 - 3.2.54 + 1.4.7 + 3.2.65 4.9.17 3.14.4 2.5.0 diff --git a/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisBase64.java b/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisBase64.java index 2c95e5bd..2456e1c7 100644 --- a/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisBase64.java +++ b/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisBase64.java @@ -40,13 +40,7 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { */ @Override public void set(String key, String value, long timeout) { - if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - // 判断是否为永不过期 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - redisBucket.store(key, value, (int) SaTokenDao.NEVER_EXPIRE); - } else { + if (timeout > 0 || timeout == SaTokenDao.NEVER_EXPIRE) { redisBucket.store(key, value, (int) timeout); } } @@ -57,10 +51,6 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { @Override public void update(String key, String value) { long expire = getTimeout(key); - // -2 = 无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } this.set(key, value, expire); } @@ -85,18 +75,9 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { */ @Override public void updateTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getTimeout(key); - if (expire == SaTokenDao.NEVER_EXPIRE) { - // 如果其已经被设置为永久,则不作任何处理 - } else { - // 如果尚未被设置为永久,那么再次set一次 - this.set(key, this.get(key), timeout); - } - return; + if (redisBucket.exists(key)) { + redisBucket.delay(key, (int) timeout); } - redisBucket.delay(key, (int) timeout); } @@ -113,13 +94,7 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { */ @Override public void setObject(String key, Object object, long timeout) { - if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - // 判断是否为永不过期 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - redisBucket.storeAndSerialize(key, object); - } else { + if (timeout > 0 || timeout == SaTokenDao.NEVER_EXPIRE) { redisBucket.storeAndSerialize(key, object, (int) timeout); } } @@ -130,10 +105,6 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { @Override public void updateObject(String key, Object object) { long expire = getObjectTimeout(key); - // -2 = 无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } this.setObject(key, object, expire); } @@ -158,18 +129,9 @@ public class SaTokenDaoOfRedisBase64 implements SaTokenDao { */ @Override public void updateObjectTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getObjectTimeout(key); - if (expire == SaTokenDao.NEVER_EXPIRE) { - // 如果其已经被设置为永久,则不作任何处理 - } else { - // 如果尚未被设置为永久,那么再次set一次 - this.setObject(key, this.getObject(key), timeout); - } - return; + if (redisBucket.exists(key)) { + redisBucket.delay(key, (int) timeout); } - redisBucket.delay(key, (int) timeout); } diff --git a/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisJson.java b/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisJson.java index 98ae43a1..922fb80a 100644 --- a/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisJson.java +++ b/sa-token-plugin/sa-token-dao-redisx/src/main/java/cn/dev33/satoken/dao/SaTokenDaoOfRedisJson.java @@ -56,13 +56,7 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { */ @Override public void set(String key, String value, long timeout) { - if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } - // 判断是否为永不过期 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - redisBucket.store(key, value, (int) SaTokenDao.NEVER_EXPIRE); - } else { + if (timeout > 0 || timeout == SaTokenDao.NEVER_EXPIRE) { redisBucket.store(key, value, (int) timeout); } } @@ -73,10 +67,6 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { @Override public void update(String key, String value) { long expire = getTimeout(key); - // -2 = 无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } this.set(key, value, expire); } @@ -101,18 +91,9 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { */ @Override public void updateTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getTimeout(key); - if (expire == SaTokenDao.NEVER_EXPIRE) { - // 如果其已经被设置为永久,则不作任何处理 - } else { - // 如果尚未被设置为永久,那么再次set一次 - this.set(key, this.get(key), timeout); - } - return; + if (redisBucket.exists(key)) { + redisBucket.delay(key, (int) timeout); } - redisBucket.delay(key, (int) timeout); } @@ -129,12 +110,10 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { */ @Override public void setObject(String key, Object object, long timeout) { - if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) { - return; + if (timeout > 0 || timeout == SaTokenDao.NEVER_EXPIRE) { + String value = ONode.serialize(object); + set(key, value, timeout); } - - String value = ONode.serialize(object); - set(key, value, timeout); } /** @@ -143,10 +122,6 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { @Override public void updateObject(String key, Object object) { long expire = getObjectTimeout(key); - // -2 = 无此键 - if (expire == SaTokenDao.NOT_VALUE_EXPIRE) { - return; - } this.setObject(key, object, expire); } @@ -171,18 +146,9 @@ public class SaTokenDaoOfRedisJson implements SaTokenDao { */ @Override public void updateObjectTimeout(String key, long timeout) { - // 判断是否想要设置为永久 - if (timeout == SaTokenDao.NEVER_EXPIRE) { - long expire = getObjectTimeout(key); - if (expire == SaTokenDao.NEVER_EXPIRE) { - // 如果其已经被设置为永久,则不作任何处理 - } else { - // 如果尚未被设置为永久,那么再次set一次 - this.setObject(key, this.getObject(key), timeout); - } - return; + if (redisBucket.exists(key)) { + redisBucket.delay(key, (int) timeout); } - redisBucket.delay(key, (int) timeout); }