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