Class ResourceTraversor

java.lang.Object
org.apache.sling.servlets.get.impl.util.ResourceTraversor

public class ResourceTraversor extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
    ResourceTraversor(int levels, long maxResources, org.apache.sling.api.resource.Resource resource, boolean ecmaSupport)
    Create a ResourceTraversor, optionally limiting recursion and total number of resources
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Recursive descent from startResource, collecting JSONObjects into startObject.
    jakarta.json.JsonObject
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ResourceTraversor

      public ResourceTraversor(int levels, long maxResources, org.apache.sling.api.resource.Resource resource, boolean ecmaSupport)
      Create a ResourceTraversor, optionally limiting recursion and total number of resources
      Parameters:
      levels - recursion levels limit, -1 means no limit
      maxResources - maximum number of resources to collect, ignored if levels == 1
      resource - the root resource to traverse
  • Method Details

    • collectResources

      public int collectResources() throws org.apache.sling.api.request.RecursionTooDeepException
      Recursive descent from startResource, collecting JSONObjects into startObject. Throws a RecursionTooDeepException if the maximum number of nodes is reached on a "deep" traversal (where "deep" === level greater than 1).
      Returns:
      -1 if everything went fine, a positive value when the resource has more child nodes then allowed.
      Throws:
      org.apache.sling.api.request.RecursionTooDeepException
    • getJSONObject

      public jakarta.json.JsonObject getJSONObject()