Revision 0844524a
Added by Andreas Kohlbecker about 6 years ago
src/main/java/eu/etaxonomy/cdm/service/CdmUserHelper.java | ||
---|---|---|
10 | 10 |
|
11 | 11 |
import java.io.Serializable; |
12 | 12 |
import java.util.EnumSet; |
13 |
import java.util.UUID; |
|
13 | 14 |
|
14 | 15 |
import org.apache.log4j.Logger; |
15 | 16 |
import org.springframework.beans.factory.annotation.Autowired; |
... | ... | |
158 | 159 |
return false; |
159 | 160 |
} |
160 | 161 |
|
162 |
@Override |
|
163 |
public boolean userHasPermission(Class<? extends CdmBase> cdmType, UUID entitiyUuid, Object ... args){ |
|
164 |
EnumSet<CRUD> crudSet = crudSetFromArgs(args); |
|
165 |
try { |
|
166 |
CdmBase entity = repo.getCommonService().find(cdmType, entitiyUuid); |
|
167 |
return permissionEvaluator.hasPermission(getAuthentication(), entity, crudSet); |
|
168 |
} catch (PermissionDeniedException e){ |
|
169 |
//IGNORE |
|
170 |
} |
|
171 |
return false; |
|
172 |
} |
|
173 |
|
|
161 | 174 |
@Override |
162 | 175 |
public boolean userHasPermission(Class<? extends CdmBase> cdmType, Object ... args){ |
163 | 176 |
EnumSet<CRUD> crudSet = crudSetFromArgs(args); |
... | ... | |
259 | 272 |
return createAuthorityFor(username, cdmEntity, crud, property); |
260 | 273 |
} |
261 | 274 |
|
275 |
/** |
|
276 |
* @param username |
|
277 |
* @param cdmType |
|
278 |
* @param entitiyUuid |
|
279 |
* @param crud |
|
280 |
* @return |
|
281 |
*/ |
|
282 |
@Override |
|
283 |
public CdmAuthority createAuthorityFor(String username, Class<? extends CdmBase> cdmType, UUID entitiyUuid, EnumSet<CRUD> crud, String property) { |
|
284 |
|
|
285 |
CdmBase cdmEntity = repo.getCommonService().find(cdmType, entitiyUuid); |
|
286 |
return createAuthorityFor(username, cdmEntity, crud, property); |
|
287 |
} |
|
288 |
|
|
262 | 289 |
/** |
263 | 290 |
* {@inheritDoc} |
264 | 291 |
*/ |
... | ... | |
279 | 306 |
return createAuthorityFor(userName(), cdmType, entitiyId, crud, property); |
280 | 307 |
} |
281 | 308 |
|
309 |
/** |
|
310 |
* @param cdmType |
|
311 |
* @param entitiyUuid |
|
312 |
* @param crud |
|
313 |
* @return |
|
314 |
*/ |
|
315 |
@Override |
|
316 |
public CdmAuthority createAuthorityForCurrentUser(Class<? extends CdmBase> cdmType, UUID entitiyUuid, EnumSet<CRUD> crud, String property) { |
|
317 |
return createAuthorityFor(userName(), cdmType, entitiyUuid, crud, property); |
|
318 |
} |
|
319 |
|
|
282 | 320 |
/** |
283 | 321 |
* {@inheritDoc} |
284 | 322 |
*/ |
Also available in: Unified diff
switching vom id based to uuid based ui navigation and entity references