Class RequestUtil

java.lang.Object
org.apache.sling.api.request.RequestUtil

public class RequestUtil extends Object
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 Details

    • RequestUtil

      public RequestUtil()
  • Method Details

    • parserHeader

      @NotNull public static @NotNull Map<String,Map<String,String>> parserHeader(@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 an Accept-* 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 the q 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:
      1. If the servlet has a servlet config, the servlet name from the servlet config is taken.
      2. Otherwise check the servlet info
      3. 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 is null 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 request
      resp - the response
      Returns:
      true if the response was set