Author: cziegeler
Date: Mon Apr 27 11:39:24 2015
New Revision: 1676240

URL: http://svn.apache.org/r1676240
Log:
SLING-4568 : Performance: MergingResourceProvider.ParentHidingHandler adds 
about 30pp rendering overhead. Apply slightly modified patch from Joel Richard

Modified:
    
sling/trunk/contrib/extensions/resourcemerger/src/main/java/org/apache/sling/resourcemerger/impl/CRUDMergingResourceProvider.java

Modified: 
sling/trunk/contrib/extensions/resourcemerger/src/main/java/org/apache/sling/resourcemerger/impl/CRUDMergingResourceProvider.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/resourcemerger/src/main/java/org/apache/sling/resourcemerger/impl/CRUDMergingResourceProvider.java?rev=1676240&r1=1676239&r2=1676240&view=diff
==============================================================================
--- 
sling/trunk/contrib/extensions/resourcemerger/src/main/java/org/apache/sling/resourcemerger/impl/CRUDMergingResourceProvider.java
 (original)
+++ 
sling/trunk/contrib/extensions/resourcemerger/src/main/java/org/apache/sling/resourcemerger/impl/CRUDMergingResourceProvider.java
 Mon Apr 27 11:39:24 2015
@@ -70,23 +70,20 @@ public class CRUDMergingResourceProvider
             holder.count++;
             holder.highestResourcePath = rsrc.getPath();
 
-            if (!ResourceUtil.isNonExistingResource(rsrc)) {
-                final boolean hidden;
-                if (isUnderlying) {
-                    hidden = false;
-                } else {
-                    // check parent for hiding
-                    // SLING 3521 : if parent is not readable, nothing is 
hidden
-                    final Resource parent = rsrc.getParent();
-                    hidden = (parent == null ? false : new 
ParentHidingHandler(parent, this.traverseHierarchie).isHidden(holder.name));
-                }
-                if (hidden) {
-                    holder.resources.clear();
-                } else {
-                    holder.resources.add(rsrc);
-                }
-            } else {
+            final boolean hidden;
+            if (isUnderlying) {
                 isUnderlying = false;
+                hidden = false;
+            } else {
+                // check parent for hiding
+                // SLING 3521 : if parent is not readable, nothing is hidden
+                final Resource parent = rsrc.getParent();
+                hidden = (parent == null ? false : new 
ParentHidingHandler(parent, this.traverseHierarchie).isHidden(holder.name));
+            }
+            if (hidden) {
+                holder.resources.clear();
+            } else if (!ResourceUtil.isNonExistingResource(rsrc)) {
+                holder.resources.add(rsrc);
             }
         }
 


Reply via email to