1 |
|
|
2 |
|
|
3 |
|
|
4 |
|
|
5 |
|
|
6 |
|
|
7 |
|
|
8 |
|
|
9 |
|
|
10 |
|
|
11 |
|
|
12 |
|
|
13 |
|
|
14 |
|
|
15 |
|
|
16 |
|
package org.kuali.rice.kim.service.impl; |
17 |
|
|
18 |
|
import java.util.ArrayList; |
19 |
|
import java.util.Collections; |
20 |
|
import java.util.HashMap; |
21 |
|
import java.util.Iterator; |
22 |
|
import java.util.List; |
23 |
|
import java.util.Map; |
24 |
|
|
25 |
|
import javax.jws.WebService; |
26 |
|
import javax.servlet.http.HttpServletRequest; |
27 |
|
|
28 |
|
import org.apache.log4j.Logger; |
29 |
|
import org.kuali.rice.core.util.MaxAgeSoftReference; |
30 |
|
import org.kuali.rice.core.util.MaxSizeMap; |
31 |
|
import org.kuali.rice.core.util.RiceDebugUtils; |
32 |
|
import org.kuali.rice.kim.bo.entity.KimEntity; |
33 |
|
import org.kuali.rice.kim.bo.entity.KimPrincipal; |
34 |
|
import org.kuali.rice.kim.bo.entity.dto.KimEntityDefaultInfo; |
35 |
|
import org.kuali.rice.kim.bo.entity.dto.KimEntityInfo; |
36 |
|
import org.kuali.rice.kim.bo.entity.dto.KimPrincipalInfo; |
37 |
|
import org.kuali.rice.kim.bo.group.dto.GroupInfo; |
38 |
|
import org.kuali.rice.kim.bo.reference.dto.AddressTypeInfo; |
39 |
|
import org.kuali.rice.kim.bo.reference.dto.AffiliationTypeInfo; |
40 |
|
import org.kuali.rice.kim.bo.reference.dto.CitizenshipStatusInfo; |
41 |
|
import org.kuali.rice.kim.bo.reference.dto.EmailTypeInfo; |
42 |
|
import org.kuali.rice.kim.bo.reference.dto.EmploymentStatusInfo; |
43 |
|
import org.kuali.rice.kim.bo.reference.dto.EmploymentTypeInfo; |
44 |
|
import org.kuali.rice.kim.bo.reference.dto.EntityNameTypeInfo; |
45 |
|
import org.kuali.rice.kim.bo.reference.dto.EntityTypeInfo; |
46 |
|
import org.kuali.rice.kim.bo.reference.dto.ExternalIdentifierTypeInfo; |
47 |
|
import org.kuali.rice.kim.bo.reference.dto.KimCodeInfoBase; |
48 |
|
import org.kuali.rice.kim.bo.reference.dto.PhoneTypeInfo; |
49 |
|
import org.kuali.rice.kim.bo.role.dto.KimPermissionInfo; |
50 |
|
import org.kuali.rice.kim.bo.role.dto.KimResponsibilityInfo; |
51 |
|
import org.kuali.rice.kim.bo.role.dto.PermissionAssigneeInfo; |
52 |
|
import org.kuali.rice.kim.bo.role.dto.ResponsibilityActionInfo; |
53 |
|
import org.kuali.rice.kim.bo.types.dto.AttributeSet; |
54 |
|
import org.kuali.rice.kim.service.AuthenticationService; |
55 |
|
import org.kuali.rice.kim.service.GroupService; |
56 |
|
import org.kuali.rice.kim.service.GroupUpdateService; |
57 |
|
import org.kuali.rice.kim.service.IdentityManagementService; |
58 |
|
import org.kuali.rice.kim.service.IdentityService; |
59 |
|
import org.kuali.rice.kim.service.IdentityUpdateService; |
60 |
|
import org.kuali.rice.kim.service.KIMServiceLocator; |
61 |
|
import org.kuali.rice.kim.service.PermissionService; |
62 |
|
import org.kuali.rice.kim.service.ResponsibilityService; |
63 |
|
import org.kuali.rice.kim.util.KIMWebServiceConstants; |
64 |
|
import org.springframework.beans.factory.InitializingBean; |
65 |
|
import org.springframework.transaction.annotation.Transactional; |
66 |
|
|
67 |
|
@WebService(endpointInterface = KIMWebServiceConstants.IdentityManagementService.INTERFACE_CLASS, serviceName = KIMWebServiceConstants.IdentityManagementService.WEB_SERVICE_NAME, portName = KIMWebServiceConstants.IdentityManagementService.WEB_SERVICE_PORT, targetNamespace = KIMWebServiceConstants.MODULE_TARGET_NAMESPACE) |
|
|
| 0% |
Uncovered Elements: 829 (829) |
Complexity: 225 |
Complexity Density: 0.44 |
|
68 |
|
public class IdentityManagementServiceImpl implements IdentityManagementService, InitializingBean { |
69 |
|
private static final Logger LOG = Logger.getLogger( IdentityManagementServiceImpl.class ); |
70 |
|
|
71 |
|
private AuthenticationService authenticationService; |
72 |
|
private PermissionService permissionService; |
73 |
|
private ResponsibilityService responsibilityService; |
74 |
|
private IdentityService identityService; |
75 |
|
private GroupService groupService; |
76 |
|
private GroupUpdateService groupUpdateService; |
77 |
|
private IdentityUpdateService identityUpdateService; |
78 |
|
|
79 |
|
|
80 |
|
|
81 |
|
protected int entityPrincipalCacheMaxSize = 200; |
82 |
|
protected int entityPrincipalCacheMaxAgeSeconds = 30; |
83 |
|
protected int groupCacheMaxSize = 200; |
84 |
|
protected int groupCacheMaxAgeSeconds = 30; |
85 |
|
protected int permissionCacheMaxSize = 200; |
86 |
|
protected int permissionCacheMaxAgeSeconds = 30; |
87 |
|
protected int responsibilityCacheMaxSize = 200; |
88 |
|
protected int responsibilityCacheMaxAgeSeconds = 30; |
89 |
|
|
90 |
|
protected Map<String,MaxAgeSoftReference<KimEntityDefaultInfo>> entityDefaultInfoCache; |
91 |
|
protected Map<String,MaxAgeSoftReference<KimEntity>> entityCache; |
92 |
|
protected Map<String,MaxAgeSoftReference<KimEntityInfo>> entityInfoCache; |
93 |
|
protected Map<String,MaxAgeSoftReference<KimPrincipalInfo>> principalByIdCache; |
94 |
|
protected Map<String,MaxAgeSoftReference<KimPrincipalInfo>> principalByNameCache; |
95 |
|
protected Map<String,MaxAgeSoftReference<GroupInfo>> groupByIdCache; |
96 |
|
protected Map<String,MaxAgeSoftReference<GroupInfo>> groupByNameCache; |
97 |
|
protected Map<String,MaxAgeSoftReference<List<String>>> groupIdsForPrincipalCache; |
98 |
|
protected Map<String,MaxAgeSoftReference<List<? extends GroupInfo>>> groupsForPrincipalCache; |
99 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> isMemberOfGroupCache; |
100 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> isGroupMemberOfGroupCache; |
101 |
|
protected Map<String,MaxAgeSoftReference<List<String>>> groupMemberPrincipalIdsCache; |
102 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> hasPermissionCache; |
103 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> hasPermissionByTemplateCache; |
104 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> isAuthorizedCache; |
105 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> isAuthorizedByTemplateNameCache; |
106 |
|
protected Map<String,MaxAgeSoftReference<Boolean>> isPermissionDefinedForTemplateNameCache; |
107 |
|
|
108 |
|
protected HashMap<String,KimCodeInfoBase> kimReferenceTypeCache = new HashMap<String, KimCodeInfoBase>(); |
109 |
|
|
|
|
| 0% |
Uncovered Elements: 16 (16) |
Complexity: 1 |
Complexity Density: 0.06 |
|
110 |
0
|
public void afterPropertiesSet() throws Exception {... |
111 |
0
|
entityDefaultInfoCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<KimEntityDefaultInfo>>( entityPrincipalCacheMaxSize ) ); |
112 |
0
|
entityCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<KimEntity>>( entityPrincipalCacheMaxSize ) ); |
113 |
0
|
entityInfoCache = Collections.synchronizedMap( new MaxSizeMap<String, MaxAgeSoftReference<KimEntityInfo>>(entityPrincipalCacheMaxSize)); |
114 |
0
|
principalByIdCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<KimPrincipalInfo>>( entityPrincipalCacheMaxSize ) ); |
115 |
0
|
principalByNameCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<KimPrincipalInfo>>( entityPrincipalCacheMaxSize ) ); |
116 |
0
|
groupByIdCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<GroupInfo>>( groupCacheMaxSize ) ); |
117 |
0
|
groupByNameCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<GroupInfo>>( groupCacheMaxSize ) ); |
118 |
0
|
groupIdsForPrincipalCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<List<String>>>( groupCacheMaxSize ) ); |
119 |
0
|
groupsForPrincipalCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<List<? extends GroupInfo>>>( groupCacheMaxSize ) ); |
120 |
0
|
isMemberOfGroupCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( groupCacheMaxSize ) ); |
121 |
0
|
groupMemberPrincipalIdsCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<List<String>>>( groupCacheMaxSize ) ); |
122 |
0
|
hasPermissionCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( permissionCacheMaxSize ) ); |
123 |
0
|
hasPermissionByTemplateCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( permissionCacheMaxSize ) ); |
124 |
0
|
isPermissionDefinedForTemplateNameCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( permissionCacheMaxSize ) ); |
125 |
0
|
isAuthorizedByTemplateNameCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( permissionCacheMaxSize ) ); |
126 |
0
|
isAuthorizedCache = Collections.synchronizedMap( new MaxSizeMap<String,MaxAgeSoftReference<Boolean>>( permissionCacheMaxSize ) ); |
127 |
|
} |
128 |
|
|
|
|
| 0% |
Uncovered Elements: 4 (4) |
Complexity: 1 |
Complexity Density: 0.25 |
|
129 |
0
|
public void flushAllCaches() {... |
130 |
0
|
flushEntityPrincipalCaches(); |
131 |
0
|
flushGroupCaches(); |
132 |
0
|
flushPermissionCaches(); |
133 |
0
|
flushResponsibilityCaches(); |
134 |
|
} |
135 |
|
|
|
|
| 0% |
Uncovered Elements: 4 (4) |
Complexity: 1 |
Complexity Density: 0.25 |
|
136 |
0
|
public void flushEntityPrincipalCaches() {... |
137 |
0
|
entityDefaultInfoCache.clear(); |
138 |
0
|
entityCache.clear(); |
139 |
0
|
principalByIdCache.clear(); |
140 |
0
|
principalByNameCache.clear(); |
141 |
|
} |
142 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 1 |
Complexity Density: 0.17 |
|
143 |
0
|
public void flushGroupCaches() {... |
144 |
0
|
groupByIdCache.clear(); |
145 |
0
|
groupByNameCache.clear(); |
146 |
0
|
groupIdsForPrincipalCache.clear(); |
147 |
0
|
groupsForPrincipalCache.clear(); |
148 |
0
|
isMemberOfGroupCache.clear(); |
149 |
0
|
groupMemberPrincipalIdsCache.clear(); |
150 |
|
} |
151 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 1 |
Complexity Density: 0.2 |
|
152 |
0
|
public void flushPermissionCaches() {... |
153 |
0
|
hasPermissionCache.clear(); |
154 |
0
|
hasPermissionByTemplateCache.clear(); |
155 |
0
|
isPermissionDefinedForTemplateNameCache.clear(); |
156 |
0
|
isAuthorizedByTemplateNameCache.clear(); |
157 |
0
|
isAuthorizedCache.clear(); |
158 |
|
} |
159 |
|
|
|
|
| - |
Uncovered Elements: 0 (0) |
Complexity: 1 |
Complexity Density: - |
|
160 |
0
|
public void flushResponsibilityCaches() {... |
161 |
|
|
162 |
|
} |
163 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
164 |
0
|
protected KimEntityDefaultInfo getEntityDefaultInfoFromCache( String entityId ) {... |
165 |
0
|
MaxAgeSoftReference<KimEntityDefaultInfo> entityRef = entityDefaultInfoCache.get( "entityId="+entityId ); |
166 |
0
|
if ( entityRef != null ) { |
167 |
0
|
return entityRef.get(); |
168 |
|
} |
169 |
0
|
return null; |
170 |
|
} |
171 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
172 |
0
|
protected KimEntityDefaultInfo getEntityDefaultInfoFromCacheByPrincipalId( String principalId ) {... |
173 |
0
|
MaxAgeSoftReference<KimEntityDefaultInfo> entityRef = entityDefaultInfoCache.get( "principalId="+principalId ); |
174 |
0
|
if ( entityRef != null ) { |
175 |
0
|
return entityRef.get(); |
176 |
|
} |
177 |
0
|
return null; |
178 |
|
} |
179 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
180 |
0
|
protected KimEntityDefaultInfo getEntityDefaultInfoFromCacheByPrincipalName( String principalName ) {... |
181 |
0
|
MaxAgeSoftReference<KimEntityDefaultInfo> entityRef = entityDefaultInfoCache.get( "principalName="+principalName ); |
182 |
0
|
if ( entityRef != null ) { |
183 |
0
|
return entityRef.get(); |
184 |
|
} |
185 |
0
|
return null; |
186 |
|
} |
187 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
188 |
0
|
protected KimEntityInfo getEntityInfoFromCache( String entityId ) {... |
189 |
0
|
MaxAgeSoftReference<KimEntityInfo> entityRef = entityInfoCache.get( "entityId="+entityId ); |
190 |
0
|
if ( entityRef != null ) { |
191 |
0
|
return entityRef.get(); |
192 |
|
} |
193 |
0
|
return null; |
194 |
|
} |
195 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
196 |
0
|
protected KimEntityInfo getEntityInfoFromCacheByPrincipalId( String principalId ) {... |
197 |
0
|
MaxAgeSoftReference<KimEntityInfo> entityRef = entityInfoCache.get( "principalId="+principalId ); |
198 |
0
|
if ( entityRef != null ) { |
199 |
0
|
return entityRef.get(); |
200 |
|
} |
201 |
0
|
return null; |
202 |
|
} |
203 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
204 |
0
|
protected KimEntityInfo getEntityInfoFromCacheByPrincipalName( String principalName ) {... |
205 |
0
|
MaxAgeSoftReference<KimEntityInfo> entityRef = entityInfoCache.get( "principalName="+principalName ); |
206 |
0
|
if ( entityRef != null ) { |
207 |
0
|
return entityRef.get(); |
208 |
|
} |
209 |
0
|
return null; |
210 |
|
} |
211 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
212 |
0
|
protected KimEntity getEntityFromCache( String entityId ) {... |
213 |
0
|
MaxAgeSoftReference<KimEntity> entityRef = entityCache.get( "entityId="+entityId ); |
214 |
0
|
if ( entityRef != null ) { |
215 |
0
|
return entityRef.get(); |
216 |
|
} |
217 |
0
|
return null; |
218 |
|
} |
219 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
220 |
0
|
protected KimEntity getEntityFromCacheByPrincipalId( String principalId ) {... |
221 |
0
|
MaxAgeSoftReference<KimEntity> entityRef = entityCache.get( "principalId="+principalId ); |
222 |
0
|
if ( entityRef != null ) { |
223 |
0
|
return entityRef.get(); |
224 |
|
} |
225 |
0
|
return null; |
226 |
|
} |
227 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
228 |
0
|
protected KimEntity getEntityFromCacheByPrincipalName( String principalName ) {... |
229 |
0
|
MaxAgeSoftReference<KimEntity> entityRef = entityCache.get( "principalName="+principalName ); |
230 |
0
|
if ( entityRef != null ) { |
231 |
0
|
return entityRef.get(); |
232 |
|
} |
233 |
0
|
return null; |
234 |
|
} |
235 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
236 |
0
|
protected KimPrincipalInfo getPrincipalByIdCache( String principalId ) {... |
237 |
0
|
MaxAgeSoftReference<KimPrincipalInfo> principalRef = principalByIdCache.get( principalId ); |
238 |
0
|
if ( principalRef != null ) { |
239 |
0
|
return principalRef.get(); |
240 |
|
} |
241 |
0
|
return null; |
242 |
|
} |
243 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
244 |
0
|
protected KimPrincipalInfo getPrincipalByNameCache( String principalName ) {... |
245 |
0
|
MaxAgeSoftReference<KimPrincipalInfo> principalRef = principalByNameCache.get( principalName ); |
246 |
0
|
if ( principalRef != null ) { |
247 |
0
|
return principalRef.get(); |
248 |
|
} |
249 |
0
|
return null; |
250 |
|
} |
251 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
252 |
0
|
protected GroupInfo getGroupByIdCache( String groupId ) {... |
253 |
0
|
MaxAgeSoftReference<GroupInfo> groupRef = groupByIdCache.get( groupId ); |
254 |
0
|
if ( groupRef != null ) { |
255 |
0
|
return groupRef.get(); |
256 |
|
} |
257 |
0
|
return null; |
258 |
|
} |
259 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
260 |
0
|
protected GroupInfo getGroupByNameCache( String groupName ) {... |
261 |
0
|
MaxAgeSoftReference<GroupInfo> groupRef = groupByNameCache.get( groupName ); |
262 |
0
|
if ( groupRef != null ) { |
263 |
0
|
return groupRef.get(); |
264 |
|
} |
265 |
0
|
return null; |
266 |
|
} |
267 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
268 |
0
|
protected List<String> getGroupIdsForPrincipalCache( String principalId ) {... |
269 |
0
|
MaxAgeSoftReference<List<String>> groupIdsRef = groupIdsForPrincipalCache.get( principalId ); |
270 |
0
|
if ( groupIdsRef != null ) { |
271 |
0
|
return groupIdsRef.get(); |
272 |
|
} |
273 |
0
|
return null; |
274 |
|
} |
275 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
276 |
0
|
protected List<? extends GroupInfo> getGroupsForPrincipalCache( String principalId ) {... |
277 |
0
|
MaxAgeSoftReference<List<? extends GroupInfo>> groupsRef = groupsForPrincipalCache.get( principalId ); |
278 |
0
|
if ( groupsRef != null ) { |
279 |
0
|
return groupsRef.get(); |
280 |
|
} |
281 |
0
|
return null; |
282 |
|
} |
283 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
284 |
0
|
protected Boolean getIsMemberOfGroupCache( String principalId, String groupId ) {... |
285 |
0
|
MaxAgeSoftReference<Boolean> isMemberRef = isMemberOfGroupCache.get( principalId + "-" + groupId ); |
286 |
0
|
if ( isMemberRef != null ) { |
287 |
0
|
return isMemberRef.get(); |
288 |
|
} |
289 |
0
|
return null; |
290 |
|
} |
291 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
292 |
0
|
protected Boolean getIsGroupMemberOfGroupCache( String potentialMemberId, String potentialParentId )... |
293 |
|
{ |
294 |
0
|
MaxAgeSoftReference<Boolean> isMemberRef = isGroupMemberOfGroupCache.get( potentialMemberId + "-" + potentialParentId ); |
295 |
0
|
if ( isMemberRef != null ) { |
296 |
0
|
return isMemberRef.get(); |
297 |
|
} |
298 |
0
|
return null; |
299 |
|
} |
300 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
301 |
0
|
protected List<String> getGroupMemberPrincipalIdsCache( String groupId ) {... |
302 |
0
|
MaxAgeSoftReference<List<String>> memberIdsRef = groupMemberPrincipalIdsCache.get( groupId ); |
303 |
0
|
if ( memberIdsRef != null ) { |
304 |
0
|
return memberIdsRef.get(); |
305 |
|
} |
306 |
0
|
return null; |
307 |
|
} |
308 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
309 |
0
|
protected Boolean getHasPermissionCache( String key ) {... |
310 |
0
|
MaxAgeSoftReference<Boolean> hasPermissionRef = hasPermissionCache.get( key ); |
311 |
0
|
if ( hasPermissionRef != null ) { |
312 |
0
|
return hasPermissionRef.get(); |
313 |
|
} |
314 |
0
|
return null; |
315 |
|
} |
316 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
317 |
0
|
protected Boolean getHasPermissionByTemplateCache( String key ) {... |
318 |
0
|
MaxAgeSoftReference<Boolean> hasPermissionRef = hasPermissionByTemplateCache.get( key ); |
319 |
0
|
if ( hasPermissionRef != null ) { |
320 |
0
|
return hasPermissionRef.get(); |
321 |
|
} |
322 |
0
|
return null; |
323 |
|
} |
324 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
325 |
0
|
protected Boolean getIsAuthorizedByTemplateNameFromCache( String key ) {... |
326 |
0
|
MaxAgeSoftReference<Boolean> cacheEntryRef = isAuthorizedByTemplateNameCache.get( key ); |
327 |
0
|
if ( cacheEntryRef != null ) { |
328 |
0
|
return cacheEntryRef.get(); |
329 |
|
} |
330 |
0
|
return null; |
331 |
|
} |
332 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
333 |
0
|
protected Boolean getIsAuthorizedFromCache( String key ) {... |
334 |
0
|
MaxAgeSoftReference<Boolean> cacheEntryRef = isAuthorizedCache.get( key ); |
335 |
0
|
if ( cacheEntryRef != null ) { |
336 |
0
|
return cacheEntryRef.get(); |
337 |
|
} |
338 |
0
|
return null; |
339 |
|
} |
340 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
341 |
0
|
protected void addEntityToCache( KimEntity entity ) {... |
342 |
0
|
if ( entity != null ) { |
343 |
0
|
entityCache.put( "entityId="+entity.getEntityId(), new MaxAgeSoftReference<KimEntity>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
344 |
0
|
for ( KimPrincipal p : entity.getPrincipals() ) { |
345 |
0
|
entityCache.put( "principalId="+p.getPrincipalId(), new MaxAgeSoftReference<KimEntity>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
346 |
0
|
entityCache.put( "principalName="+p.getPrincipalName(), new MaxAgeSoftReference<KimEntity>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
347 |
|
} |
348 |
|
} |
349 |
|
} |
350 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
351 |
0
|
protected void addEntityDefaultInfoToCache( KimEntityDefaultInfo entity ) {... |
352 |
0
|
if ( entity != null ) { |
353 |
0
|
entityDefaultInfoCache.put( "entityId="+entity.getEntityId(), new MaxAgeSoftReference<KimEntityDefaultInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
354 |
0
|
for ( KimPrincipal p : entity.getPrincipals() ) { |
355 |
0
|
entityDefaultInfoCache.put( "principalId="+p.getPrincipalId(), new MaxAgeSoftReference<KimEntityDefaultInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
356 |
0
|
entityDefaultInfoCache.put( "principalName="+p.getPrincipalName(), new MaxAgeSoftReference<KimEntityDefaultInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
357 |
|
} |
358 |
|
} |
359 |
|
} |
360 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
361 |
0
|
protected void addEntityInfoToCache( KimEntityInfo entity ) {... |
362 |
0
|
if ( entity != null ) { |
363 |
0
|
entityInfoCache.put( "entityId="+entity.getEntityId(), new MaxAgeSoftReference<KimEntityInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
364 |
0
|
for ( KimPrincipal p : entity.getPrincipals() ) { |
365 |
0
|
entityInfoCache.put( "principalId="+p.getPrincipalId(), new MaxAgeSoftReference<KimEntityInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
366 |
0
|
entityInfoCache.put( "principalName="+p.getPrincipalName(), new MaxAgeSoftReference<KimEntityInfo>( entityPrincipalCacheMaxAgeSeconds, entity ) ); |
367 |
|
} |
368 |
|
} |
369 |
|
} |
370 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
371 |
0
|
protected void addPrincipalToCache( KimPrincipalInfo principal ) {... |
372 |
0
|
if ( principal != null ) { |
373 |
0
|
principalByNameCache.put( principal.getPrincipalName(), new MaxAgeSoftReference<KimPrincipalInfo>( entityPrincipalCacheMaxAgeSeconds, principal ) ); |
374 |
0
|
principalByIdCache.put( principal.getPrincipalId(), new MaxAgeSoftReference<KimPrincipalInfo>( entityPrincipalCacheMaxAgeSeconds, principal ) ); |
375 |
|
} |
376 |
|
} |
377 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
378 |
0
|
protected void addGroupToCache( GroupInfo group ) {... |
379 |
0
|
if ( group != null ) { |
380 |
0
|
groupByNameCache.put( group.getGroupName(), new MaxAgeSoftReference<GroupInfo>( groupCacheMaxAgeSeconds, group ) ); |
381 |
0
|
groupByIdCache.put( group.getGroupId(), new MaxAgeSoftReference<GroupInfo>( groupCacheMaxAgeSeconds, group ) ); |
382 |
|
} |
383 |
|
} |
384 |
|
|
|
|
| 0% |
Uncovered Elements: 4 (4) |
Complexity: 2 |
Complexity Density: 1 |
|
385 |
0
|
protected void addGroupIdsForPrincipalToCache( String principalId, List<String> ids ) {... |
386 |
0
|
if ( ids != null ) { |
387 |
0
|
groupIdsForPrincipalCache.put( principalId, new MaxAgeSoftReference<List<String>>( groupCacheMaxAgeSeconds, ids ) ); |
388 |
|
} |
389 |
|
} |
390 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
391 |
0
|
protected void addGroupsForPrincipalToCache( String principalId, List<? extends GroupInfo> groups ) {... |
392 |
0
|
if ( groups != null ) { |
393 |
0
|
groupsForPrincipalCache.put( principalId, new MaxAgeSoftReference<List<? extends GroupInfo>>( groupCacheMaxAgeSeconds, groups ) ); |
394 |
0
|
List<String> groupIds = new ArrayList<String>( groups.size() ); |
395 |
0
|
for ( GroupInfo group : groups ) { |
396 |
0
|
groupIds.add( group.getGroupId() ); |
397 |
|
} |
398 |
0
|
addGroupIdsForPrincipalToCache( principalId, groupIds ); |
399 |
|
} |
400 |
|
} |
401 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
402 |
0
|
protected void addIsMemberOfGroupToCache( String principalId, String groupId, boolean member ) {... |
403 |
0
|
isMemberOfGroupCache.put( principalId + "-" + groupId, new MaxAgeSoftReference<Boolean>( groupCacheMaxAgeSeconds, member ) ); |
404 |
|
} |
405 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
406 |
0
|
protected void addIsGroupMemberOfGroupToCache( String potentialMemberId, String potentialParentId, boolean member )... |
407 |
|
{ |
408 |
0
|
isMemberOfGroupCache.put( potentialMemberId + "-" + potentialParentId, new MaxAgeSoftReference<Boolean>( groupCacheMaxAgeSeconds, member ) ); |
409 |
|
} |
410 |
|
|
|
|
| 0% |
Uncovered Elements: 4 (4) |
Complexity: 2 |
Complexity Density: 1 |
|
411 |
0
|
protected void addGroupMemberPrincipalIdsToCache( String groupId, List<String> ids ) {... |
412 |
0
|
if ( ids != null ) { |
413 |
0
|
groupMemberPrincipalIdsCache.put( groupId, new MaxAgeSoftReference<List<String>>( groupCacheMaxAgeSeconds, ids ) ); |
414 |
|
} |
415 |
|
} |
416 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
417 |
0
|
protected void addHasPermissionToCache( String key, boolean hasPerm ) {... |
418 |
0
|
hasPermissionCache.put( key, new MaxAgeSoftReference<Boolean>( permissionCacheMaxAgeSeconds, hasPerm ) ); |
419 |
|
} |
420 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
421 |
0
|
protected void addHasPermissionByTemplateToCache( String key, boolean hasPerm ) {... |
422 |
0
|
hasPermissionByTemplateCache.put( key, new MaxAgeSoftReference<Boolean>( permissionCacheMaxAgeSeconds, hasPerm ) ); |
423 |
|
} |
424 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
425 |
0
|
protected void addIsAuthorizedByTemplateNameToCache( String key, boolean authorized ) {... |
426 |
0
|
isAuthorizedByTemplateNameCache.put( key, new MaxAgeSoftReference<Boolean>( permissionCacheMaxAgeSeconds, authorized ) ); |
427 |
|
} |
428 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
429 |
0
|
protected void addIsAuthorizedToCache( String key, boolean authorized ) {... |
430 |
0
|
isAuthorizedCache.put( key, new MaxAgeSoftReference<Boolean>( permissionCacheMaxAgeSeconds, authorized ) ); |
431 |
|
} |
432 |
|
|
433 |
|
|
434 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
435 |
0
|
public String getAuthenticatedPrincipalName(HttpServletRequest request) {... |
436 |
0
|
return getAuthenticationService().getPrincipalName(request); |
437 |
|
} |
438 |
|
|
439 |
|
|
|
|
| 0% |
Uncovered Elements: 24 (24) |
Complexity: 5 |
Complexity Density: 0.31 |
|
440 |
0
|
@Transactional(readOnly=true)... |
441 |
|
public boolean hasPermission(String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails) { |
442 |
0
|
if ( LOG.isDebugEnabled() ) { |
443 |
0
|
logHasPermissionCheck("Permission", principalId, namespaceCode, permissionName, permissionDetails); |
444 |
|
} |
445 |
0
|
StringBuffer cacheKey = new StringBuffer(); |
446 |
0
|
cacheKey.append( principalId ).append( '/' ); |
447 |
0
|
cacheKey.append( namespaceCode ).append( '-' ).append( permissionName ).append( '/' ); |
448 |
0
|
addAttributeSetToKey( permissionDetails, cacheKey ); |
449 |
0
|
String key = cacheKey.toString(); |
450 |
0
|
Boolean hasPerm = getHasPermissionCache(key); |
451 |
0
|
if (hasPerm == null) { |
452 |
0
|
hasPerm = getPermissionService().hasPermission( principalId, namespaceCode, permissionName, permissionDetails ); |
453 |
0
|
addHasPermissionToCache(key, hasPerm); |
454 |
0
|
if ( LOG.isDebugEnabled() ) { |
455 |
0
|
LOG.debug( "Result: " + hasPerm ); |
456 |
|
} |
457 |
|
} else { |
458 |
0
|
if ( LOG.isDebugEnabled() ) { |
459 |
0
|
LOG.debug( "Result Found in cache using key: " + key + "\nResult: " + hasPerm ); |
460 |
|
} |
461 |
|
} |
462 |
0
|
return hasPerm; |
463 |
|
} |
464 |
|
|
|
|
| 0% |
Uncovered Elements: 30 (30) |
Complexity: 7 |
Complexity Density: 0.35 |
|
465 |
0
|
@Transactional(readOnly=true)... |
466 |
|
public boolean isAuthorized(String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification ) { |
467 |
0
|
if ( qualification == null || qualification.isEmpty() ) { |
468 |
0
|
return hasPermission( principalId, namespaceCode, permissionName, permissionDetails ); |
469 |
|
} |
470 |
0
|
if ( LOG.isDebugEnabled() ) { |
471 |
0
|
logAuthorizationCheck("Permission", principalId, namespaceCode, permissionName, permissionDetails, qualification); |
472 |
|
} |
473 |
0
|
StringBuffer cacheKey = new StringBuffer(); |
474 |
0
|
cacheKey.append( principalId ).append( '/' ); |
475 |
0
|
cacheKey.append( namespaceCode ).append( '-' ).append( permissionName ).append( '/' ); |
476 |
0
|
addAttributeSetToKey( permissionDetails, cacheKey ); |
477 |
0
|
cacheKey.append( '/' ); |
478 |
0
|
addAttributeSetToKey( qualification, cacheKey ); |
479 |
0
|
String key = cacheKey.toString(); |
480 |
0
|
Boolean isAuthorized = getIsAuthorizedFromCache( key ); |
481 |
0
|
if ( isAuthorized == null ) { |
482 |
0
|
isAuthorized = getPermissionService().isAuthorized( principalId, namespaceCode, permissionName, permissionDetails, qualification ); |
483 |
0
|
addIsAuthorizedToCache( key, isAuthorized ); |
484 |
0
|
if ( LOG.isDebugEnabled() ) { |
485 |
0
|
LOG.debug( "Result: " + isAuthorized ); |
486 |
|
} |
487 |
|
} else { |
488 |
0
|
if ( LOG.isDebugEnabled() ) { |
489 |
0
|
LOG.debug( "Result Found in cache using key: " + key + "\nResult: " + isAuthorized ); |
490 |
|
} |
491 |
|
} |
492 |
0
|
return isAuthorized; |
493 |
|
} |
494 |
|
|
|
|
| 0% |
Uncovered Elements: 24 (24) |
Complexity: 5 |
Complexity Density: 0.31 |
|
495 |
0
|
@Transactional(readOnly=true)... |
496 |
|
public boolean hasPermissionByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails) { |
497 |
0
|
if ( LOG.isDebugEnabled() ) { |
498 |
0
|
logHasPermissionCheck("Perm Templ", principalId, namespaceCode, permissionTemplateName, permissionDetails); |
499 |
|
} |
500 |
0
|
StringBuffer cacheKey = new StringBuffer(); |
501 |
0
|
cacheKey.append( principalId ).append( '/' ); |
502 |
0
|
cacheKey.append( namespaceCode ).append( '-' ).append( permissionTemplateName ).append( '/' ); |
503 |
0
|
addAttributeSetToKey( permissionDetails, cacheKey ); |
504 |
0
|
String key = cacheKey.toString(); |
505 |
0
|
Boolean hasPerm = getHasPermissionByTemplateCache(key); |
506 |
0
|
if (hasPerm == null) { |
507 |
0
|
hasPerm = getPermissionService().hasPermissionByTemplateName( principalId, namespaceCode, permissionTemplateName, permissionDetails ); |
508 |
0
|
addHasPermissionByTemplateToCache(key, hasPerm); |
509 |
0
|
if ( LOG.isDebugEnabled() ) { |
510 |
0
|
LOG.debug( "Result: " + hasPerm ); |
511 |
|
} |
512 |
|
} else { |
513 |
0
|
if ( LOG.isDebugEnabled() ) { |
514 |
0
|
LOG.debug( "Result Found in cache using key: " + key + "\nResult: " + hasPerm ); |
515 |
|
} |
516 |
|
} |
517 |
0
|
return hasPerm; |
518 |
|
} |
519 |
|
|
|
|
| 0% |
Uncovered Elements: 30 (30) |
Complexity: 7 |
Complexity Density: 0.35 |
|
520 |
0
|
@Transactional(readOnly=true)... |
521 |
|
public boolean isAuthorizedByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails, AttributeSet qualification ) { |
522 |
0
|
if ( qualification == null || qualification.isEmpty() ) { |
523 |
0
|
return hasPermissionByTemplateName( principalId, namespaceCode, permissionTemplateName, permissionDetails ); |
524 |
|
} |
525 |
0
|
if ( LOG.isDebugEnabled() ) { |
526 |
0
|
logAuthorizationCheck("Perm Templ", principalId, namespaceCode, permissionTemplateName, permissionDetails, qualification); |
527 |
|
} |
528 |
0
|
StringBuffer cacheKey = new StringBuffer(); |
529 |
0
|
cacheKey.append( principalId ).append( '/' ); |
530 |
0
|
cacheKey.append( namespaceCode ).append( '-' ).append( permissionTemplateName ).append( '/' ); |
531 |
0
|
addAttributeSetToKey( permissionDetails, cacheKey ); |
532 |
0
|
cacheKey.append( '/' ); |
533 |
0
|
addAttributeSetToKey( qualification, cacheKey ); |
534 |
0
|
String key = cacheKey.toString(); |
535 |
0
|
Boolean isAuthorized = getIsAuthorizedByTemplateNameFromCache( key ); |
536 |
0
|
if ( isAuthorized == null ) { |
537 |
0
|
isAuthorized = getPermissionService().isAuthorizedByTemplateName( principalId, namespaceCode, permissionTemplateName, permissionDetails, qualification ); |
538 |
0
|
addIsAuthorizedByTemplateNameToCache( key, isAuthorized ); |
539 |
0
|
if ( LOG.isDebugEnabled() ) { |
540 |
0
|
LOG.debug( "Result: " + isAuthorized ); |
541 |
|
} |
542 |
|
} else { |
543 |
0
|
if ( LOG.isDebugEnabled() ) { |
544 |
0
|
LOG.debug( "Result Found in cache using key: " + key + "\nResult: " + isAuthorized ); |
545 |
|
} |
546 |
|
} |
547 |
0
|
return isAuthorized; |
548 |
|
} |
549 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
550 |
0
|
private void addAttributeSetToKey(AttributeSet attributes, StringBuffer key) {... |
551 |
0
|
if ( attributes != null ) { |
552 |
0
|
for ( Map.Entry<String, String> entry : attributes.entrySet() ) { |
553 |
0
|
key.append( entry.getKey() ).append( '=' ).append( entry.getValue() ).append('|'); |
554 |
|
} |
555 |
|
} else { |
556 |
0
|
key.append( "[null]" ); |
557 |
|
} |
558 |
|
} |
559 |
|
|
560 |
|
|
561 |
|
@see |
562 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
563 |
0
|
public List<? extends KimPermissionInfo> getAuthorizedPermissions(String principalId,... |
564 |
|
String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification) { |
565 |
0
|
return getPermissionService().getAuthorizedPermissions( principalId, namespaceCode, permissionName, permissionDetails, qualification ); |
566 |
|
} |
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
567 |
0
|
@Transactional(readOnly=true)... |
568 |
|
public List<? extends KimPermissionInfo> getAuthorizedPermissionsByTemplateName(String principalId, |
569 |
|
String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails, AttributeSet qualification) { |
570 |
0
|
return getPermissionService().getAuthorizedPermissionsByTemplateName(principalId, namespaceCode, permissionTemplateName, permissionDetails, qualification); |
571 |
|
} |
572 |
|
|
|
|
| 0% |
Uncovered Elements: 15 (15) |
Complexity: 3 |
Complexity Density: 0.27 |
|
573 |
0
|
@Transactional(readOnly=true)... |
574 |
|
public boolean isPermissionDefinedForTemplateName(String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails) { |
575 |
0
|
StringBuffer key = new StringBuffer(); |
576 |
0
|
key.append( namespaceCode ).append( '-' ).append( permissionTemplateName ).append( '/' ); |
577 |
0
|
addAttributeSetToKey(permissionDetails, key); |
578 |
0
|
MaxAgeSoftReference<Boolean> resultEntry = isPermissionDefinedForTemplateNameCache.get(key.toString()); |
579 |
0
|
if ( resultEntry != null ) { |
580 |
0
|
Boolean result = resultEntry.get(); |
581 |
0
|
if ( result != null ) { |
582 |
0
|
return result; |
583 |
|
} |
584 |
|
} |
585 |
0
|
boolean result = getPermissionService().isPermissionDefinedForTemplateName(namespaceCode, permissionTemplateName, permissionDetails); |
586 |
0
|
isPermissionDefinedForTemplateNameCache.put(key.toString(),new MaxAgeSoftReference<Boolean>( permissionCacheMaxAgeSeconds, result )); |
587 |
0
|
return result; |
588 |
|
} |
589 |
|
|
590 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
591 |
0
|
public List<PermissionAssigneeInfo> getPermissionAssignees(String namespaceCode,... |
592 |
|
String permissionName, AttributeSet permissionDetails, AttributeSet qualification) { |
593 |
0
|
return this.permissionService.getPermissionAssignees( namespaceCode, permissionName, |
594 |
|
permissionDetails, qualification ); |
595 |
|
} |
596 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
597 |
0
|
public List<PermissionAssigneeInfo> getPermissionAssigneesForTemplateName(String namespaceCode,... |
598 |
|
String permissionTemplateName, AttributeSet permissionDetails, |
599 |
|
AttributeSet qualification) { |
600 |
0
|
return this.permissionService.getPermissionAssigneesForTemplateName( namespaceCode, |
601 |
|
permissionTemplateName, permissionDetails, qualification ); |
602 |
|
} |
603 |
|
|
604 |
|
|
605 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
606 |
0
|
public boolean isMemberOfGroup(String principalId, String groupId) {... |
607 |
0
|
Boolean isMember = getIsMemberOfGroupCache(principalId, groupId); |
608 |
0
|
if (isMember != null) { |
609 |
0
|
return isMember; |
610 |
|
} |
611 |
0
|
isMember = getGroupService().isMemberOfGroup(principalId, groupId); |
612 |
0
|
addIsMemberOfGroupToCache(principalId, groupId, isMember); |
613 |
0
|
return isMember; |
614 |
|
} |
615 |
|
|
|
|
| 0% |
Uncovered Elements: 6 (6) |
Complexity: 2 |
Complexity Density: 0.5 |
|
616 |
0
|
public boolean isMemberOfGroup(String principalId, String namespaceCode, String groupName) {... |
617 |
0
|
GroupInfo group = getGroupByName(namespaceCode, groupName); |
618 |
0
|
if ( group == null ) { |
619 |
0
|
return false; |
620 |
|
} |
621 |
0
|
return isMemberOfGroup(principalId, group.getGroupId()); |
622 |
|
} |
623 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
624 |
0
|
public boolean isGroupMemberOfGroup(String potentialMemberId, String potentialParentId)... |
625 |
|
{ |
626 |
0
|
Boolean isMember = getIsGroupMemberOfGroupCache(potentialMemberId, potentialParentId); |
627 |
0
|
if(isMember != null) |
628 |
|
{ |
629 |
0
|
return isMember; |
630 |
|
} |
631 |
|
else |
632 |
|
{ |
633 |
0
|
isMember = getGroupService() |
634 |
|
.isGroupMemberOfGroup(potentialMemberId, potentialParentId); |
635 |
|
} |
636 |
0
|
addIsGroupMemberOfGroupToCache(potentialMemberId, potentialParentId, isMember); |
637 |
0
|
return isMember; |
638 |
|
} |
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
639 |
0
|
public List<String> getGroupMemberPrincipalIds(String groupId) {... |
640 |
0
|
List<String> ids = getGroupMemberPrincipalIdsCache(groupId); |
641 |
0
|
if (ids != null) { |
642 |
0
|
return ids; |
643 |
|
} |
644 |
0
|
ids = getGroupService().getMemberPrincipalIds(groupId); |
645 |
0
|
addGroupMemberPrincipalIdsToCache(groupId, ids); |
646 |
0
|
return ids; |
647 |
|
} |
648 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
649 |
0
|
public List<String> getDirectGroupMemberPrincipalIds(String groupId) {... |
650 |
0
|
return getGroupService().getDirectMemberPrincipalIds(groupId); |
651 |
|
} |
652 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
653 |
0
|
public List<String> getGroupIdsForPrincipal(String principalId) {... |
654 |
0
|
List<String> ids = getGroupIdsForPrincipalCache(principalId); |
655 |
0
|
if (ids != null) { |
656 |
0
|
return ids; |
657 |
|
} |
658 |
0
|
ids = getGroupService().getGroupIdsForPrincipal(principalId); |
659 |
0
|
addGroupIdsForPrincipalToCache(principalId, ids); |
660 |
0
|
return ids; |
661 |
|
} |
662 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
663 |
0
|
public List<String> getGroupIdsForPrincipal(String principalId, String namespaceCode ) {... |
664 |
0
|
return getGroupService().getGroupIdsForPrincipalByNamespace(principalId, namespaceCode ); |
665 |
|
} |
666 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
667 |
0
|
public List<? extends GroupInfo> getGroupsForPrincipal(String principalId) {... |
668 |
0
|
List<? extends GroupInfo> groups = getGroupsForPrincipalCache(principalId); |
669 |
0
|
if (groups != null) { |
670 |
0
|
return groups; |
671 |
|
} |
672 |
0
|
groups = getGroupService().getGroupsForPrincipal(principalId); |
673 |
0
|
addGroupsForPrincipalToCache(principalId, groups); |
674 |
0
|
return groups; |
675 |
|
} |
676 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
677 |
0
|
public List<? extends GroupInfo> getGroupsForPrincipal(String principalId, String namespaceCode ) {... |
678 |
0
|
List<? extends GroupInfo> groups = getGroupsForPrincipalCache(principalId + "-" + namespaceCode); |
679 |
0
|
if (groups != null) { |
680 |
0
|
return groups; |
681 |
|
} |
682 |
0
|
groups = getGroupService().getGroupsForPrincipalByNamespace(principalId, namespaceCode ); |
683 |
0
|
addGroupsForPrincipalToCache(principalId, groups); |
684 |
0
|
return groups; |
685 |
|
} |
686 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
687 |
0
|
public List<String> getMemberGroupIds(String groupId) {... |
688 |
0
|
return getGroupService().getMemberGroupIds(groupId); |
689 |
|
} |
690 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
691 |
0
|
public List<String> getDirectMemberGroupIds(String groupId) {... |
692 |
0
|
return getGroupService().getDirectMemberGroupIds(groupId); |
693 |
|
} |
694 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
695 |
0
|
public GroupInfo getGroup(String groupId) {... |
696 |
0
|
GroupInfo group = getGroupByIdCache(groupId); |
697 |
0
|
if (group != null) { |
698 |
0
|
return group; |
699 |
|
} |
700 |
0
|
group = getGroupService().getGroupInfo(groupId); |
701 |
0
|
addGroupToCache(group); |
702 |
0
|
return group; |
703 |
|
} |
704 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
705 |
0
|
public GroupInfo getGroupByName(String namespaceCode, String groupName) {... |
706 |
0
|
GroupInfo group = getGroupByNameCache(namespaceCode + "-" + groupName); |
707 |
0
|
if (group != null) { |
708 |
0
|
return group; |
709 |
|
} |
710 |
0
|
group = getGroupService().getGroupInfoByName( namespaceCode, groupName ); |
711 |
0
|
addGroupToCache(group); |
712 |
0
|
return group; |
713 |
|
} |
714 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
715 |
0
|
public List<String> getParentGroupIds(String groupId) {... |
716 |
0
|
return getGroupService().getParentGroupIds( groupId ); |
717 |
|
} |
718 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
719 |
0
|
public List<String> getDirectParentGroupIds(String groupId) {... |
720 |
0
|
return getGroupService().getDirectParentGroupIds( groupId ); |
721 |
|
} |
722 |
|
|
|
|
| 0% |
Uncovered Elements: 17 (17) |
Complexity: 4 |
Complexity Density: 0.36 |
|
723 |
0
|
protected void clearGroupCachesForPrincipalAndGroup( String principalId, String groupId ) {... |
724 |
0
|
if ( principalId != null ) { |
725 |
0
|
groupIdsForPrincipalCache.remove(principalId); |
726 |
0
|
groupsForPrincipalCache.remove(principalId); |
727 |
0
|
isMemberOfGroupCache.remove(principalId + "-" + groupId); |
728 |
|
} else { |
729 |
|
|
730 |
0
|
synchronized (isMemberOfGroupCache) { |
731 |
0
|
Iterator<String> keys = isMemberOfGroupCache.keySet().iterator(); |
732 |
0
|
while ( keys.hasNext() ) { |
733 |
0
|
String key = keys.next(); |
734 |
0
|
if ( key.endsWith("-"+groupId) ) { |
735 |
0
|
keys.remove(); |
736 |
|
} |
737 |
|
} |
738 |
|
} |
739 |
|
|
740 |
|
|
741 |
|
} |
742 |
0
|
groupMemberPrincipalIdsCache.remove(groupId); |
743 |
|
} |
744 |
|
|
745 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
746 |
0
|
public boolean addGroupToGroup(String childId, String parentId) {... |
747 |
0
|
clearGroupCachesForPrincipalAndGroup(null, parentId); |
748 |
0
|
return getGroupUpdateService().addGroupToGroup(childId, parentId); |
749 |
|
} |
750 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
751 |
0
|
public boolean addPrincipalToGroup(String principalId, String groupId) {... |
752 |
0
|
clearGroupCachesForPrincipalAndGroup(principalId, groupId); |
753 |
0
|
return getGroupUpdateService().addPrincipalToGroup(principalId, groupId); |
754 |
|
} |
755 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
756 |
0
|
public boolean removeGroupFromGroup(String childId, String parentId) {... |
757 |
0
|
clearGroupCachesForPrincipalAndGroup(null, parentId); |
758 |
0
|
return getGroupUpdateService().removeGroupFromGroup(childId, parentId); |
759 |
|
} |
760 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
761 |
0
|
public boolean removePrincipalFromGroup(String principalId, String groupId) {... |
762 |
0
|
clearGroupCachesForPrincipalAndGroup(principalId, groupId); |
763 |
0
|
return getGroupUpdateService().removePrincipalFromGroup(principalId, groupId); |
764 |
|
} |
765 |
|
|
766 |
|
|
767 |
|
|
768 |
|
|
769 |
|
@param |
770 |
|
@return |
771 |
|
@see |
772 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
773 |
0
|
public GroupInfo createGroup(GroupInfo groupInfo) {... |
774 |
0
|
clearGroupCachesForPrincipalAndGroup(null,groupInfo.getGroupId()); |
775 |
0
|
return getGroupUpdateService().createGroup(groupInfo); |
776 |
|
} |
777 |
|
|
778 |
|
|
779 |
|
|
780 |
|
|
781 |
|
@param |
782 |
|
@see |
783 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
784 |
0
|
public void removeAllGroupMembers(String groupId) {... |
785 |
0
|
clearGroupCachesForPrincipalAndGroup(null, groupId); |
786 |
0
|
getGroupUpdateService().removeAllGroupMembers(groupId); |
787 |
|
} |
788 |
|
|
789 |
|
|
790 |
|
|
791 |
|
|
792 |
|
@param |
793 |
|
@param |
794 |
|
@return |
795 |
|
@see |
796 |
|
|
|
|
| 0% |
Uncovered Elements: 2 (2) |
Complexity: 1 |
Complexity Density: 0.5 |
|
797 |
0
|
public GroupInfo updateGroup(String groupId, GroupInfo groupInfo) {... |
798 |
0
|
clearGroupCachesForPrincipalAndGroup(null, groupId); |
799 |
0
|
return getGroupUpdateService().updateGroup(groupId, groupInfo); |
800 |
|
} |
801 |
|
|
802 |
|
|
803 |
|
|
804 |
|
|
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
805 |
0
|
public KimPrincipalInfo getPrincipal(String principalId) {... |
806 |
0
|
KimPrincipalInfo principal = getPrincipalByIdCache(principalId); |
807 |
0
|
if (principal != null) { |
808 |
0
|
return principal; |
809 |
|
} |
810 |
0
|
principal = getIdentityService().getPrincipal(principalId); |
811 |
0
|
addPrincipalToCache(principal); |
812 |
0
|
return principal; |
813 |
|
} |
|
|
| 0% |
Uncovered Elements: 8 (8) |
Complexity: 2 |
Complexity Density: 0.33 |
|
814 |
0
|
@Transactional(readOnly=true)... |
815 |
|
public KimPrincipalInfo getPrincipalByPrincipalName(String principalName) { |
816 |
0
|
KimPrincipalInfo principal = getPrincipalByNameCache(principalName); |
817 |
0
|
if (principal != null) { |
818 |
0
|
return principal; |
819 |
|
} |
820 |
0
|
principal = getIdentityService().getPrincipalByPrincipalName(principalName); |
821 |
0
|
addPrincipalToCache(principal); |
822 |
0
|
return principal; |
823 |
|
} |
824 |
|
|
825 |
|
|
826 |
|
@see |
827 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
828 |
0
|
public KimPrincipalInfo getPrincipalByPrincipalNameAndPassword(String principalName, String password) {... |
829 |
|
|
830 |
0
|
return getIdentityService().getPrincipalByPrincipalNameAndPassword( principalName, password ); |
831 |
|
} |
832 |
|
|
833 |
|
|
834 |
|
|
835 |
|
|
836 |
|
@see |
837 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
838 |
0
|
public KimEntityDefaultInfo getEntityDefaultInfo(String entityId) {... |
839 |
0
|
KimEntityDefaultInfo entity = getEntityDefaultInfoFromCache( entityId ); |
840 |
0
|
if ( entity == null ) { |
841 |
0
|
entity = getIdentityService().getEntityDefaultInfo(entityId); |
842 |
0
|
addEntityDefaultInfoToCache( entity ); |
843 |
|
} |
844 |
0
|
return entity; |
845 |
|
} |
846 |
|
|
847 |
|
|
848 |
|
|
849 |
|
|
850 |
|
@see |
851 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
852 |
0
|
@Transactional(readOnly=true)... |
853 |
|
public KimEntityDefaultInfo getEntityDefaultInfoByPrincipalId( |
854 |
|
String principalId) { |
855 |
0
|
KimEntityDefaultInfo entity = getEntityDefaultInfoFromCacheByPrincipalId( principalId ); |
856 |
0
|
if ( entity == null ) { |
857 |
0
|
entity = getIdentityService().getEntityDefaultInfoByPrincipalId(principalId); |
858 |
0
|
addEntityDefaultInfoToCache( entity ); |
859 |
|
} |
860 |
0
|
return entity; |
861 |
|
} |
862 |
|
|
863 |
|
|
864 |
|
|
865 |
|
|
866 |
|
@see |
867 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
868 |
0
|
public KimEntityDefaultInfo getEntityDefaultInfoByPrincipalName(... |
869 |
|
String principalName) { |
870 |
0
|
KimEntityDefaultInfo entity = getEntityDefaultInfoFromCacheByPrincipalName( principalName ); |
871 |
0
|
if ( entity == null ) { |
872 |
0
|
entity = getIdentityService().getEntityDefaultInfoByPrincipalName(principalName); |
873 |
0
|
addEntityDefaultInfoToCache( entity ); |
874 |
|
} |
875 |
0
|
return entity; |
876 |
|
} |
877 |
|
|
878 |
|
|
879 |
|
|
880 |
|
|
881 |
|
@see |
882 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
883 |
0
|
@Transactional(readOnly=true)... |
884 |
|
public List<? extends KimEntityDefaultInfo> lookupEntityDefaultInfo( |
885 |
|
Map<String, String> searchCriteria, boolean unbounded) { |
886 |
0
|
return getIdentityService().lookupEntityDefaultInfo(searchCriteria, unbounded); |
887 |
|
} |
888 |
|
|
889 |
|
|
890 |
|
|
891 |
|
@see |
892 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
893 |
0
|
public KimEntityInfo getEntityInfo(String entityId) {... |
894 |
0
|
KimEntityInfo entity = getEntityInfoFromCache( entityId ); |
895 |
0
|
if ( entity == null ) { |
896 |
0
|
entity = getIdentityService().getEntityInfo(entityId); |
897 |
0
|
addEntityInfoToCache( entity ); |
898 |
|
} |
899 |
0
|
return entity; |
900 |
|
} |
901 |
|
|
902 |
|
|
903 |
|
@see |
904 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
905 |
0
|
@Transactional(readOnly=true)... |
906 |
|
public KimEntityInfo getEntityInfoByPrincipalId(String principalId) { |
907 |
0
|
KimEntityInfo entity = getEntityInfoFromCacheByPrincipalId( principalId ); |
908 |
0
|
if ( entity == null ) { |
909 |
0
|
entity = getIdentityService().getEntityInfoByPrincipalId(principalId); |
910 |
0
|
addEntityInfoToCache( entity ); |
911 |
|
} |
912 |
0
|
return entity; |
913 |
|
} |
914 |
|
|
915 |
|
|
916 |
|
|
917 |
|
|
918 |
|
@see |
919 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
920 |
0
|
public KimEntityInfo getEntityInfoByPrincipalName(String principalName) {... |
921 |
0
|
KimEntityInfo entity = getEntityInfoFromCacheByPrincipalName( principalName ); |
922 |
0
|
if ( entity == null ) { |
923 |
0
|
entity = getIdentityService().getEntityInfoByPrincipalName( principalName ); |
924 |
0
|
addEntityInfoToCache( entity ); |
925 |
|
} |
926 |
0
|
return entity; |
927 |
|
} |
928 |
|
|
929 |
|
|
930 |
|
@see |
931 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
932 |
0
|
@Transactional(readOnly=true)... |
933 |
|
public List<KimEntityInfo> lookupEntityInfo( |
934 |
|
Map<String, String> searchCriteria, boolean unbounded) { |
935 |
0
|
return getIdentityService().lookupEntityInfo(searchCriteria, unbounded); |
936 |
|
} |
937 |
|
|
938 |
|
|
939 |
|
@see |
940 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
941 |
0
|
public int getMatchingEntityCount(Map<String,String> searchCriteria) {... |
942 |
0
|
return getIdentityService().getMatchingEntityCount( searchCriteria ); |
943 |
|
} |
944 |
|
|
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
945 |
0
|
public AddressTypeInfo getAddressType( String code ) {... |
946 |
0
|
AddressTypeInfo type = (AddressTypeInfo)kimReferenceTypeCache.get(AddressTypeInfo.class.getSimpleName()+"-"+code); |
947 |
0
|
if ( type == null ) { |
948 |
0
|
type = getIdentityService().getAddressType(code); |
949 |
0
|
kimReferenceTypeCache.put(AddressTypeInfo.class.getSimpleName()+"-"+code, type); |
950 |
|
} |
951 |
0
|
return type; |
952 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
953 |
0
|
public AffiliationTypeInfo getAffiliationType( String code ) {... |
954 |
0
|
AffiliationTypeInfo type = (AffiliationTypeInfo)kimReferenceTypeCache.get(AffiliationTypeInfo.class.getSimpleName()+"-"+code); |
955 |
0
|
if ( type == null ) { |
956 |
0
|
type = getIdentityService().getAffiliationType(code); |
957 |
0
|
kimReferenceTypeCache.put(AddressTypeInfo.class.getSimpleName()+"-"+code, type); |
958 |
|
} |
959 |
0
|
return type; |
960 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
961 |
0
|
public CitizenshipStatusInfo getCitizenshipStatus( String code ) {... |
962 |
0
|
CitizenshipStatusInfo type = (CitizenshipStatusInfo)kimReferenceTypeCache.get(CitizenshipStatusInfo.class.getSimpleName()+"-"+code); |
963 |
0
|
if ( type == null ) { |
964 |
0
|
type = getIdentityService().getCitizenshipStatus(code); |
965 |
0
|
kimReferenceTypeCache.put(CitizenshipStatusInfo.class.getSimpleName()+"-"+code, type); |
966 |
|
} |
967 |
0
|
return type; |
968 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
969 |
0
|
public EmailTypeInfo getEmailType( String code ) {... |
970 |
0
|
EmailTypeInfo type = (EmailTypeInfo)kimReferenceTypeCache.get(EmailTypeInfo.class.getSimpleName()+"-"+code); |
971 |
0
|
if ( type == null ) { |
972 |
0
|
type = getIdentityService().getEmailType(code); |
973 |
0
|
kimReferenceTypeCache.put(EmailTypeInfo.class.getSimpleName()+"-"+code, type); |
974 |
|
} |
975 |
0
|
return type; |
976 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
977 |
0
|
public EmploymentStatusInfo getEmploymentStatus( String code ) {... |
978 |
0
|
EmploymentStatusInfo type = (EmploymentStatusInfo)kimReferenceTypeCache.get(EmploymentStatusInfo.class.getSimpleName()+"-"+code); |
979 |
0
|
if ( type == null ) { |
980 |
0
|
type = getIdentityService().getEmploymentStatus(code); |
981 |
0
|
kimReferenceTypeCache.put(EmploymentStatusInfo.class.getSimpleName()+"-"+code, type); |
982 |
|
} |
983 |
0
|
return type; |
984 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
985 |
0
|
public EmploymentTypeInfo getEmploymentType( String code ) {... |
986 |
0
|
EmploymentTypeInfo type = (EmploymentTypeInfo)kimReferenceTypeCache.get(EmploymentTypeInfo.class.getSimpleName()+"-"+code); |
987 |
0
|
if ( type == null ) { |
988 |
0
|
type = getIdentityService().getEmploymentType(code); |
989 |
0
|
kimReferenceTypeCache.put(EmploymentTypeInfo.class.getSimpleName()+"-"+code, type); |
990 |
|
} |
991 |
0
|
return type; |
992 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
993 |
0
|
public EntityNameTypeInfo getEntityNameType( String code ) {... |
994 |
0
|
EntityNameTypeInfo type = (EntityNameTypeInfo)kimReferenceTypeCache.get(EntityNameTypeInfo.class.getSimpleName()+"-"+code); |
995 |
0
|
if ( type == null ) { |
996 |
0
|
type = getIdentityService().getEntityNameType(code); |
997 |
0
|
kimReferenceTypeCache.put(EntityNameTypeInfo.class.getSimpleName()+"-"+code, type); |
998 |
|
} |
999 |
0
|
return type; |
1000 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
1001 |
0
|
public EntityTypeInfo getEntityType( String code ) {... |
1002 |
0
|
EntityTypeInfo type = (EntityTypeInfo)kimReferenceTypeCache.get(EntityTypeInfo.class.getSimpleName()+"-"+code); |
1003 |
0
|
if ( type == null ) { |
1004 |
0
|
type = getIdentityService().getEntityType(code); |
1005 |
0
|
kimReferenceTypeCache.put(EntityTypeInfo.class.getSimpleName()+"-"+code, type); |
1006 |
|
} |
1007 |
0
|
return type; |
1008 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
1009 |
0
|
public ExternalIdentifierTypeInfo getExternalIdentifierType( String code ) {... |
1010 |
0
|
ExternalIdentifierTypeInfo type = (ExternalIdentifierTypeInfo)kimReferenceTypeCache.get(ExternalIdentifierTypeInfo.class.getSimpleName()+"-"+code); |
1011 |
0
|
if ( type == null ) { |
1012 |
0
|
type = getIdentityService().getExternalIdentifierType(code); |
1013 |
0
|
kimReferenceTypeCache.put(ExternalIdentifierTypeInfo.class.getSimpleName()+"-"+code, type); |
1014 |
|
} |
1015 |
0
|
return type; |
1016 |
|
} |
|
|
| 0% |
Uncovered Elements: 7 (7) |
Complexity: 2 |
Complexity Density: 0.4 |
|
1017 |
0
|
public PhoneTypeInfo getPhoneType( String code ) {... |
1018 |
0
|
PhoneTypeInfo type = (PhoneTypeInfo)kimReferenceTypeCache.get(PhoneTypeInfo.class.getSimpleName()+"-"+code); |
1019 |
0
|
if ( type == null ) { |
1020 |
0
|
type = getIdentityService().getPhoneType(code); |
1021 |
0
|
kimReferenceTypeCache.put(PhoneTypeInfo.class.getSimpleName()+"-"+code, type); |
1022 |
|
} |
1023 |
0
|
return type; |
1024 |
|
} |
1025 |
|
|
1026 |
|
|
1027 |
|
|
1028 |
|
|
1029 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
1030 |
0
|
public AuthenticationService getAuthenticationService() {... |
1031 |
0
|
if ( authenticationService == null ) { |
1032 |
0
|
authenticationService = KIMServiceLocator.getAuthenticationService(); |
1033 |
|
} |
1034 |
0
|
return authenticationService; |
1035 |
|
} |
1036 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
1037 |
0
|
public IdentityService getIdentityService() {... |
1038 |
0
|
if ( identityService == null ) { |
1039 |
0
|
identityService = KIMServiceLocator.getIdentityService(); |
1040 |
|
} |
1041 |
0
|
return identityService; |
1042 |
|
} |
1043 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
1044 |
0
|
public GroupService getGroupService() {... |
1045 |
0
|
if ( groupService == null ) { |
1046 |
0
|
groupService = KIMServiceLocator.getGroupService(); |
1047 |
|
} |
1048 |
0
|
return groupService; |
1049 |
|
} |
1050 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
1051 |
0
|
public PermissionService getPermissionService() {... |
1052 |
0
|
if ( permissionService == null ) { |
1053 |
0
|
permissionService = KIMServiceLocator.getPermissionService(); |
1054 |
|
} |
1055 |
0
|
return permissionService; |
1056 |
|
} |
1057 |
|
|
|
|
| 0% |
Uncovered Elements: 5 (5) |
Complexity: 2 |
Complexity Density: 0.67 |
|
1058 |
0
|
public ResponsibilityService getResponsibilityService() {... |
1059 |
0
|
if ( responsibilityService == null ) { |
1060 |
0
|
responsibilityService = KIMServiceLocator.getResponsibilityService(); |
1061 |
|
} |
1062 |
0
|
return responsibilityService; |
1063 |
|
} |
1064 |
|
|
1065 |
|
|
1066 |
|
|
1067 |
|
|
1068 |
|
|
1069 |
|
|
1070 |
|
@see |
1071 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1072 |
0
|
public KimResponsibilityInfo getResponsibility(String responsibilityId) {... |
1073 |
0
|
return getResponsibilityService().getResponsibility( responsibilityId ); |
1074 |
|
} |
1075 |
|
|
1076 |
|
|
1077 |
|
@see |
1078 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1079 |
0
|
@Transactional(readOnly=true)... |
1080 |
|
public boolean hasResponsibility(String principalId, String namespaceCode, |
1081 |
|
String responsibilityName, AttributeSet qualification, |
1082 |
|
AttributeSet responsibilityDetails) { |
1083 |
0
|
return getResponsibilityService().hasResponsibility( principalId, namespaceCode, responsibilityName, qualification, responsibilityDetails ); |
1084 |
|
} |
1085 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1086 |
0
|
public List<? extends KimResponsibilityInfo> getResponsibilitiesByName( String namespaceCode, String responsibilityName) {... |
1087 |
0
|
return getResponsibilityService().getResponsibilitiesByName( namespaceCode, responsibilityName ); |
1088 |
|
} |
1089 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1090 |
0
|
public List<ResponsibilityActionInfo> getResponsibilityActions( String namespaceCode, String responsibilityName,... |
1091 |
|
AttributeSet qualification, AttributeSet responsibilityDetails) { |
1092 |
0
|
return getResponsibilityService().getResponsibilityActions( namespaceCode, responsibilityName, qualification, responsibilityDetails ); |
1093 |
|
} |
1094 |
|
|
1095 |
|
|
1096 |
|
|
1097 |
|
|
1098 |
|
@see |
1099 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1100 |
0
|
public List<ResponsibilityActionInfo> getResponsibilityActionsByTemplateName(... |
1101 |
|
String namespaceCode, String responsibilityTemplateName, |
1102 |
|
AttributeSet qualification, AttributeSet responsibilityDetails) { |
1103 |
0
|
return getResponsibilityService().getResponsibilityActionsByTemplateName(namespaceCode, responsibilityTemplateName, qualification, responsibilityDetails); |
1104 |
|
} |
1105 |
|
|
1106 |
|
|
1107 |
|
|
1108 |
|
|
1109 |
|
@see |
1110 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1111 |
0
|
@Transactional(readOnly=true)... |
1112 |
|
public boolean hasResponsibilityByTemplateName(String principalId, |
1113 |
|
String namespaceCode, String responsibilityTemplateName, |
1114 |
|
AttributeSet qualification, AttributeSet responsibilityDetails) { |
1115 |
0
|
return getResponsibilityService().hasResponsibilityByTemplateName(principalId, namespaceCode, responsibilityTemplateName, qualification, responsibilityDetails); |
1116 |
|
} |
1117 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1118 |
0
|
public void setEntityPrincipalCacheMaxSize(int entityPrincipalCacheMaxSize) {... |
1119 |
0
|
this.entityPrincipalCacheMaxSize = entityPrincipalCacheMaxSize; |
1120 |
|
} |
1121 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1122 |
0
|
public void setEntityPrincipalCacheMaxAgeSeconds(int entityPrincipalCacheMaxAge) {... |
1123 |
0
|
this.entityPrincipalCacheMaxAgeSeconds = entityPrincipalCacheMaxAge; |
1124 |
|
} |
1125 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1126 |
0
|
public void setGroupCacheMaxSize(int groupCacheMaxSize) {... |
1127 |
0
|
this.groupCacheMaxSize = groupCacheMaxSize; |
1128 |
|
} |
1129 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1130 |
0
|
public void setGroupCacheMaxAgeSeconds(int groupCacheMaxAge) {... |
1131 |
0
|
this.groupCacheMaxAgeSeconds = groupCacheMaxAge; |
1132 |
|
} |
1133 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1134 |
0
|
public void setPermissionCacheMaxSize(int permissionCacheMaxSize) {... |
1135 |
0
|
this.permissionCacheMaxSize = permissionCacheMaxSize; |
1136 |
|
} |
1137 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1138 |
0
|
public void setPermissionCacheMaxAgeSeconds(int permissionCacheMaxAge) {... |
1139 |
0
|
this.permissionCacheMaxAgeSeconds = permissionCacheMaxAge; |
1140 |
|
} |
1141 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1142 |
0
|
public void setResponsibilityCacheMaxSize(int responsibilityCacheMaxSize) {... |
1143 |
0
|
this.responsibilityCacheMaxSize = responsibilityCacheMaxSize; |
1144 |
|
} |
1145 |
|
|
|
|
| 0% |
Uncovered Elements: 1 (1) |
Complexity: 1 |
Complexity Density: 1 |
|
1146 |
0
|
public void setResponsibilityCacheMaxAgeSeconds(int responsibilityCacheMaxAge) {... |
1147 |
0
|
this.responsibilityCacheMaxAgeSeconds = responsibilityCacheMaxAge; |
1148 |
|
} |
1149 |
|
|
|
|
| 0% |
Uncovered Elements: 30 (30) |
Complexity: 7 |
Complexity Density: 0.35 |
|
1150 |
0
|
protected void logAuthorizationCheck(String checkType, String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification ) {... |
1151 |
0
|
StringBuilder sb = new StringBuilder(); |
1152 |
0
|
sb.append( '\n' ); |
1153 |
0
|
sb.append( "Is AuthZ for " ).append( checkType ).append( ": " ).append( namespaceCode ).append( "/" ).append( permissionName ).append( '\n' ); |
1154 |
0
|
sb.append( " Principal: " ).append( principalId ); |
1155 |
0
|
if ( principalId != null ) { |
1156 |
0
|
KimPrincipalInfo principal = getPrincipal( principalId ); |
1157 |
0
|
if ( principal != null ) { |
1158 |
0
|
sb.append( " (" ).append( principal.getPrincipalName() ).append( ')' ); |
1159 |
|
} |
1160 |
|
} |
1161 |
0
|
sb.append( '\n' ); |
1162 |
0
|
sb.append( " Details:\n" ); |
1163 |
0
|
if ( permissionDetails != null ) { |
1164 |
0
|
sb.append( permissionDetails.formattedDump( 25 ) ); |
1165 |
|
} else { |
1166 |
0
|
sb.append( " [null]\n" ); |
1167 |
|
} |
1168 |
0
|
sb.append( " Qualifiers:\n" ); |
1169 |
0
|
if ( qualification != null && !qualification.isEmpty() ) { |
1170 |
0
|
sb.append( qualification.formattedDump( 25 ) ); |
1171 |
|
} else { |
1172 |
0
|
sb.append( " [null]\n" ); |
1173 |
|
} |
1174 |
0
|
if (LOG.isTraceEnabled()) { |
1175 |
0
|
LOG.trace( sb.append( RiceDebugUtils.getTruncatedStackTrace(true)).toString() ); |
1176 |
|
} else { |
1177 |
0
|
LOG.debug(sb.toString()); |
1178 |
|
} |
1179 |
|
} |
1180 |
|
|
|
|
| 0% |
Uncovered Elements: 24 (24) |
Complexity: 5 |
Complexity Density: 0.31 |
|
1181 |
0
|
protected void logHasPermissionCheck(String checkType, String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails ) {... |
1182 |
0
|
StringBuilder sb = new StringBuilder(); |
1183 |
0
|
sb.append( '\n' ); |
1184 |
0
|
sb.append( "Has Perm for " ).append( checkType ).append( ": " ).append( namespaceCode ).append( "/" ).append( permissionName ).append( '\n' ); |
1185 |
0
|
sb.append( " Principal: " ).append( principalId ); |
1186 |
0
|
if ( principalId != null ) { |
1187 |
0
|
KimPrincipalInfo principal = getPrincipal( principalId ); |
1188 |
0
|
if ( principal != null ) { |
1189 |
0
|
sb.append( " (" ).append( principal.getPrincipalName() ).append( ')' ); |
1190 |
|
} |
1191 |
|
} |
1192 |
0
|
sb.append( '\n' ); |
1193 |
0
|
sb.append( " Details:\n" ); |
1194 |
0
|
if ( permissionDetails != null ) { |
1195 |
0
|
sb.append( permissionDetails.formattedDump( 25 ) ); |
1196 |
|
} else { |
1197 |
0
|
sb.append( " [null]\n" ); |
1198 |
|
} |
1199 |
0
|
if (LOG.isTraceEnabled()) { |
1200 |
0
|
LOG.trace( sb.append( RiceDebugUtils.getTruncatedStackTrace(true)).toString() ); |
1201 |
|
} else { |
1202 |
0
|
LOG.debug(sb.toString()); |
1203 |
|
} |
1204 |
|
} |
1205 |
|
|
|
|
| 0% |
Uncovered Elements: 11 (11) |
Complexity: 4 |
Complexity Density: 0.57 |
|
1206 |
0
|
public GroupUpdateService getGroupUpdateService() {... |
1207 |
0
|
try { |
1208 |
0
|
if ( groupUpdateService == null ) { |
1209 |
0
|
groupUpdateService = KIMServiceLocator.getGroupUpdateService(); |
1210 |
0
|
if ( groupUpdateService == null ) { |
1211 |
0
|
throw new UnsupportedOperationException( "null returned for GroupUpdateService, unable to update group data"); |
1212 |
|
} |
1213 |
|
} |
1214 |
|
} catch ( Exception ex ) { |
1215 |
0
|
throw new UnsupportedOperationException( "unable to obtain a GroupUpdateService, unable to update group data", ex); |
1216 |
|
} |
1217 |
0
|
return groupUpdateService; |
1218 |
|
} |
1219 |
|
|
|
|
| 0% |
Uncovered Elements: 11 (11) |
Complexity: 4 |
Complexity Density: 0.57 |
|
1220 |
0
|
public IdentityUpdateService getIdentityUpdateService() {... |
1221 |
0
|
try { |
1222 |
0
|
if ( identityUpdateService == null ) { |
1223 |
0
|
identityUpdateService = KIMServiceLocator.getIdentityUpdateService(); |
1224 |
0
|
if ( identityUpdateService == null ) { |
1225 |
0
|
throw new UnsupportedOperationException( "null returned for IdentityUpdateService, unable to update identity data"); |
1226 |
|
} |
1227 |
|
} |
1228 |
|
} catch ( Exception ex ) { |
1229 |
0
|
throw new UnsupportedOperationException( "unable to obtain an IdentityUpdateService, unable to update identity data", ex); |
1230 |
|
} |
1231 |
0
|
return identityUpdateService; |
1232 |
|
} |
1233 |
|
} |