Author: fmeschbe
Date: Tue Mar 29 08:30:40 2011
New Revision: 1086516
URL: http://svn.apache.org/viewvc?rev=1086516&view=rev
Log:
Fix false positive switching create status in case the target node does not
exist
Modified:
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/ImportOperation.java
Modified:
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/ImportOperation.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/ImportOperation.java?rev=1086516&r1=1086515&r2=1086516&view=diff
==============================================================================
---
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/ImportOperation.java
(original)
+++
sling/trunk/bundles/servlets/post/src/main/java/org/apache/sling/servlets/post/impl/operations/ImportOperation.java
Tue Mar 29 08:30:40 2011
@@ -122,15 +122,17 @@ public class ImportOperation extends Abs
if (request.getParameter(SlingPostConstants.RP_NODE_NAME) != null) {
// exact name
targetName = request.getParameter(SlingPostConstants.RP_NODE_NAME);
- if (targetName.length() > 0 && node.hasNode(targetName) &&
!replace) {
- response.setStatus(HttpServletResponse.SC_PRECONDITION_FAILED,
- "Cannot import " + path + "/" + targetName
- + ": node exists");
- return;
+ if (targetName.length() > 0 && node.hasNode(targetName)) {
+ if (replace) {
+ response.setCreateRequest(false);
+ } else {
+ response.setStatus(
+ HttpServletResponse.SC_PRECONDITION_FAILED,
+ "Cannot import " + path + "/" + targetName
+ + ": node exists");
+ return;
+ }
}
-
- // node exists to be overwritten
- response.setCreateRequest(false);
} else if (request.getParameter(SlingPostConstants.RP_NODE_NAME_HINT)
!= null) {
// node name hint only
String nodePath = generateName(request, basePath);