|
|
|
@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
|
|
|
|
|
/* |
|
|
|
|
* Copyright 2002-2012 the original author or authors. |
|
|
|
|
* Copyright 2002-2013 the original author or authors. |
|
|
|
|
* |
|
|
|
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
|
|
|
|
* you may not use this file except in compliance with the License. |
|
|
|
@ -20,24 +20,24 @@ import javax.servlet.http.HttpServletRequest;
@@ -20,24 +20,24 @@ import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
import javax.servlet.http.HttpServletResponse; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* MVC framework SPI interface, allowing parameterization of core MVC workflow. |
|
|
|
|
* MVC framework SPI, allowing parameterization of the core MVC workflow. |
|
|
|
|
* |
|
|
|
|
* <p>Interface that must be implemented for each handler type to handle a request. |
|
|
|
|
* This interface is used to allow the {@link DispatcherServlet} to be indefinitely |
|
|
|
|
* extensible. The DispatcherServlet accesses all installed handlers through this |
|
|
|
|
* interface, meaning that it does not contain code specific to any handler type. |
|
|
|
|
* extensible. The {@code DispatcherServlet} accesses all installed handlers through |
|
|
|
|
* this interface, meaning that it does not contain code specific to any handler type. |
|
|
|
|
* |
|
|
|
|
* <p>Note that a handler can be of type {@code Object}. This is to enable |
|
|
|
|
* handlers from other frameworks to be integrated with this framework without |
|
|
|
|
* custom coding, as well as to allow for annotation handler objects that do |
|
|
|
|
* not obey any specific Java interface. |
|
|
|
|
* custom coding, as well as to allow for annotation-driven handler objects that |
|
|
|
|
* do not obey any specific Java interface. |
|
|
|
|
* |
|
|
|
|
* <p>This interface is not intended for application developers. It is available |
|
|
|
|
* to handlers who want to develop their own web workflow. |
|
|
|
|
* |
|
|
|
|
* <p>Note: HandlerAdaptger implementators may implement the |
|
|
|
|
* {@link org.springframework.core.Ordered} interface to be able to specify a |
|
|
|
|
* sorting order (and thus a priority) for getting applied by DispatcherServlet. |
|
|
|
|
* <p>Note: {@code HandlerAdapter} implementors may implement the {@link |
|
|
|
|
* org.springframework.core.Ordered} interface to be able to specify a sorting |
|
|
|
|
* order (and thus a priority) for getting applied by the {@code DispatcherServlet}. |
|
|
|
|
* Non-Ordered instances get treated as lowest priority. |
|
|
|
|
* |
|
|
|
|
* @author Rod Johnson |
|
|
|
@ -48,8 +48,8 @@ import javax.servlet.http.HttpServletResponse;
@@ -48,8 +48,8 @@ import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
public interface HandlerAdapter { |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* Given a handler instance, return whether or not this HandlerAdapter can |
|
|
|
|
* support it. Typical HandlerAdapters will base the decision on the handler |
|
|
|
|
* Given a handler instance, return whether or not this {@code HandlerAdapter} |
|
|
|
|
* can support it. Typical HandlerAdapters will base the decision on the handler |
|
|
|
|
* type. HandlerAdapters will usually only support one handler type each. |
|
|
|
|
* <p>A typical implementation: |
|
|
|
|
* <p>{@code |
|
|
|
|