001
014
015 package com.liferay.portal.service.impl;
016
017 import com.liferay.portal.NoSuchUserGroupGroupRoleException;
018 import com.liferay.portal.kernel.exception.PortalException;
019 import com.liferay.portal.kernel.exception.SystemException;
020 import com.liferay.portal.model.Role;
021 import com.liferay.portal.model.UserGroup;
022 import com.liferay.portal.model.UserGroupGroupRole;
023 import com.liferay.portal.security.permission.PermissionCacheUtil;
024 import com.liferay.portal.service.base.UserGroupGroupRoleLocalServiceBaseImpl;
025 import com.liferay.portal.service.persistence.UserGroupGroupRolePK;
026
027 import java.util.List;
028
029
032 public class UserGroupGroupRoleLocalServiceImpl
033 extends UserGroupGroupRoleLocalServiceBaseImpl {
034
035 @Override
036 public void addUserGroupGroupRoles(
037 long userGroupId, long groupId, long[] roleIds)
038 throws SystemException {
039
040 for (long roleId : roleIds) {
041 UserGroupGroupRolePK pk = new UserGroupGroupRolePK(
042 userGroupId, groupId, roleId);
043
044 UserGroupGroupRole userGroupGroupRole =
045 userGroupGroupRolePersistence.fetchByPrimaryKey(pk);
046
047 if (userGroupGroupRole == null) {
048 userGroupGroupRole = userGroupGroupRolePersistence.create(pk);
049
050 userGroupGroupRolePersistence.update(userGroupGroupRole);
051 }
052 }
053
054 PermissionCacheUtil.clearCache();
055 }
056
057 @Override
058 public void addUserGroupGroupRoles(
059 long[] userGroupIds, long groupId, long roleId)
060 throws SystemException {
061
062 for (long userGroupId : userGroupIds) {
063 UserGroupGroupRolePK pk = new UserGroupGroupRolePK(
064 userGroupId, groupId, roleId);
065
066 UserGroupGroupRole userGroupGroupRole =
067 userGroupGroupRolePersistence.fetchByPrimaryKey(pk);
068
069 if (userGroupGroupRole == null) {
070 userGroupGroupRole = userGroupGroupRolePersistence.create(pk);
071
072 userGroupGroupRolePersistence.update(userGroupGroupRole);
073 }
074 }
075
076 PermissionCacheUtil.clearCache();
077 }
078
079 @Override
080 public UserGroupGroupRole deleteUserGroupGroupRole(
081 UserGroupGroupRole userGroupGroupRole)
082 throws SystemException {
083
084 userGroupGroupRolePersistence.remove(userGroupGroupRole);
085
086 PermissionCacheUtil.clearCache();
087
088 return userGroupGroupRole;
089 }
090
091 @Override
092 public void deleteUserGroupGroupRoles(
093 long userGroupId, long groupId, long[] roleIds)
094 throws SystemException {
095
096 for (long roleId : roleIds) {
097 UserGroupGroupRolePK pk = new UserGroupGroupRolePK(
098 userGroupId, groupId, roleId);
099
100 try {
101 userGroupGroupRolePersistence.remove(pk);
102 }
103 catch (NoSuchUserGroupGroupRoleException nsuggre) {
104 }
105 }
106
107 PermissionCacheUtil.clearCache();
108 }
109
110 @Override
111 public void deleteUserGroupGroupRoles(long userGroupId, long[] groupIds)
112 throws SystemException {
113
114 for (long groupId : groupIds) {
115 userGroupGroupRolePersistence.removeByU_G(userGroupId, groupId);
116 }
117
118 PermissionCacheUtil.clearCache();
119 }
120
121 @Override
122 public void deleteUserGroupGroupRoles(long[] userGroupIds, long groupId)
123 throws SystemException {
124
125 for (long userGroupId : userGroupIds) {
126 userGroupGroupRolePersistence.removeByU_G(userGroupId, groupId);
127 }
128
129 PermissionCacheUtil.clearCache();
130 }
131
132 @Override
133 public void deleteUserGroupGroupRoles(
134 long[] userGroupIds, long groupId, long roleId)
135 throws SystemException {
136
137 for (long userGroupId : userGroupIds) {
138 UserGroupGroupRolePK pk = new UserGroupGroupRolePK(
139 userGroupId, groupId, roleId);
140
141 try {
142 userGroupGroupRolePersistence.remove(pk);
143 }
144 catch (NoSuchUserGroupGroupRoleException nsuggre) {
145 }
146 }
147
148 PermissionCacheUtil.clearCache();
149 }
150
151 @Override
152 public void deleteUserGroupGroupRolesByGroupId(long groupId)
153 throws SystemException {
154
155 userGroupGroupRolePersistence.removeByGroupId(groupId);
156
157 PermissionCacheUtil.clearCache();
158 }
159
160 @Override
161 public void deleteUserGroupGroupRolesByRoleId(long roleId)
162 throws SystemException {
163
164 userGroupGroupRolePersistence.removeByRoleId(roleId);
165
166 PermissionCacheUtil.clearCache();
167 }
168
169 @Override
170 public void deleteUserGroupGroupRolesByUserGroupId(long userGroupId)
171 throws SystemException {
172
173 userGroupGroupRolePersistence.removeByUserGroupId(userGroupId);
174
175 PermissionCacheUtil.clearCache();
176 }
177
178 @Override
179 public List<UserGroupGroupRole> getUserGroupGroupRoles(long userGroupId)
180 throws SystemException {
181
182 return userGroupGroupRolePersistence.findByUserGroupId(userGroupId);
183 }
184
185 @Override
186 public List<UserGroupGroupRole> getUserGroupGroupRoles(
187 long userGroupId, long groupId)
188 throws SystemException {
189
190 return userGroupGroupRolePersistence.findByU_G(userGroupId, groupId);
191 }
192
193 @Override
194 public List<UserGroupGroupRole> getUserGroupGroupRolesByGroupAndRole(
195 long groupId, long roleId)
196 throws SystemException {
197
198 return userGroupGroupRolePersistence.findByG_R(groupId, roleId);
199 }
200
201 @Override
202 public List<UserGroupGroupRole> getUserGroupGroupRolesByUser(long userId)
203 throws SystemException {
204
205 return userGroupRoleFinder.findByUserGroupsUsers(userId);
206 }
207
208 @Override
209 public boolean hasUserGroupGroupRole(
210 long userGroupId, long groupId, long roleId)
211 throws SystemException {
212
213 UserGroupGroupRolePK pk = new UserGroupGroupRolePK(
214 userGroupId, groupId, roleId);
215
216 UserGroupGroupRole userGroupGroupRole =
217 userGroupGroupRolePersistence.fetchByPrimaryKey(pk);
218
219 if (userGroupGroupRole != null) {
220 return true;
221 }
222 else {
223 return false;
224 }
225 }
226
227 @Override
228 public boolean hasUserGroupGroupRole(
229 long userGroupId, long groupId, String roleName)
230 throws PortalException, SystemException {
231
232 UserGroup userGroup = userGroupPersistence.findByPrimaryKey(
233 userGroupId);
234
235 long companyId = userGroup.getCompanyId();
236
237 Role role = rolePersistence.findByC_N(companyId, roleName);
238
239 long roleId = role.getRoleId();
240
241 return hasUserGroupGroupRole(userGroupId, groupId, roleId);
242 }
243
244 }