Joanna Jasnowska created SLING-7593:
---------------------------------------

             Summary: ResourceTraversor doesn't support ResourceDecorator 
pattern
                 Key: SLING-7593
                 URL: https://issues.apache.org/jira/browse/SLING-7593
             Project: Sling
          Issue Type: Bug
            Reporter: Joanna Jasnowska
         Attachments: 
calling_deprecated_ResourceUtil_listChildren(resource)_replaced_with_resource_listChildren.patch

In my current project, we are using ResourceDecorator pattern. In one case we 
would like to decorate a resource with additional children. Unfortunately 
ResourceTraversor object doesn't accept information about children from 
ResourceDecorator. It is caused by usage of ResourceUtil.listChildren(resource) 
method (inside ResourceTraversor class) which is deprecated. Under the hood the 
method invokes resource.getResourceResolver.listChildren(resource) method which 
reads data directly from repo. In result our additional children are not 
returned. Moreover, we don't have a place to add them to the list returned from 
resourceResolver.listChildren method.

When we change the approach and we invoke resource.listChildren() method 
instead of ResourceUtil.listChildren(resource) then we get solution which is 
compatible with ResourceDecorator pattern and on the other hand when resources 
are not decorated then no changes should be observed.

Additionally I have one additional question about org.apache.sling.servlets.get 
bundle imported packages. Why do we have the following dependency 
org.apache.sling.api.resource.external;version="[1.0,2)" in the latest released 
version? On the other hand the same bundle has dependency on 
org.apache.sling.api.resource; version="[2.10,3)". Is it expected? If yes then 
how to provide org.apache.sling.api.resource.external;version="[1.0,2)" on my 
environment, because now I don't have it.

In the attachment section, you could find patch containing fix for the 
described scenario.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to