1
19
20 package com.liferay.portlet.documentlibrary.service.permission;
21
22 import com.liferay.portal.PortalException;
23 import com.liferay.portal.SystemException;
24 import com.liferay.portal.security.auth.PrincipalException;
25 import com.liferay.portal.security.permission.PermissionChecker;
26 import com.liferay.portlet.documentlibrary.model.DLFileShortcut;
27 import com.liferay.portlet.documentlibrary.service.DLFileShortcutLocalServiceUtil;
28
29
35 public class DLFileShortcutPermission {
36
37 public static void check(
38 PermissionChecker permissionChecker, long fileShortcutId,
39 String actionId)
40 throws PortalException, SystemException {
41
42 if (!contains(permissionChecker, fileShortcutId, actionId)) {
43 throw new PrincipalException();
44 }
45 }
46
47 public static void check(
48 PermissionChecker permissionChecker, DLFileShortcut fileShortcut,
49 String actionId)
50 throws PortalException {
51
52 if (!contains(permissionChecker, fileShortcut, actionId)) {
53 throw new PrincipalException();
54 }
55 }
56
57 public static boolean contains(
58 PermissionChecker permissionChecker, long fileShortcutId,
59 String actionId)
60 throws PortalException, SystemException {
61
62 DLFileShortcut fileShortcut =
63 DLFileShortcutLocalServiceUtil.getFileShortcut(fileShortcutId);
64
65 return contains(permissionChecker, fileShortcut, actionId);
66 }
67
68 public static boolean contains(
69 PermissionChecker permissionChecker, DLFileShortcut fileShortcut,
70 String actionId) {
71
72 if (permissionChecker.hasOwnerPermission(
73 fileShortcut.getCompanyId(), DLFileShortcut.class.getName(),
74 fileShortcut.getFileShortcutId(), fileShortcut.getUserId(),
75 actionId)) {
76
77 return true;
78 }
79
80 return permissionChecker.hasPermission(
81 fileShortcut.getGroupId(), DLFileShortcut.class.getName(),
82 fileShortcut.getFileShortcutId(), actionId);
83 }
84
85 }