in src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java [52:82]
protected void doRun(
final SlingJakartaHttpServletRequest request,
final JakartaPostResponse response,
final List<Modification> changes)
throws PersistenceException {
// SLING-3203: selectors, extension and suffix make no sense here and
// might lead to deleting other resources than the one the user means.
final RequestPathInfo rpi = request.getRequestPathInfo();
if ((rpi.getSelectors() != null && rpi.getSelectors().length > 0)
|| (rpi.getExtension() != null && rpi.getExtension().length() > 0)
|| (rpi.getSuffix() != null && rpi.getSuffix().length() > 0)) {
response.setStatus(
HttpServletResponse.SC_FORBIDDEN,
"DeleteOperation request cannot include any selectors, extension or suffix");
return;
}
final VersioningConfiguration versioningConfiguration = getVersioningConfiguration(request);
final boolean deleteChunks = isDeleteChunkRequest(request);
final Iterator<Resource> res = getApplyToResources(request);
if (res == null) {
final Resource resource = request.getResource();
deleteResource(resource, changes, versioningConfiguration, deleteChunks);
} else {
while (res.hasNext()) {
final Resource resource = res.next();
deleteResource(resource, changes, versioningConfiguration, deleteChunks);
}
}
}