Package com.bytedesk.core.rbac.token
Class TokenRestService
java.lang.Object
com.bytedesk.core.base.BaseRestService<TokenEntity,TokenRequest,TokenResponse>
com.bytedesk.core.rbac.token.TokenRestService
@Service
public class TokenRestService
extends BaseRestService<TokenEntity,TokenRequest,TokenResponse>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AuthServiceprivate final org.modelmapper.ModelMapperprivate final TokenRepositoryprivate final UidUtils -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconvertToResponse(TokenEntity entity) create(TokenRequest request) protected org.springframework.data.jpa.domain.Specification<TokenEntity>createSpecification(TokenRequest request) 创建Specification对象,子类必须实现 用于queryByOrg的通用实现voiddelete(TokenRequest request) voiddeleteByUid(String uid) protected TokenEntitydoSave(TokenEntity entity) 子类实现具体的保存逻辑protected org.springframework.data.domain.Page<TokenEntity>executePageQuery(org.springframework.data.jpa.domain.Specification<TokenEntity> spec, org.springframework.data.domain.Pageable pageable) 执行分页查询,子类必须实现 用于queryByOrg的通用实现findByAccessToken(String accessToken) 根据accessToken查找Token实体generateAccessToken(TokenRequest request) handleOptimisticLockingFailureException(org.springframework.orm.ObjectOptimisticLockingFailureException e, TokenEntity entity) update(TokenRequest request) booleanvalidateAccessToken(String accessToken) 验证accessToken是否有效 参考AuthTokenFilter中的验证逻辑Methods inherited from class com.bytedesk.core.base.BaseRestService
deleteByOrgUid, findByOrgUid, getUidFromRequest, queryByOrg, queryByUid, queryByUser, recover, save, setUserUidToRequest
-
Field Details
-
tokenRepository
-
modelMapper
private final org.modelmapper.ModelMapper modelMapper -
uidUtils
-
authService
-
-
Constructor Details
-
TokenRestService
public TokenRestService()
-
-
Method Details
-
createSpecification
protected org.springframework.data.jpa.domain.Specification<TokenEntity> createSpecification(TokenRequest request) Description copied from class:BaseRestService创建Specification对象,子类必须实现 用于queryByOrg的通用实现- Specified by:
createSpecificationin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
executePageQuery
protected org.springframework.data.domain.Page<TokenEntity> executePageQuery(org.springframework.data.jpa.domain.Specification<TokenEntity> spec, org.springframework.data.domain.Pageable pageable) Description copied from class:BaseRestService执行分页查询,子类必须实现 用于queryByOrg的通用实现- Specified by:
executePageQueryin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
findByUid
@Cacheable(cacheNames="token", key="#uid", unless="#result == null") public Optional<TokenEntity> findByUid(String uid) - Specified by:
findByUidin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
findByAccessToken
@Cacheable(cacheNames="token", key="#accessToken", unless="#result == null") public Optional<TokenEntity> findByAccessToken(String accessToken) 根据accessToken查找Token实体- Parameters:
accessToken- JWT访问令牌- Returns:
- Optional<TokenEntity>
-
create
- Specified by:
createin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
update
- Specified by:
updatein classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
doSave
Description copied from class:BaseRestService子类实现具体的保存逻辑- Specified by:
doSavein classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
deleteByUid
- Specified by:
deleteByUidin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
delete
- Specified by:
deletein classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
handleOptimisticLockingFailureException
public TokenEntity handleOptimisticLockingFailureException(org.springframework.orm.ObjectOptimisticLockingFailureException e, TokenEntity entity) - Specified by:
handleOptimisticLockingFailureExceptionin classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
convertToResponse
- Specified by:
convertToResponsein classBaseRestService<TokenEntity,TokenRequest, TokenResponse>
-
generateAccessToken
-
validateAccessToken
验证accessToken是否有效 参考AuthTokenFilter中的验证逻辑- Parameters:
accessToken- JWT访问令牌- Returns:
- boolean 是否有效
-