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 String
Selector that causes hierarchy to be rendered as arrays instead of child objects - useful to preserve the order of those child objectsstatic final int
How much to indent in tidy modestatic final String
Recursion level selector that means "all levels"static final String
Selector that means "pretty-print the output -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected int
getMaxRecursionLevel
(org.apache.sling.api.SlingJakartaHttpServletRequest req) Get recursion level from selectors.protected boolean
hasSelector
(org.apache.sling.api.SlingJakartaHttpServletRequest req, String selectorToCheck) Checks if the provided request contains a certain selector.protected boolean
isTidy
(org.apache.sling.api.SlingJakartaHttpServletRequest req) True if our request wants the "tidy" pretty-printed formatvoid
render
(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:
render
in 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:
true
if the selector is present,false
otherwise
-
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:
true
if the request contains theTIDY
selector,false
otherwise
-