Class HandlerFunctionAdapter
java.lang.Object
org.springframework.web.servlet.function.support.HandlerFunctionAdapter
- All Implemented Interfaces:
Ordered,HandlerAdapter
HandlerAdapter implementation that supports HandlerFunctions.- Since:
- 5.2
- Author:
- Arjen Poutsma
-
Field Summary
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlonggetLastModified(HttpServletRequest request, Object handler) Same contract as for HttpServlet'sgetLastModifiedmethod.intgetOrder()Get the order value of this object.handle(HttpServletRequest servletRequest, HttpServletResponse servletResponse, Object handler) Use the given handler to handle this request.voidsetAsyncRequestTimeout(long timeout) Specify the amount of time, in milliseconds, before concurrent handling should time out.voidsetOrder(int order) Specify the order value for this HandlerAdapter bean.booleanGiven a handler instance, return whether thisHandlerAdaptercan support it.
-
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:OrderedGet 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-startupvalues).Same order values will result in arbitrary sort positions for the affected objects.
-
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
Description copied from interface:HandlerAdapterGiven a handler instance, return whether thisHandlerAdaptercan 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:
supportsin interfaceHandlerAdapter- 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:HandlerAdapterUse the given handler to handle this request. The workflow that is required may vary widely.- Specified by:
handlein interfaceHandlerAdapter- Parameters:
servletRequest- current HTTP requestservletResponse- current HTTP responsehandler- the handler to use. This object must have previously been passed to thesupportsmethod of this interface, which must have returnedtrue.- Returns:
- a ModelAndView object with the name of the view and the required
model data, or
nullif the request has been handled directly - Throws:
Exception- in case of errors
-
getLastModified
Description copied from interface:HandlerAdapterSame contract as for HttpServlet'sgetLastModifiedmethod. Can simply return -1 if there's no support in the handler class.- Specified by:
getLastModifiedin interfaceHandlerAdapter- Parameters:
request- current HTTP requesthandler- the handler to use- Returns:
- the lastModified value for the given handler
-