Interface SpacePermissionQueryManager
-
- All Known Implementing Classes:
DefaultSpacePermissionQueryManager
@Internal public interface SpacePermissionQueryManager
Helps build database queries forSpacePermission
s, without interpreting the logic of the spacepermissions table in multiple DAO's.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description io.atlassian.fugue.Either<AccessDenied,SpacePermissionQueryBuilder>
createSpacePermissionQueryBuilder(@Nullable ConfluenceUser user, @NonNull String permissionType)
Constructs aSpacePermissionQueryBuilder
for use by DAO's to construct database queries, without having to reach out to the manager level to determine which categories of permission apply for the current user.
-
-
-
Method Detail
-
createSpacePermissionQueryBuilder
io.atlassian.fugue.Either<AccessDenied,SpacePermissionQueryBuilder> createSpacePermissionQueryBuilder(@Nullable ConfluenceUser user, @NonNull String permissionType)
Constructs aSpacePermissionQueryBuilder
for use by DAO's to construct database queries, without having to reach out to the manager level to determine which categories of permission apply for the current user. SeeSpacePermissionAccessMapper
andSpacePermissionSubjectType
.- Parameters:
user
- the user being checked for permissions, or null for anonymouspermissionType
- theSpacePermission
permission type- Returns:
- a
SpacePermissionQueryBuilder
for the user / anonymous ORAccessDenied
if the user does not have access to Confluence, or the permissionType is not valid for the user (depends on theirAccessStatus
).
-
-