You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 10:00:23 UTC
[sling-org-apache-sling-resourceresolver] 05/10: SLING-2691 :
Correctly update mapping if a jcr:content node is removed
This is an automated email from the ASF dual-hosted git repository.
rombert pushed a commit to annotated tag org.apache.sling.resourceresolver-1.0.2
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-resourceresolver.git
commit a2175a445839abad2d5c27edea25868b4dfada19
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Mon Dec 3 13:57:01 2012 +0000
SLING-2691 : Correctly update mapping if a jcr:content node is removed
git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/bundles/resourceresolver@1416522 13f79535-47bb-0310-9956-ffa450edef68
---
.../sling/resourceresolver/impl/mapping/MapEntries.java | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/apache/sling/resourceresolver/impl/mapping/MapEntries.java b/src/main/java/org/apache/sling/resourceresolver/impl/mapping/MapEntries.java
index 1c22135..7a5ff94 100644
--- a/src/main/java/org/apache/sling/resourceresolver/impl/mapping/MapEntries.java
+++ b/src/main/java/org/apache/sling/resourceresolver/impl/mapping/MapEntries.java
@@ -360,15 +360,21 @@ public class MapEntries implements EventHandler {
// check whether a remove event has an influence on vanity paths
boolean doInit = true;
if (SlingConstants.TOPIC_RESOURCE_REMOVED.equals(event.getTopic()) && !path.startsWith(this.mapRoot)) {
+ final String checkPath;
+ if ( path.endsWith("/jcr:content") ) {
+ checkPath = path.substring(0, path.length() - 12);
+ } else {
+ checkPath = path;
+ }
doInit = false;
for (final String target : this.vanityTargets) {
- if (target.startsWith(path)) {
+ if (target.startsWith(checkPath)) {
doInit = true;
break;
}
}
for (final String target : this.aliasMap.keySet()) {
- if (target.startsWith(path)) {
+ if (target.startsWith(checkPath)) {
doInit = true;
break;
}
@@ -747,7 +753,7 @@ public class MapEntries implements EventHandler {
PROP_REDIRECT_EXTERNAL_REDIRECT_STATUS, PROP_REDIRECT_EXTERNAL,
ResourceResolverImpl.PROP_REDIRECT_INTERNAL, PROP_REDIRECT_EXTERNAL_STATUS,
PROP_REG_EXP, ResourceResolverImpl.PROP_ALIAS };
- final String[] eventProps = { "resourceAddedAttributes", "resourceChangedAttributes", "resourceRemovedAttributes" };
+ final String[] eventProps = { SlingConstants.PROPERTY_ADDED_ATTRIBUTES, SlingConstants.PROPERTY_CHANGED_ATTRIBUTES, SlingConstants.PROPERTY_REMOVED_ATTRIBUTES };
final StringBuilder filter = new StringBuilder();
filter.append("(|");
for (final String eventProp : eventProps) {
@@ -757,7 +763,7 @@ public class MapEntries implements EventHandler {
}
filter.append(")");
}
- filter.append("(" + EventConstants.EVENT_TOPIC + "=" + SlingConstants.TOPIC_RESOURCE_REMOVED + ")");
+ filter.append("(").append(EventConstants.EVENT_TOPIC).append("=").append(SlingConstants.TOPIC_RESOURCE_REMOVED).append(")");
filter.append(")");
return filter.toString();
--
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.