Package org.springframework.web.servlet.mvc

# Class HttpRequestHandlerAdapter

java.lang.Object
org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter

All Implemented Interfaces:
  `HandlerAdapter`

public class HttpRequestHandlerAdapter extends Object implements HandlerAdapter
Adapter to use the plain `HttpRequestHandler` interface with the generic `DispatcherServlet`. Supports handlers that implement the `LastModified` interface.

This is an SPI class, not used directly by application code.

Since:
  2.0
Author:
  Juergen Hoeller
See Also:
  - `DispatcherServlet`
  - `HttpRequestHandler`
  - `SimpleControllerHandlerAdapter`

## Constructor Summary

Constructors
Constructor
Description
`HttpRequestHandlerAdapter()`

## Method Summary

Modifier and Type
Method
Description
`long`
`getLastModified(HttpServletRequest request, Object handler)`
Same contract as for HttpServlet's `getLastModified` method.
`ModelAndView`
`handle(HttpServletRequest request, HttpServletResponse response, Object handler)`
Use the given handler to handle this request.
`boolean`
`supports(Object handler)`
Given a handler instance, return whether this `HandlerAdapter` can support it.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### HttpRequestHandlerAdapter

public HttpRequestHandlerAdapter()

## Method Details

### 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 request, HttpServletResponse response, 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:
  `request` - current HTTP request
  `response` - 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