Skip to content

Commit c8543dd

Browse files
committed
fix #40
1 parent 9507080 commit c8543dd

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

springboot-starter-security/src/main/java/com/codingapi/springboot/security/redis/RedisTokenGateway.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import java.util.Set;
99
import java.util.UUID;
1010
import java.util.concurrent.TimeUnit;
11+
import java.util.function.Predicate;
1112

1213
public class RedisTokenGateway {
1314

@@ -48,5 +49,17 @@ public void removeUsername(String username) {
4849
}
4950
}
5051

52+
public void removeUsername(String username, Predicate<Token> predicate) {
53+
Set<String> keys = redisTemplate.keys(username + ":*");
54+
if (keys != null && !keys.isEmpty()) {
55+
for (String key : keys) {
56+
Token token = parser(key);
57+
if (token != null && predicate.test(token)) {
58+
redisTemplate.delete(key);
59+
}
60+
}
61+
}
62+
}
63+
5164

5265
}

0 commit comments

Comments
 (0)