Package org.molgenis.data.security.meta
Class EntityTypeRepositorySecurityDecorator
- java.lang.Object
-
- com.google.common.collect.ForwardingObject
-
- org.molgenis.data.AbstractRepositoryDecorator<E>
-
- org.molgenis.data.security.owned.AbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
- org.molgenis.data.security.meta.EntityTypeRepositorySecurityDecorator
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Iterable<EntityType>,Repository<EntityType>
public class EntityTypeRepositorySecurityDecorator extends AbstractRowLevelSecurityRepositoryDecorator<EntityType>
Decorator for the entity type repository: - filters requested entities based on the permissions of the current user - validates permissions when adding, updating or deleting entity types
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.molgenis.data.security.owned.AbstractRowLevelSecurityRepositoryDecorator
AbstractRowLevelSecurityRepositoryDecorator.Action
-
-
Constructor Summary
Constructors Constructor Description EntityTypeRepositorySecurityDecorator(Repository<EntityType> delegateRepository, SystemEntityTypeRegistry systemEntityTypeRegistry, UserPermissionEvaluator userPermissionEvaluator, org.springframework.security.acls.model.MutableAclService mutableAclService, MutableAclClassService mutableAclClassService, DataService dataService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcreateAcl(EntityType entityType)voiddeleteAcl(Object entityTypeId)voiddeleteAcl(EntityType entityType)booleanisActionPermitted(Object id, AbstractRowLevelSecurityRepositoryDecorator.Action action)booleanisActionPermitted(EntityType entityType, AbstractRowLevelSecurityRepositoryDecorator.Action action)voidthrowPermissionException(EntityType entityType, AbstractRowLevelSecurityRepositoryDecorator.Action action)voidupdateAcl(EntityType entityType)-
Methods inherited from class org.molgenis.data.security.owned.AbstractRowLevelSecurityRepositoryDecorator
add, add, aggregate, count, count, delete, delete, deleteAll, deleteAll, deleteById, findAll, findAll, findAll, findOne, findOneById, findOneById, forEachBatched, iterator, update, update
-
Methods inherited from class org.molgenis.data.AbstractRepositoryDecorator
close, delegate, getCapabilities, getEntityType, getName, getQueryOperators, query
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface org.molgenis.data.Repository
forEachBatched, getExistingIDs, upsertBatch
-
-
-
-
Constructor Detail
-
EntityTypeRepositorySecurityDecorator
public EntityTypeRepositorySecurityDecorator(Repository<EntityType> delegateRepository, SystemEntityTypeRegistry systemEntityTypeRegistry, UserPermissionEvaluator userPermissionEvaluator, org.springframework.security.acls.model.MutableAclService mutableAclService, MutableAclClassService mutableAclClassService, DataService dataService)
-
-
Method Detail
-
isActionPermitted
public boolean isActionPermitted(EntityType entityType, AbstractRowLevelSecurityRepositoryDecorator.Action action)
- Specified by:
isActionPermittedin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
isActionPermitted
public boolean isActionPermitted(Object id, AbstractRowLevelSecurityRepositoryDecorator.Action action)
- Specified by:
isActionPermittedin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
createAcl
public void createAcl(EntityType entityType)
- Specified by:
createAclin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
deleteAcl
public void deleteAcl(EntityType entityType)
- Specified by:
deleteAclin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
deleteAcl
public void deleteAcl(Object entityTypeId)
- Specified by:
deleteAclin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
updateAcl
public void updateAcl(EntityType entityType)
- Specified by:
updateAclin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
throwPermissionException
public void throwPermissionException(EntityType entityType, AbstractRowLevelSecurityRepositoryDecorator.Action action)
- Specified by:
throwPermissionExceptionin classAbstractRowLevelSecurityRepositoryDecorator<EntityType>
-
-