Class HandlerFunctionAdapter

java.lang.Object
org.springframework.web.servlet.function.support.HandlerFunctionAdapter
All Implemented Interfaces:
Ordered, HandlerAdapter

public class HandlerFunctionAdapter extends Object implements HandlerAdapter, Ordered
HandlerAdapter implementation that supports HandlerFunctions.
Since:
5.2
Author:
Arjen Poutsma
  • Constructor Details

    • HandlerFunctionAdapter

      public HandlerFunctionAdapter()
  • Method Details

    • setOrder

      public void setOrder(int order)
      Specify the order value for this HandlerAdapter bean.

      The default value is Ordered.LOWEST_PRECEDENCE, meaning non-ordered.

      See Also:
    • getOrder

      public int getOrder()
      Description copied from interface: Ordered
      Get the order value of this object.

      Higher values are interpreted as lower priority. As a consequence, the object with the lowest value has the highest priority (somewhat analogous to Servlet load-on-startup values).

      Same order values will result in arbitrary sort positions for the affected objects.

      Specified by:
      getOrder in interface Ordered
      Returns:
      the order value
      See Also:
    • setAsyncRequestTimeout

      public void setAsyncRequestTimeout(long timeout)
      Specify the amount of time, in milliseconds, before concurrent handling should time out. In Servlet 3, the timeout begins after the main request processing thread has exited and ends when the request is dispatched again for further processing of the concurrently produced result.

      If this value is not set, the default timeout of the underlying implementation is used.

      A value of 0 or less indicates that the asynchronous operation will never time out.

      Parameters:
      timeout - the timeout value in milliseconds
    • supports

      public boolean supports(Object handler)
      Description copied from interface: HandlerAdapter
      Given a handler instance, return whether this HandlerAdapter can support it. Typical HandlerAdapters will base the decision on the handler type. HandlerAdapters will usually only support one handler type each.

      A typical implementation:

      return (handler instanceof MyHandler);

      Specified by:
      supports in interface HandlerAdapter
      Parameters:
      handler - the handler object to check
      Returns:
      whether this object can use the given handler
    • handle

      @Nullable public ModelAndView handle(HttpServletRequest servletRequest, HttpServletResponse servletResponse, Object handler) throws Exception
      Description copied from interface: HandlerAdapter
      Use the given handler to handle this request. The workflow that is required may vary widely.
      Specified by:
      handle in interface HandlerAdapter
      Parameters:
      servletRequest - current HTTP request
      servletResponse - current HTTP response
      handler - the handler to use. This object must have previously been passed to the supports method of this interface, which must have returned true.
      Returns:
      a ModelAndView object with the name of the view and the required model data, or null if the request has been handled directly
      Throws:
      Exception - in case of errors
    • getLastModified

      public long getLastModified(HttpServletRequest request, Object handler)
      Description copied from interface: HandlerAdapter
      Same contract as for HttpServlet's getLastModified method. Can simply return -1 if there's no support in the handler class.
      Specified by:
      getLastModified in interface HandlerAdapter
      Parameters:
      request - current HTTP request
      handler - the handler to use
      Returns:
      the lastModified value for the given handler