org.springframework.web.servlet.mvc

## Class SimpleControllerHandlerAdapter

- java.lang.Object
- - org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter

All Implemented Interfaces:
  HandlerAdapter

    public class SimpleControllerHandlerAdapter
    extends Object
    implements HandlerAdapter

Adapter to use the plain `Controller` workflow interface with the generic `DispatcherServlet`. Supports handlers that implement the `LastModified` interface.

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

Author:
  Rod Johnson, Juergen Hoeller
See Also:
  `DispatcherServlet`, `Controller`, `LastModified`, `HttpRequestHandlerAdapter`

### Constructor Summary

Constructors
Constructor and Description
`SimpleControllerHandlerAdapter()`

### Method Summary

Methods
`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 or not this HandlerAdapter can support it.

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

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

### Constructor Detail

#### SimpleControllerHandlerAdapter

    public SimpleControllerHandlerAdapter()

### Method Detail

#### supports

    public boolean supports(Object handler)

Description copied from interface: `HandlerAdapter`
Given a handler instance, return whether or not 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` - handler object to check
Returns:
  whether or not this object can use the given handler

#### handle

    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` - handler to use. This object must have previously been passed to the `supports` method of this interface, which must have returned `true`.
Returns:
  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` - handler to use
Returns:
  the lastModified value for the given handler
See Also:
  `HttpServlet.getLastModified(javax.servlet.http.HttpServletRequest)`, `LastModified.getLastModified(javax.servlet.http.HttpServletRequest)`