Class HttpServerRequestWrapper

java.lang.Object
org.wildfly.security.http.HttpServerRequestWrapper
All Implemented Interfaces:
HttpServerRequest, HttpServerScopes

public class HttpServerRequestWrapper extends Object implements HttpServerRequest
A wrapper delegating any request to the delegated implementation.

Determined to be used as base class for HttpServerRequest without need to implement methods delegating requests to the delegated implementation.

Author:
Pedro Igor
  • Constructor Details

    • HttpServerRequestWrapper

      public HttpServerRequestWrapper(HttpServerRequest delegate)
      Construct new instance.
      Parameters:
      delegate - a request to which will be delegated any requests
  • Method Details

    • getScope

      public HttpScope getScope(Scope scope)
      Description copied from interface: HttpServerScopes
      Get the specified HttpScope if available.
      Specified by:
      getScope in interface HttpServerScopes
      Parameters:
      scope - the type of the scope required.
      Returns:
      the scope specified or null if not supported.
    • getScopeIds

      public Collection<String> getScopeIds(Scope scope)
      Description copied from interface: HttpServerScopes
      Get the IDs available for the scope specified.
      Specified by:
      getScopeIds in interface HttpServerScopes
      Parameters:
      scope - the scope the IDs are required for.
      Returns:
      The IDs available for the scope specified or null if the scope specified does not support obtaining scopes by ID.
    • getScope

      public HttpScope getScope(Scope scope, String id)
      Description copied from interface: HttpServerScopes
      Get the specified HttpScope with the specified ID.
      Specified by:
      getScope in interface HttpServerScopes
      Parameters:
      scope - the type of the scope required.
      id - the id of the scope instance required.
      Returns:
      the scope specified or null if not supported or if the scope with that ID does not exist.
    • getRequestHeaderValues

      public List<String> getRequestHeaderValues(String headerName)
      Description copied from interface: HttpServerRequest
      Get a list of all of the values set for the specified header within the HTTP request.
      Specified by:
      getRequestHeaderValues in interface HttpServerRequest
      Parameters:
      headerName - the not null name of the header the values are required for.
      Returns:
      a list of the values set for this header, if the header is not set on the request then null should be returned.
    • getFirstRequestHeaderValue

      public String getFirstRequestHeaderValue(String headerName)
      Description copied from interface: HttpServerRequest
      Get the first value for the header specified in the HTTP request.
      Specified by:
      getFirstRequestHeaderValue in interface HttpServerRequest
      Parameters:
      headerName - the not null name of the header the value is required for.
      Returns:
      the value for the first instance of the header specified, if the header is not present then null should be returned instead.
    • getSSLSession

      public SSLSession getSSLSession()
      Description copied from interface: HttpServerRequest
      Get the SSLSession (if any) that has been established for the connection in use. Note that even if this is null HttpServerRequest.getPeerCertificates() can still return some certificates, as the certificates may have been provided to the underlying server via some external mechanism (such as headers).
      Specified by:
      getSSLSession in interface HttpServerRequest
      Returns:
      the SSLSession (if any) that has been established for the connection in use, or null if none exists.
    • getPeerCertificates

      public Certificate[] getPeerCertificates()
      Description copied from interface: HttpServerRequest
      Get the peer certificates established on the connection.
      Specified by:
      getPeerCertificates in interface HttpServerRequest
      Returns:
      the peer certificates established on the connection or null if none available.
    • noAuthenticationInProgress

      public void noAuthenticationInProgress(HttpServerMechanismsResponder responder)
      Description copied from interface: HttpServerRequest
      Notification from the mechanism to state no authentication is in progress whilst evaluating the current request.
      Specified by:
      noAuthenticationInProgress in interface HttpServerRequest
      Parameters:
      responder - a HttpServerMechanismsResponder that can send a challenge should it be required.
    • authenticationInProgress

      public void authenticationInProgress(HttpServerMechanismsResponder responder)
      Description copied from interface: HttpServerRequest
      Notification that this mechanism has commenced but not completed authentication, typically because another challenge / response round trip is required.
      Specified by:
      authenticationInProgress in interface HttpServerRequest
      Parameters:
      responder - a HttpServerMechanismsResponder that can send a challenge should it be required.
    • authenticationComplete

      public void authenticationComplete(HttpServerMechanismsResponder responder)
      Description copied from interface: HttpServerRequest
      Notification that authentication is now complete. After this point the framework will perform an authorization check for the authenticated user and if successful establish the identity of the request.
      Specified by:
      authenticationComplete in interface HttpServerRequest
      Parameters:
      responder - a HttpServerMechanismsResponder that can send a response.
    • authenticationComplete

      public void authenticationComplete(HttpServerMechanismsResponder responder, Runnable logoutHandler)
      Description copied from interface: HttpServerRequest

      Notification that authentication is now complete.

      This method behaves exactly like {@link #authenticationComplete(HttpServerMechanismsResponder)}, allowing mechanisms to register a logout handler which should be called when a logout request is received by the underlying container.

      Specified by:
      authenticationComplete in interface HttpServerRequest
      Parameters:
      responder - a HttpServerMechanismsResponder that can send a response.
      logoutHandler - a Runnable that can handle logout
    • authenticationFailed

      public void authenticationFailed(String message, HttpServerMechanismsResponder responder)
      Description copied from interface: HttpServerRequest
      Notification that authentication failes.
      Specified by:
      authenticationFailed in interface HttpServerRequest
      Parameters:
      message - an error message describing the failure.
      responder - a HttpServerMechanismsResponder that can send a challenge should it be required.
    • badRequest

      public void badRequest(HttpAuthenticationException failure, HttpServerMechanismsResponder responder)
      Description copied from interface: HttpServerRequest
      Notification to indicate that this was a bad request.
      Specified by:
      badRequest in interface HttpServerRequest
      Parameters:
      failure - an HttpAuthenticationException to describe the error.
      responder - a HttpServerMechanismsResponder that can send a challenge should it be required.
    • getRequestMethod

      public String getRequestMethod()
      Description copied from interface: HttpServerRequest
      Returns the name of the HTTP method with which this request was made, for example, GET, POST, or PUT.
      Specified by:
      getRequestMethod in interface HttpServerRequest
      Returns:
      a String specifying the name of the method with which this request was made
    • getRequestURI

      public URI getRequestURI()
      Description copied from interface: HttpServerRequest
      Get the URI representation for the current request.
      Specified by:
      getRequestURI in interface HttpServerRequest
      Returns:
      the URI representation for the current request.
    • getRequestPath

      public String getRequestPath()
      Description copied from interface: HttpServerRequest
      Get the request path. This is the path relative to the context path. E.g.: for a HTTP GET request to http://my.appserver.com/my-application/path/sub-path this method is going to return /path/sub-path.
      Specified by:
      getRequestPath in interface HttpServerRequest
      Returns:
      the request path
    • getParameters

      public Map<String,List<String>> getParameters()
      Description copied from interface: HttpServerRequest
      Returns the parameters received in the current request. These parameters will be from both the query string and the form data when available. Where a parameter is named both in the query string and in the form data the List will contain the values from the query string followed by the values from the form data.
      Specified by:
      getParameters in interface HttpServerRequest
      Returns:
      the parameters received in the current request.
    • getParameterNames

      public Set<String> getParameterNames()
      Description copied from interface: HttpServerRequest
      Returns the names of all parameters either from the query string or from the form data where available.
      Specified by:
      getParameterNames in interface HttpServerRequest
      Returns:
      the names of all parameters either from the query string or from the form data where available.
    • getParameterValues

      public List<String> getParameterValues(String name)
      Description copied from interface: HttpServerRequest
      Return the values for the parameter specified, where a parameter is specified both in the query string and in the form data the query string values will be first in the List.
      Specified by:
      getParameterValues in interface HttpServerRequest
      Parameters:
      name - the name of the desires parameter values.
      Returns:
      the values for the parameter specified or null if the parameter was not in the request.
    • getFirstParameterValue

      public String getFirstParameterValue(String name)
      Description copied from interface: HttpServerRequest
      Get the first value for the parameter specified.
      Specified by:
      getFirstParameterValue in interface HttpServerRequest
      Parameters:
      name - the name of the parameter the first value is required for.
      Returns:
      the first value of the named parameter or null if the parameter is not available.
    • getCookies

      public List<HttpServerCookie> getCookies()
      Description copied from interface: HttpServerRequest
      Returns a List containing all of the HttpServerCookie objects the client sent with this request, or an empty List if no cookies were included in the request.
      Specified by:
      getCookies in interface HttpServerRequest
      Returns:
      a List containing all of the HttpServerCookie objects the client sent with this request, or an empty List if no cookies were included in the request.
    • getInputStream

      public InputStream getInputStream()
      Description copied from interface: HttpServerRequest
      Returns the request input stream.
      Specified by:
      getInputStream in interface HttpServerRequest
      Returns:
      the input stream or null if not supported.
    • getSourceAddress

      public InetSocketAddress getSourceAddress()
      Description copied from interface: HttpServerRequest
      Get the source address of the HTTP request.
      Specified by:
      getSourceAddress in interface HttpServerRequest
      Returns:
      the source address of the HTTP request
    • suspendRequest

      public boolean suspendRequest()
      Description copied from interface: HttpServerRequest
      Suspend the current request so that it can be subsequently resumed.
      Specified by:
      suspendRequest in interface HttpServerRequest
      Returns:
      true if suspending requests is supported, false otherwise.
    • resumeRequest

      public boolean resumeRequest()
      Description copied from interface: HttpServerRequest
      Resume any previously suspended request.
      Specified by:
      resumeRequest in interface HttpServerRequest
      Returns:
      true if resuming requests is supported, false otherwise.