Skip to content
Snippets Groups Projects
Commit a8e5db8a authored by Daniel Gerhardt's avatar Daniel Gerhardt
Browse files

Add bulk delete method to EntityService

parent 945b02bd
Branches
No related merge requests found
...@@ -239,6 +239,19 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService ...@@ -239,6 +239,19 @@ public class DefaultEntityServiceImpl<T extends Entity> implements EntityService
eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity)); eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity));
} }
@Override
@PreFilter(value = "hasPermission(filterObject, 'delete')", filterTarget = "entities")
public void delete(final Iterable<T> entities) {
for (T entity : entities) {
prepareDelete(entity);
eventPublisher.publishEvent(new BeforeDeletionEvent<>(this, entity));
}
repository.deleteAll(entities);
for (T entity : entities) {
eventPublisher.publishEvent(new AfterDeletionEvent<>(this, entity));
}
}
/** /**
* This method can be overridden by subclasses to do additional entity related actions before deletion. * This method can be overridden by subclasses to do additional entity related actions before deletion.
* *
......
...@@ -62,4 +62,7 @@ public interface EntityService<T extends Entity> { ...@@ -62,4 +62,7 @@ public interface EntityService<T extends Entity> {
@PreAuthorize("hasPermission(#entity, 'delete')") @PreAuthorize("hasPermission(#entity, 'delete')")
void delete(T entity); void delete(T entity);
@PreFilter(value = "hasPermission(filterObject, 'delete')", filterTarget = "entities")
void delete(Iterable<T> entities);
} }
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment