public class DefaultUserTokenManager extends Object implements UserTokenManager
| 限定符和类型 | 字段和说明 |
|---|---|
protected ConcurrentMap<String,SimpleUserToken> |
tokenStorage |
protected ConcurrentMap<String,Set<String>> |
userStorage |
| 构造器和说明 |
|---|
DefaultUserTokenManager() |
DefaultUserTokenManager(ConcurrentMap<String,SimpleUserToken> tokenStorage) |
DefaultUserTokenManager(ConcurrentMap<String,SimpleUserToken> tokenStorage,
ConcurrentMap<String,Set<String>> userStorage) |
| 限定符和类型 | 方法和说明 |
|---|---|
List<UserToken> |
allLoggedUser() |
void |
allLoggedUser(java.util.function.Consumer<UserToken> consumer)
遍历全部token信息
|
void |
changeTokenState(SimpleUserToken userToken,
TokenState state) |
void |
changeTokenState(String token,
TokenState state)
修改token的状态
|
void |
changeUserState(String user,
TokenState state)
修改userId的状态
|
void |
checkExpiredToken()
检查已过期的token,并将其remove
|
AllopatricLoginMode |
getAllopatricLoginMode() |
SimpleUserToken |
getByToken(String token)
根据token获取用户令牌信息
|
List<UserToken> |
getByUserId(String userId)
根据用户id,获取全部令牌信息,如果没有则返回空集合而不是
null |
protected Set<String> |
getUserToken(String userId) |
protected void |
publishEvent(org.springframework.context.ApplicationEvent event) |
void |
setAllopatricLoginMode(AllopatricLoginMode allopatricLoginMode) |
void |
setEventPublisher(org.springframework.context.ApplicationEventPublisher eventPublisher) |
UserToken |
signIn(String token,
String type,
String userId,
long maxInactiveInterval)
登记一个用户的token
|
void |
signOutByToken(String token)
根据token删除
|
void |
signOutByUserId(String userId)
删除用户授权信息
|
protected void |
syncToken(UserToken userToken)
同步令牌信息,如果使用redisson等来存储token,应该重写此方法并调用
this#tokenStorage.put |
boolean |
tokenIsLoggedIn(String token) |
long |
totalToken() |
long |
totalUser() |
void |
touch(String token)
更新token,使其不过期
|
boolean |
userIsLoggedIn(String userId) |
protected final ConcurrentMap<String,SimpleUserToken> tokenStorage
protected final ConcurrentMap<String,Set<String>> userStorage
public DefaultUserTokenManager()
public DefaultUserTokenManager(ConcurrentMap<String,SimpleUserToken> tokenStorage)
public DefaultUserTokenManager(ConcurrentMap<String,SimpleUserToken> tokenStorage, ConcurrentMap<String,Set<String>> userStorage)
@Autowired(required=false) public void setEventPublisher(org.springframework.context.ApplicationEventPublisher eventPublisher)
public void setAllopatricLoginMode(AllopatricLoginMode allopatricLoginMode)
public AllopatricLoginMode getAllopatricLoginMode()
public SimpleUserToken getByToken(String token)
UserTokenManagergetByToken 在接口中 UserTokenManagertoken - tokenpublic List<UserToken> getByUserId(String userId)
UserTokenManagernullgetByUserId 在接口中 UserTokenManageruserId - 用户idpublic boolean userIsLoggedIn(String userId)
userIsLoggedIn 在接口中 UserTokenManageruserId - 用户IDpublic boolean tokenIsLoggedIn(String token)
tokenIsLoggedIn 在接口中 UserTokenManagertoken - tokenpublic long totalUser()
totalUser 在接口中 UserTokenManagerpublic long totalToken()
totalToken 在接口中 UserTokenManagerpublic void allLoggedUser(java.util.function.Consumer<UserToken> consumer)
UserTokenManagerallLoggedUser 在接口中 UserTokenManagerconsumer - token消费者public List<UserToken> allLoggedUser()
allLoggedUser 在接口中 UserTokenManagerpublic void signOutByUserId(String userId)
UserTokenManagersignOutByUserId 在接口中 UserTokenManageruserId - 用户IDpublic void signOutByToken(String token)
UserTokenManagersignOutByToken 在接口中 UserTokenManagertoken - 令牌UserTokenRemovedEventprotected void publishEvent(org.springframework.context.ApplicationEvent event)
public void changeTokenState(SimpleUserToken userToken, TokenState state)
public void changeTokenState(String token, TokenState state)
UserTokenManagerchangeTokenState 在接口中 UserTokenManagertoken - tokenstate - 状态UserTokenChangedEventpublic void changeUserState(String user, TokenState state)
UserTokenManagerchangeUserState 在接口中 UserTokenManageruser - userIdstate - 状态UserTokenChangedEvent,
this#changeTokenStatepublic UserToken signIn(String token, String type, String userId, long maxInactiveInterval)
UserTokenManagersignIn 在接口中 UserTokenManagertoken - tokentype - 令牌类型userId - 用户idmaxInactiveInterval - 最大不活动时间,超过后令牌状态UserToken.getState()将变为过期TokenState.expiredUserTokenCreatedEventpublic void touch(String token)
UserTokenManagertouch 在接口中 UserTokenManagertoken - tokenpublic void checkExpiredToken()
UserTokenManagercheckExpiredToken 在接口中 UserTokenManagerthis#signOutByToken(String)protected void syncToken(UserToken userToken)
this#tokenStorage.putuserToken - 令牌Copyright © 2016–2020. All rights reserved.