001
014
015 package com.liferay.portlet.mobiledevicerules.service.permission;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.staging.permission.StagingPermissionUtil;
019 import com.liferay.portal.security.auth.PrincipalException;
020 import com.liferay.portal.security.permission.PermissionChecker;
021 import com.liferay.portal.util.PortletKeys;
022
023
026 public class MDRPermissionImpl implements MDRPermission {
027
028 @Override
029 public void check(
030 PermissionChecker permissionChecker, long groupId, String actionId)
031 throws PortalException {
032
033 if (!contains(permissionChecker, groupId, actionId)) {
034 throw new PrincipalException();
035 }
036 }
037
038 @Override
039 public boolean contains(
040 PermissionChecker permissionChecker, long groupId, String actionId) {
041
042 Boolean hasPermission = StagingPermissionUtil.hasPermission(
043 permissionChecker, groupId, RESOURCE_NAME, groupId,
044 PortletKeys.MOBILE_DEVICE_SITE_ADMIN, actionId);
045
046 if (hasPermission != null) {
047 return hasPermission.booleanValue();
048 }
049
050 return permissionChecker.hasPermission(
051 groupId, RESOURCE_NAME, groupId, actionId);
052 }
053
054 }