Package org.apache.sling.api.request
Class RequestUtil
java.lang.Object
org.apache.sling.api.request.RequestUtil
Request related utility methods.
This class is not intended to be extended or instantiated because it just provides static utility methods not intended to be overwritten.
- Since:
- 2.1 (Sling API Bundle 2.1.0)
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic @NotNull String
getServletName
(@NotNull javax.servlet.Servlet servlet) Utility method to return a name for the given servlet.static boolean
handleIfModifiedSince
(@NotNull SlingHttpServletRequest req, @NotNull javax.servlet.http.HttpServletResponse resp) Checks if the request contains a if-last-modified-since header and if the the request's underlying resource has a jcr:lastModified property. if the properties were modified before the header a 304 is sent otherwise the response last modified header is set.parserAcceptHeader
(@NotNull String value) Parses anAccept-*
header of the form:parserHeader
(@NotNull String value) Parses a header of the form:static @Nullable Object
setRequestAttribute
(@NotNull javax.servlet.http.HttpServletRequest request, @NotNull String name, Object value) Sets the named request attribute to the new value and returns the previous value.
-
Constructor Details
-
RequestUtil
public RequestUtil()
-
-
Method Details
-
parserHeader
@NotNull public static @NotNull Map<String,Map<String, parserHeaderString>> (@NotNull @NotNull String value) Parses a header of the form:Header = Token { "," Token } . Token = name { ";" Parameter } . Parameter = name [ "=" value ] .
"," and ";" are not allowed within name and value- Parameters:
value
- The header value- Returns:
- A Map indexed by the Token names where the values are Map instances indexed by parameter name
-
parserAcceptHeader
@NotNull public static @NotNull Map<String,Double> parserAcceptHeader(@NotNull @NotNull String value) Parses anAccept-*
header of the form:Header = Token { "," Token } . Token = name { ";" "q" [ "=" value ] } . Parameter = .
"," and ";" are not allowed within name and value- Parameters:
value
- The header value- Returns:
- A Map indexed by the Token names where the values are
Double
instances providing the value of theq
parameter.
-
getServletName
@NotNull public static @NotNull String getServletName(@NotNull @NotNull javax.servlet.Servlet servlet) Utility method to return a name for the given servlet. This method applies the following algorithm to find a non-null
, non-empty name:- If the servlet has a servlet config, the servlet name from the servlet config is taken.
- Otherwise check the servlet info
- Otherwise use the fully qualified name of the servlet class
- Parameters:
servlet
- The servlet- Returns:
- The name of the servlet.
-
setRequestAttribute
@Nullable public static @Nullable Object setRequestAttribute(@NotNull @NotNull javax.servlet.http.HttpServletRequest request, @NotNull @NotNull String name, Object value) Sets the named request attribute to the new value and returns the previous value.- Parameters:
request
- The request object whose attribute is to be set.name
- The name of the attribute to be set.value
- The new value of the attribute. If this isnull
the attribte is actually removed from the request.- Returns:
- The previous value of the named request attribute or
null
if it was not set.
-
handleIfModifiedSince
public static boolean handleIfModifiedSince(@NotNull @NotNull SlingHttpServletRequest req, @NotNull @NotNull javax.servlet.http.HttpServletResponse resp) Checks if the request contains a if-last-modified-since header and if the the request's underlying resource has a jcr:lastModified property. if the properties were modified before the header a 304 is sent otherwise the response last modified header is set.- Parameters:
req
- the requestresp
- the response- Returns:
true
if the response was set
-