Class HandlerFunctionAdapter
java.lang.Object
org.springframework.web.servlet.function.support.HandlerFunctionAdapter
- All Implemented Interfaces:
Ordered
,HandlerAdapter
HandlerAdapter
implementation that supports HandlerFunction
s.- Since:
- 5.2
- Author:
- Arjen Poutsma
-
Field Summary
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionlong
getLastModified
(HttpServletRequest request, Object handler) Same contract as for HttpServlet'sgetLastModified
method.int
getOrder()
Get the order value of this object.handle
(HttpServletRequest servletRequest, HttpServletResponse servletResponse, Object handler) Use the given handler to handle this request.void
setAsyncRequestTimeout
(long timeout) Specify the amount of time, in milliseconds, before concurrent handling should time out.void
setOrder
(int order) Specify the order value for this HandlerAdapter bean.boolean
Given a handler instance, return whether thisHandlerAdapter
can 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: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.
-
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:HandlerAdapter
Given a handler instance, return whether thisHandlerAdapter
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 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:HandlerAdapter
Use the given handler to handle this request. The workflow that is required may vary widely.- Specified by:
handle
in interfaceHandlerAdapter
- Parameters:
servletRequest
- current HTTP requestservletResponse
- current HTTP responsehandler
- the handler to use. This object must have previously been passed to thesupports
method of this interface, which must have returnedtrue
.- 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
Description copied from interface:HandlerAdapter
Same contract as for HttpServlet'sgetLastModified
method. Can simply return -1 if there's no support in the handler class.- Specified by:
getLastModified
in interfaceHandlerAdapter
- Parameters:
request
- current HTTP requesthandler
- the handler to use- Returns:
- the lastModified value for the given handler
-