public static void setThreadValues(User user) { if (user == null) { PrincipalThreadLocal.setName(null); PermissionThreadLocal.setPermissionChecker(null); return; } long userId = user.getUserId(); String name = String.valueOf(userId); PrincipalThreadLocal.setName(name); try { PermissionChecker permissionChecker = PermissionThreadLocal.getPermissionChecker(); if (permissionChecker == null) { permissionChecker = (PermissionChecker) Class.forName(PropsValues.PERMISSIONS_CHECKER).newInstance(); } permissionChecker.init(user); PermissionThreadLocal.setPermissionChecker(permissionChecker); } catch (Exception e) { _log.error(e, e); } }
public static void clearResourceBlockCache(long companyId, long groupId, String name) { if (ExportImportThreadLocal.isImportInProcess() || !PermissionThreadLocal.isFlushResourceBlockEnabled(companyId, groupId, name)) { return; } _resourceBlockIdsBagCacheIndexer.removeKeys( ResourceBlockIdsBagKeyIndexEncoder.encode(companyId, groupId, name)); }
public static void clearResourcePermissionCache(int scope, String name, String primKey) { if (ExportImportThreadLocal.isImportInProcess() || !PermissionThreadLocal.isFlushResourcePermissionEnabled(name, primKey)) { return; } if (scope == ResourceConstants.SCOPE_INDIVIDUAL) { _permissionPortalCacheNamePrimKeyIndexer.removeKeys( PermissionKeyNamePrimKeyIndexEncoder.encode(name, primKey)); } else if (scope == ResourceConstants.SCOPE_GROUP) { _permissionPortalCacheGroupIdIndexer.removeKeys(Long.valueOf(primKey)); } else { _permissionPortalCache.removeAll(); } }