1
14
15 package com.liferay.portlet.tasks.service.permission;
16
17 import com.liferay.portal.kernel.exception.PortalException;
18 import com.liferay.portal.kernel.exception.SystemException;
19 import com.liferay.portal.security.auth.PrincipalException;
20 import com.liferay.portal.security.permission.PermissionChecker;
21 import com.liferay.portlet.tasks.model.TasksProposal;
22 import com.liferay.portlet.tasks.service.TasksProposalLocalServiceUtil;
23
24
29 public class TasksProposalPermission {
30
31 public static void check(
32 PermissionChecker permissionChecker, long proposalId,
33 String actionId)
34 throws PortalException, SystemException {
35
36 if (!contains(permissionChecker, proposalId, actionId)) {
37 throw new PrincipalException();
38 }
39 }
40
41 public static void check(
42 PermissionChecker permissionChecker, TasksProposal proposal,
43 String actionId)
44 throws PortalException {
45
46 if (!contains(permissionChecker, proposal, actionId)) {
47 throw new PrincipalException();
48 }
49 }
50
51 public static boolean contains(
52 PermissionChecker permissionChecker, long proposalId,
53 String actionId)
54 throws PortalException, SystemException {
55
56 TasksProposal proposal =
57 TasksProposalLocalServiceUtil.getProposal(proposalId);
58
59 return contains(permissionChecker, proposal, actionId);
60 }
61
62 public static boolean contains(
63 PermissionChecker permissionChecker, TasksProposal proposal,
64 String actionId) {
65
66 if (permissionChecker.hasOwnerPermission(
67 proposal.getCompanyId(), TasksProposal.class.getName(),
68 proposal.getProposalId(), proposal.getUserId(), actionId)) {
69
70 return true;
71 }
72
73 return permissionChecker.hasPermission(
74 proposal.getGroupId(), TasksProposal.class.getName(),
75 proposal.getProposalId(), actionId);
76 }
77
78 }