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/02/09 12:02:35 UTC

svn commit: r1729360 - /sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java

Author: cziegeler
Date: Tue Feb  9 11:02:34 2016
New Revision: 1729360

URL: http://svn.apache.org/viewvc?rev=1729360&view=rev
Log:
SLING-5499 : Servlets resource provider is hiding resources from other providers

Modified:
    sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java

Modified: sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java?rev=1729360&r1=1729359&r2=1729360&view=diff
==============================================================================
--- sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java (original)
+++ sling/trunk/bundles/servlets/resolver/src/main/java/org/apache/sling/servlets/resolver/internal/resource/ServletResourceProvider.java Tue Feb  9 11:02:34 2016
@@ -20,7 +20,6 @@ package org.apache.sling.servlets.resolv
 
 import java.util.Arrays;
 import java.util.Iterator;
-import java.util.NoSuchElementException;
 import java.util.Set;
 
 import javax.servlet.Servlet;
@@ -32,24 +31,6 @@ import org.apache.sling.spi.resource.pro
 
 public class ServletResourceProvider extends ResourceProvider<Object> {
 
-    private static final Iterator<Resource> EMPTY_ITERATOR = new Iterator<Resource>() {
-
-        @Override
-        public boolean hasNext() {
-            return false;
-        }
-
-        @Override
-        public Resource next() {
-            throw new NoSuchElementException();
-        }
-
-        @Override
-        public void remove() {
-            throw new UnsupportedOperationException();
-        }
-    };
-
     private Servlet servlet;
 
     private Set<String> resourcePaths;
@@ -69,11 +50,19 @@ public class ServletResourceProvider ext
             return new ServletResource(ctx.getResourceResolver(), servlet, path);
         }
 
+        final ResourceProvider parentProvider = ctx.getParentResourceProvider();
+        if ( parentProvider != null ) {
+            return parentProvider.getResource(ctx.getParentResolveContext(), path, resourceContext, parent);
+        }
         return null;
     }
 
     @Override
     public Iterator<Resource> listChildren(ResolveContext<Object> ctx, Resource parent) {
+        final ResourceProvider parentProvider = ctx.getParentResourceProvider();
+        if ( parentProvider != null ) {
+            return parentProvider.listChildren(ctx.getParentResolveContext(), parent);
+        }
         return null;
     }