001
014
015 package com.liferay.portal.security.permission;
016
017 import com.liferay.portal.kernel.util.AutoResetThreadLocal;
018
019
023 public class PermissionThreadLocal {
024
025 public static PermissionChecker getPermissionChecker() {
026 return _permissionChecker.get();
027 }
028
029 public static boolean isAddResource() {
030 return _addResource.get();
031 }
032
033 public static boolean isFlushEnabled() {
034 return _flushEnabled.get();
035 }
036
037 public static void setAddResource(boolean addResource) {
038 _addResource.set(addResource);
039 }
040
041 public static void setIndexEnabled(boolean indexEnabled) {
042 _flushEnabled.set(indexEnabled);
043 }
044
045 public static void setPermissionChecker(
046 PermissionChecker permissionChecker) {
047
048 _permissionChecker.set(permissionChecker);
049 }
050
051 private static final ThreadLocal<Boolean> _addResource =
052 new AutoResetThreadLocal<Boolean>(
053 PermissionThreadLocal.class + "._addResource", true);
054 private static final ThreadLocal<Boolean> _flushEnabled =
055 new AutoResetThreadLocal<Boolean>(
056 PermissionThreadLocal.class + "._flushEnabled", true);
057
058 private static final ThreadLocal<PermissionChecker> _permissionChecker =
059 new AutoResetThreadLocal<PermissionChecker>(
060 PermissionThreadLocal.class + "._permissionChecker") {
061
062 @Override
063 protected PermissionChecker copy(
064 PermissionChecker permissionChecker) {
065
066 return permissionChecker;
067 }
068
069 };
070
071 }