java.lang.Object
com.inductiveautomation.ignition.gateway.dataroutes.RequestContext

public class RequestContext extends Object
Wrapper around an HttpServletRequest to include some helpful data for RouteHandler instances.
  • Constructor Details

    • RequestContext

      public RequestContext(jakarta.servlet.http.HttpServletRequest request, String path)
  • Method Details

    • getGatewayContext

      public GatewayContext getGatewayContext()
    • getRequest

      public jakarta.servlet.http.HttpServletRequest getRequest()
      The underlying web request
    • getPath

      public String getPath()
      Returns the URL path that that matched the route. This will not include /data/module/
    • getMethod

      public HttpMethod getMethod()
      Returns the HttpMethod of the request
    • readBody

      public String readBody() throws IOException
      Throws:
      IOException
    • getParameter

      @Nullable public String getParameter(String name)

      Fetch a named parameter. First this will match any parameters that were part of the route's named parameters. For example, if your route was /widgets/:id you may call getParameter("id") and it will return the value from the request URL that matched the :id parameter.

      If it does not match a route parameter, it will delegate to the internal HttpServletRequest's parameter map, which comes from the URL's query string or post parameters.

    • putParameter

      public void putParameter(String name, String value)
    • getRequestUri

      public URI getRequestUri()
      Returns:
      the full URI for this HTTP Request (example: http://example.com:8088/foo/bar?baz=abc)
    • getRelativeRequestUri

      public URI getRelativeRequestUri()
      Returns:
      the relative URI for this HTTP Request (example: /foo/bar?baz=abc)
    • getActor

      public String getActor()
      Convenience method to try and find a reasonable representation for the "actor" who is making the request. Will ask the WebUiSession, then the ApiTokenManager, then the SecurityZoneAccessControlStrategy in that order to provide an actor string, and will return "unknown" if none of them can provide one.
    • getSecurityZones

      public com.google.common.collect.ImmutableCollection<String> getSecurityZones()