Package org.molgenis.data.security
Class RepositorySecurityDecorator
- java.lang.Object
-
- com.google.common.collect.ForwardingObject
-
- org.molgenis.data.AbstractRepositoryDecorator<Entity>
-
- org.molgenis.data.security.RepositorySecurityDecorator
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Iterable<Entity>,Repository<Entity>
public class RepositorySecurityDecorator extends AbstractRepositoryDecorator<Entity>
Repository decorated that validates that current user has permission to perform an operation on an entity type's data.
-
-
Constructor Summary
Constructors Constructor Description RepositorySecurityDecorator(Repository<Entity> delegateRepository, UserPermissionEvaluator permissionService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Integeradd(Stream<Entity> entities)voidadd(Entity entity)AggregateResultaggregate(AggregateQuery aggregateQuery)voidclose()longcount()longcount(Query<Entity> q)voiddelete(Stream<Entity> entities)voiddelete(Entity entity)voiddeleteAll()voiddeleteAll(Stream<Object> ids)voiddeleteById(Object id)Stream<Entity>findAll(Stream<Object> ids)Stream<Entity>findAll(Stream<Object> ids, Fetch fetch)Stream<Entity>findAll(Query<Entity> q)EntityfindOne(Query<Entity> q)EntityfindOneById(Object id)EntityfindOneById(Object id, Fetch fetch)voidforEachBatched(Fetch fetch, Consumer<List<Entity>> consumer, int batchSize)Iterator<Entity>iterator()voidupdate(Stream<Entity> entities)voidupdate(Entity entity)-
Methods inherited from class org.molgenis.data.AbstractRepositoryDecorator
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
-
RepositorySecurityDecorator
public RepositorySecurityDecorator(Repository<Entity> delegateRepository, UserPermissionEvaluator permissionService)
-
-
Method Detail
-
forEachBatched
public void forEachBatched(Fetch fetch, Consumer<List<Entity>> consumer, int batchSize)
- Specified by:
forEachBatchedin interfaceRepository<Entity>- Overrides:
forEachBatchedin classAbstractRepositoryDecorator<Entity>
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classAbstractRepositoryDecorator<Entity>- Throws:
IOException
-
count
public long count(Query<Entity> q)
- Specified by:
countin interfaceRepository<Entity>- Overrides:
countin classAbstractRepositoryDecorator<Entity>
-
findAll
public Stream<Entity> findAll(Query<Entity> q)
- Specified by:
findAllin interfaceRepository<Entity>- Overrides:
findAllin classAbstractRepositoryDecorator<Entity>
-
findOne
public Entity findOne(Query<Entity> q)
- Specified by:
findOnein interfaceRepository<Entity>- Overrides:
findOnein classAbstractRepositoryDecorator<Entity>
-
findOneById
public Entity findOneById(Object id)
- Specified by:
findOneByIdin interfaceRepository<Entity>- Overrides:
findOneByIdin classAbstractRepositoryDecorator<Entity>
-
findOneById
public Entity findOneById(Object id, Fetch fetch)
- Specified by:
findOneByIdin interfaceRepository<Entity>- Overrides:
findOneByIdin classAbstractRepositoryDecorator<Entity>
-
findAll
public Stream<Entity> findAll(Stream<Object> ids)
- Specified by:
findAllin interfaceRepository<Entity>- Overrides:
findAllin classAbstractRepositoryDecorator<Entity>
-
findAll
public Stream<Entity> findAll(Stream<Object> ids, Fetch fetch)
- Specified by:
findAllin interfaceRepository<Entity>- Overrides:
findAllin classAbstractRepositoryDecorator<Entity>
-
count
public long count()
- Specified by:
countin interfaceRepository<Entity>- Overrides:
countin classAbstractRepositoryDecorator<Entity>
-
update
public void update(Entity entity)
- Specified by:
updatein interfaceRepository<Entity>- Overrides:
updatein classAbstractRepositoryDecorator<Entity>
-
update
public void update(Stream<Entity> entities)
- Specified by:
updatein interfaceRepository<Entity>- Overrides:
updatein classAbstractRepositoryDecorator<Entity>
-
delete
public void delete(Entity entity)
- Specified by:
deletein interfaceRepository<Entity>- Overrides:
deletein classAbstractRepositoryDecorator<Entity>
-
delete
public void delete(Stream<Entity> entities)
- Specified by:
deletein interfaceRepository<Entity>- Overrides:
deletein classAbstractRepositoryDecorator<Entity>
-
deleteById
public void deleteById(Object id)
- Specified by:
deleteByIdin interfaceRepository<Entity>- Overrides:
deleteByIdin classAbstractRepositoryDecorator<Entity>
-
deleteAll
public void deleteAll(Stream<Object> ids)
- Specified by:
deleteAllin interfaceRepository<Entity>- Overrides:
deleteAllin classAbstractRepositoryDecorator<Entity>
-
deleteAll
public void deleteAll()
- Specified by:
deleteAllin interfaceRepository<Entity>- Overrides:
deleteAllin classAbstractRepositoryDecorator<Entity>
-
add
public void add(Entity entity)
- Specified by:
addin interfaceRepository<Entity>- Overrides:
addin classAbstractRepositoryDecorator<Entity>
-
add
public Integer add(Stream<Entity> entities)
- Specified by:
addin interfaceRepository<Entity>- Overrides:
addin classAbstractRepositoryDecorator<Entity>
-
aggregate
public AggregateResult aggregate(AggregateQuery aggregateQuery)
- Specified by:
aggregatein interfaceRepository<Entity>- Overrides:
aggregatein classAbstractRepositoryDecorator<Entity>
-
-