Class ThreadLocalPermissionsCacheInternal
java.lang.Object
com.atlassian.confluence.internal.security.ThreadLocalPermissionsCacheInternal
Wrapper around the
ThreadLocalCache
to deal with caching space permissions and application access.
Note the publicly-exposed com.atlassian.confluence.security.ThreadLocalPermissionsCache
(which has become de facto plugin API) calls here.
We hide this one so that access to the mutator methods is confined to core: the public one's mutators are deprecated no-ops.
ThreadLocalCache
uses) to work,
ThreadLocalCache.init()
must be called.
Normally this is done by ThreadLocalCacheFilter
.
In integration tests you'll need to do it manually.- See Also:
-
com.atlassian.confluence.security.ThreadLocalPermissionsCache
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic void
cacheCanUseConfluence
(com.atlassian.user.User user, boolean canUse) Deprecated.static void
cachePermissionExemption
(com.atlassian.user.User user, boolean exempt) static void
cacheSpacePermission
(com.atlassian.user.User user, String permission, Space space, boolean hasPermission) static void
cacheUserAccessStatus
(@Nullable com.atlassian.user.User user, @NonNull AccessStatus accessStatus) static Boolean
canUseConfluence
(com.atlassian.user.User user) Deprecated.since 5.9: only here to support legacycom.atlassian.confluence.security.ThreadLocalPermissionsCache#canUseConfluence(User)
.static void
static void
static void
flush()
static void
static void
flushUserAccessStatusForUser
(@Nullable com.atlassian.user.User user) static com.atlassian.fugue.Option<AccessStatus>
getUserAccessStatus
(com.atlassian.user.User user) static Boolean
hasPermissionExemption
(com.atlassian.user.User user) static Boolean
hasSpacePermission
(String permission, Space space, com.atlassian.user.User user) static boolean
-
Constructor Details
-
ThreadLocalPermissionsCacheInternal
public ThreadLocalPermissionsCacheInternal()
-
-
Method Details
-
hasSpacePermission
-
cacheSpacePermission
-
canUseConfluence
Deprecated.since 5.9: only here to support legacycom.atlassian.confluence.security.ThreadLocalPermissionsCache#canUseConfluence(User)
. UseConfluenceAccessManager.getUserAccessStatus(com.atlassian.confluence.user.ConfluenceUser)
instead. -
cacheCanUseConfluence
Deprecated.since 5.9: only here to support legacycom.atlassian.confluence.security.ThreadLocalPermissionsCache#canUseConfluence(User)
. -
getUserAccessStatus
public static com.atlassian.fugue.Option<AccessStatus> getUserAccessStatus(com.atlassian.user.User user) -
cacheUserAccessStatus
public static void cacheUserAccessStatus(@Nullable com.atlassian.user.User user, @NonNull AccessStatus accessStatus) -
flushUserAccessStatusForUser
public static void flushUserAccessStatusForUser(@Nullable com.atlassian.user.User user) -
flushUserAccessStatusForAllUsers
public static void flushUserAccessStatusForAllUsers() -
flush
public static void flush() -
hasPermissionExemption
-
cachePermissionExemption
public static void cachePermissionExemption(com.atlassian.user.User user, boolean exempt) -
hasTemporaryPermissionExemption
public static boolean hasTemporaryPermissionExemption() -
enableTemporaryPermissionExemption
public static void enableTemporaryPermissionExemption() -
disableTemporaryPermissionExemption
public static void disableTemporaryPermissionExemption()
-
com.atlassian.confluence.security.ThreadLocalPermissionsCache#canUseConfluence(User)
.