1
14
15 package com.liferay.portlet.tags.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.tags.model.TagsVocabulary;
22 import com.liferay.portlet.tags.service.TagsVocabularyLocalServiceUtil;
23
24
29 public class TagsVocabularyPermission {
30
31 public static void check(
32 PermissionChecker permissionChecker, long vocabularyId,
33 String actionId)
34 throws PortalException, SystemException {
35
36 if (!contains(permissionChecker, vocabularyId, actionId)) {
37 throw new PrincipalException();
38 }
39 }
40
41 public static void check(
42 PermissionChecker permissionChecker, TagsVocabulary vocabulary,
43 String actionId)
44 throws PortalException {
45
46 if (!contains(permissionChecker, vocabulary, actionId)) {
47 throw new PrincipalException();
48 }
49 }
50
51 public static boolean contains(
52 PermissionChecker permissionChecker, long vocabularyId,
53 String actionId)
54 throws PortalException, SystemException {
55
56 TagsVocabulary vocabulary =
57 TagsVocabularyLocalServiceUtil.getVocabulary(vocabularyId);
58
59 return contains(permissionChecker, vocabulary, actionId);
60 }
61
62 public static boolean contains(
63 PermissionChecker permissionChecker, TagsVocabulary vocabulary,
64 String actionId) {
65
66 if (permissionChecker.hasOwnerPermission(
67 vocabulary.getCompanyId(), TagsVocabulary.class.getName(),
68 vocabulary.getVocabularyId(), vocabulary.getUserId(),
69 actionId)) {
70
71 return true;
72 }
73
74 return permissionChecker.hasPermission(
75 vocabulary.getGroupId(), TagsVocabulary.class.getName(),
76 vocabulary.getVocabularyId(), actionId);
77 }
78
79 }