Package com.bytedesk.core.ip_white
Class IpWhiteRestService
java.lang.Object
com.bytedesk.core.base.BaseRestService<IpWhiteEntity,IpWhiteRequest,IpWhiteResponse>
com.bytedesk.core.ip_white.IpWhiteRestService
@Service
public class IpWhiteRestService
extends BaseRestService<IpWhiteEntity,IpWhiteRequest,IpWhiteResponse>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final AuthService
private final IpCacheService
private final IpWhiteRepository
private final org.modelmapper.ModelMapper
private final UidUtils
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionconvertToResponse
(IpWhiteEntity entity) long
count()
create
(IpWhiteRequest request) protected org.springframework.data.jpa.domain.Specification<IpWhiteEntity>
createSpecification
(IpWhiteRequest request) 创建Specification对象,子类必须实现 用于queryByOrg的通用实现void
delete
(IpWhiteRequest request) void
deleteByUid
(String uid) protected IpWhiteEntity
doSave
(IpWhiteEntity entity) 子类实现具体的保存逻辑protected org.springframework.data.domain.Page<IpWhiteEntity>
executePageQuery
(org.springframework.data.jpa.domain.Specification<IpWhiteEntity> specification, org.springframework.data.domain.Pageable pageable) 执行分页查询,子类必须实现 用于queryByOrg的通用实现handleOptimisticLockingFailureException
(org.springframework.orm.ObjectOptimisticLockingFailureException e, IpWhiteEntity entity) boolean
检查IP是否在白名单中(支持CIDR格式的IP段)boolean
查找匹配的IP白名单条目(支持CIDR格式)org.springframework.data.domain.Page<IpWhiteResponse>
queryByOrg
(IpWhiteRequest request) 通用的queryByOrg实现 子类如果有特殊逻辑可以重写此方法queryByUid
(IpWhiteRequest request) 通用的queryByUid实现org.springframework.data.domain.Page<IpWhiteResponse>
queryByUser
(IpWhiteRequest request) 通用的queryByUser实现 子类如果有特殊逻辑可以重写此方法update
(IpWhiteRequest request) Methods inherited from class com.bytedesk.core.base.BaseRestService
deleteByOrgUid, findByOrgUid, getUidFromRequest, recover, save, setUserUidToRequest
-
Field Details
-
ipWhiteRepository
-
modelMapper
private final org.modelmapper.ModelMapper modelMapper -
uidUtils
-
authService
-
ipCacheService
-
-
Constructor Details
-
IpWhiteRestService
public IpWhiteRestService()
-
-
Method Details
-
queryByOrg
Description copied from class:BaseRestService
通用的queryByOrg实现 子类如果有特殊逻辑可以重写此方法- Overrides:
queryByOrg
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
queryByUser
Description copied from class:BaseRestService
通用的queryByUser实现 子类如果有特殊逻辑可以重写此方法- Overrides:
queryByUser
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
findByUid
- Specified by:
findByUid
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
findByIp
@Cacheable(value="ipWhite", key="#ip", unless="#result == null") public Optional<IpWhiteEntity> findByIp(String ip) -
isIpInWhitelist
检查IP是否在白名单中(支持CIDR格式的IP段)- Parameters:
ip
- 要检查的IP地址- Returns:
- 如果IP在白名单中返回true,否则返回false
-
isIpInWhitelistEntry
查找匹配的IP白名单条目(支持CIDR格式)- Parameters:
ip
- 要检查的IP地址- Returns:
- 匹配的白名单条目,如果没有匹配则返回空
-
create
- Specified by:
create
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
update
- Specified by:
update
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
count
public long count() -
doSave
Description copied from class:BaseRestService
子类实现具体的保存逻辑- Specified by:
doSave
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
deleteByUid
- Specified by:
deleteByUid
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
delete
- Specified by:
delete
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
handleOptimisticLockingFailureException
public IpWhiteEntity handleOptimisticLockingFailureException(org.springframework.orm.ObjectOptimisticLockingFailureException e, IpWhiteEntity entity) - Specified by:
handleOptimisticLockingFailureException
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
convertToResponse
- Specified by:
convertToResponse
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
queryByUid
Description copied from class:BaseRestService
通用的queryByUid实现- Overrides:
queryByUid
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
createSpecification
protected org.springframework.data.jpa.domain.Specification<IpWhiteEntity> createSpecification(IpWhiteRequest request) Description copied from class:BaseRestService
创建Specification对象,子类必须实现 用于queryByOrg的通用实现- Specified by:
createSpecification
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-
executePageQuery
protected org.springframework.data.domain.Page<IpWhiteEntity> executePageQuery(org.springframework.data.jpa.domain.Specification<IpWhiteEntity> specification, org.springframework.data.domain.Pageable pageable) Description copied from class:BaseRestService
执行分页查询,子类必须实现 用于queryByOrg的通用实现- Specified by:
executePageQuery
in classBaseRestService<IpWhiteEntity,
IpWhiteRequest, IpWhiteResponse>
-