Class JsonRenderer
java.lang.Object
org.apache.sling.servlets.get.impl.helpers.JsonRenderer
- All Implemented Interfaces:
Renderer
The
JsonRendererServlet renders the current resource in JSON
on behalf of the DefaultGetServlet.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringSelector that causes hierarchy to be rendered as arrays instead of child objects - useful to preserve the order of those child objectsstatic final intHow much to indent in tidy modestatic final StringRecursion level selector that means "all levels"static final StringSelector that means "pretty-print the output -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected intgetMaxRecursionLevel(org.apache.sling.api.SlingJakartaHttpServletRequest req) Get recursion level from selectors.protected booleanhasSelector(org.apache.sling.api.SlingJakartaHttpServletRequest req, String selectorToCheck) Checks if the provided request contains a certain selector.protected booleanisTidy(org.apache.sling.api.SlingJakartaHttpServletRequest req) True if our request wants the "tidy" pretty-printed formatvoidrender(org.apache.sling.api.SlingJakartaHttpServletRequest req, org.apache.sling.api.SlingJakartaHttpServletResponse resp)
-
Field Details
-
INFINITY
Recursion level selector that means "all levels"- See Also:
-
TIDY
Selector that means "pretty-print the output- See Also:
-
HARRAY
Selector that causes hierarchy to be rendered as arrays instead of child objects - useful to preserve the order of those child objects- See Also:
-
INDENT_SPACES
public static final int INDENT_SPACESHow much to indent in tidy mode- See Also:
-
-
Constructor Details
-
JsonRenderer
public JsonRenderer(long maximumResults, boolean ecmaSupport)
-
-
Method Details
-
render
public void render(org.apache.sling.api.SlingJakartaHttpServletRequest req, org.apache.sling.api.SlingJakartaHttpServletResponse resp) throws IOException - Specified by:
renderin interfaceRenderer- Throws:
IOException
-
getMaxRecursionLevel
protected int getMaxRecursionLevel(org.apache.sling.api.SlingJakartaHttpServletRequest req) throws IllegalArgumentException Get recursion level from selectors. as per SLING-167: the last selector, if present, gives the recursion level.- Parameters:
req- the request- Returns:
- the recursion level
- Throws:
IllegalArgumentException- if the detected selector is not a number
-
hasSelector
protected boolean hasSelector(org.apache.sling.api.SlingJakartaHttpServletRequest req, String selectorToCheck) Checks if the provided request contains a certain selector.- Parameters:
req- the requestselectorToCheck- the selector- Returns:
trueif the selector is present,falseotherwise
-
isTidy
protected boolean isTidy(org.apache.sling.api.SlingJakartaHttpServletRequest req) True if our request wants the "tidy" pretty-printed format- Parameters:
req- the request- Returns:
trueif the request contains theTIDYselector,falseotherwise
-