1
14
15 package com.liferay.portal.security.permission;
16
17 import com.liferay.portal.kernel.log.Log;
18 import com.liferay.portal.kernel.log.LogFactoryUtil;
19 import com.liferay.portal.model.User;
20 import com.liferay.portal.security.auth.PrincipalThreadLocal;
21 import com.liferay.portal.util.PropsValues;
22
23
28 public class PermissionCheckerUtil {
29
30 public static void setThreadValues(User user) {
31 if (user == null) {
32 PrincipalThreadLocal.setName(null);
33 PermissionThreadLocal.setPermissionChecker(null);
34
35 return;
36 }
37
38 long userId = user.getUserId();
39
40 String name = String.valueOf(userId);
41
42 PrincipalThreadLocal.setName(name);
43
44 try {
45 PermissionChecker permissionChecker =
46 PermissionThreadLocal.getPermissionChecker();
47
48 if (permissionChecker == null) {
49 permissionChecker = (PermissionChecker)Class.forName(
50 PropsValues.PERMISSIONS_CHECKER).newInstance();
51 }
52
53 permissionChecker.init(user, _CHECK_GUEST);
54
55 PermissionThreadLocal.setPermissionChecker(permissionChecker);
56 }
57 catch (Exception e) {
58 _log.error(e);
59 }
60 }
61
62 private static boolean _CHECK_GUEST = true;
63
64 private static Log _log = LogFactoryUtil.getLog(
65 PermissionCheckerUtil.class);
66
67 }