001
014
015 package com.liferay.portlet.enterpriseadmin.search;
016
017 import com.liferay.portal.kernel.dao.search.RowChecker;
018 import com.liferay.portal.kernel.log.Log;
019 import com.liferay.portal.kernel.log.LogFactoryUtil;
020 import com.liferay.portal.model.Group;
021 import com.liferay.portal.model.ResourceConstants;
022 import com.liferay.portal.model.Role;
023 import com.liferay.portal.service.PermissionLocalServiceUtil;
024
025 import javax.portlet.RenderResponse;
026
027
030 public class GroupPermissionChecker extends RowChecker {
031
032 public GroupPermissionChecker(
033 RenderResponse renderResponse, Role role, String resourceName,
034 String actionId) {
035
036 super(renderResponse);
037
038 _role = role;
039 _resourceName = resourceName;
040 _actionId = actionId;
041 }
042
043 public boolean isChecked(Object obj) {
044 Group group = (Group)obj;
045
046 try {
047 return PermissionLocalServiceUtil.hasRolePermission(
048 _role.getRoleId(), group.getCompanyId(), _resourceName,
049 ResourceConstants.SCOPE_GROUP,
050 String.valueOf(group.getGroupId()), _actionId);
051 }
052 catch (Exception e) {
053 _log.error(e);
054
055 return false;
056 }
057 }
058
059 private static Log _log = LogFactoryUtil.getLog(
060 GroupPermissionChecker.class);
061
062 private Role _role;
063 private String _resourceName;
064 private String _actionId;
065
066 }