You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2016/04/07 09:53:18 UTC

svn commit: r1738098 - /sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java

Author: cziegeler
Date: Thu Apr  7 07:53:18 2016
New Revision: 1738098

URL: http://svn.apache.org/viewvc?rev=1738098&view=rev
Log:
SLING-5637 : Resource.delete is not called if resource is adaptable to Node

Modified:
    sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java

Modified: sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java?rev=1738098&r1=1738097&r2=1738098&view=diff
==============================================================================
--- sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java (original)
+++ sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/DeleteOperation.java Thu Apr  7 07:53:18 2016
@@ -58,15 +58,15 @@ public class DeleteOperation extends Abs
         // 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) 
+        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, 
+                    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);
@@ -100,19 +100,17 @@ public class DeleteOperation extends Abs
             } else {
                 checkoutIfNecessary(node.getParent(), changes,
                     versioningConfiguration);
-                node.remove();
             }
-
-        } else {
-            try {
-                resource.getResourceResolver().delete(resource);
-            } catch (final PersistenceException pe) {
-                if (pe.getCause() instanceof RepositoryException) {
-                    throw (RepositoryException) pe.getCause();
-                }
-                throw new RepositoryException(pe);
+        }
+        try {
+            resource.getResourceResolver().delete(resource);
+        } catch (final PersistenceException pe) {
+            if (pe.getCause() instanceof RepositoryException) {
+                throw (RepositoryException) pe.getCause();
             }
+            throw new RepositoryException(pe);
         }
+
         changes.add(Modification.onDeleted(resource.getPath()));
     }