Rename ResponseBodyInterceptor to ResponseBodyAdvice
Issue: SPR-10859
This commit is contained in:
@@ -38,11 +38,11 @@ import org.springframework.web.method.support.HandlerMethodArgumentResolver;
|
||||
import org.springframework.web.method.support.HandlerMethodReturnValueHandler;
|
||||
import org.springframework.web.method.support.ModelAndViewContainer;
|
||||
import org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.JsonViewResponseBodyInterceptor;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.JsonViewResponseBodyAdvice;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyInterceptor;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ServletWebArgumentResolverAdapter;
|
||||
import org.springframework.web.util.UrlPathHelper;
|
||||
|
||||
@@ -95,8 +95,8 @@ public class AnnotationDrivenBeanDefinitionParserTests {
|
||||
loadBeanDefinitions("mvc-config-message-converters.xml");
|
||||
verifyMessageConverters(appContext.getBean(RequestMappingHandlerAdapter.class), true);
|
||||
verifyMessageConverters(appContext.getBean(ExceptionHandlerExceptionResolver.class), true);
|
||||
verifyResponseBodyInterceptors(appContext.getBean(RequestMappingHandlerAdapter.class));
|
||||
verifyResponseBodyInterceptors(appContext.getBean(ExceptionHandlerExceptionResolver.class));
|
||||
verifyResponseBodyAdvice(appContext.getBean(RequestMappingHandlerAdapter.class));
|
||||
verifyResponseBodyAdvice(appContext.getBean(ExceptionHandlerExceptionResolver.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -167,13 +167,13 @@ public class AnnotationDrivenBeanDefinitionParserTests {
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private void verifyResponseBodyInterceptors(Object bean) {
|
||||
private void verifyResponseBodyAdvice(Object bean) {
|
||||
assertNotNull(bean);
|
||||
Object value = new DirectFieldAccessor(bean).getPropertyValue("responseBodyInterceptors");
|
||||
Object value = new DirectFieldAccessor(bean).getPropertyValue("responseBodyAdvice");
|
||||
assertNotNull(value);
|
||||
assertTrue(value instanceof List);
|
||||
List<ResponseBodyInterceptor> converters = (List<ResponseBodyInterceptor>) value;
|
||||
assertTrue(converters.get(0) instanceof JsonViewResponseBodyInterceptor);
|
||||
List<ResponseBodyAdvice> converters = (List<ResponseBodyAdvice>) value;
|
||||
assertTrue(converters.get(0) instanceof JsonViewResponseBodyAdvice);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -52,7 +52,7 @@ import org.springframework.web.servlet.handler.ConversionServiceExposingIntercep
|
||||
import org.springframework.web.servlet.handler.HandlerExceptionResolverComposite;
|
||||
import org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.JsonViewResponseBodyInterceptor;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.JsonViewResponseBodyAdvice;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.MvcUriComponentsBuilder;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
||||
@@ -161,9 +161,9 @@ public class WebMvcConfigurationSupportTests {
|
||||
assertTrue(validator instanceof LocalValidatorFactoryBean);
|
||||
|
||||
DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(adapter);
|
||||
List<Object> interceptors = (List<Object>) fieldAccessor.getPropertyValue("responseBodyInterceptors");
|
||||
List<Object> interceptors = (List<Object>) fieldAccessor.getPropertyValue("responseBodyAdvice");
|
||||
assertEquals(1, interceptors.size());
|
||||
assertEquals(JsonViewResponseBodyInterceptor.class, interceptors.get(0).getClass());
|
||||
assertEquals(JsonViewResponseBodyAdvice.class, interceptors.get(0).getClass());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -192,9 +192,9 @@ public class WebMvcConfigurationSupportTests {
|
||||
assertNotNull(eher.getApplicationContext());
|
||||
|
||||
DirectFieldAccessor fieldAccessor = new DirectFieldAccessor(eher);
|
||||
List<Object> interceptors = (List<Object>) fieldAccessor.getPropertyValue("responseBodyInterceptors");
|
||||
List<Object> interceptors = (List<Object>) fieldAccessor.getPropertyValue("responseBodyAdvice");
|
||||
assertEquals(1, interceptors.size());
|
||||
assertEquals(JsonViewResponseBodyInterceptor.class, interceptors.get(0).getClass());
|
||||
assertEquals(JsonViewResponseBodyAdvice.class, interceptors.get(0).getClass());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -19,7 +19,6 @@ package org.springframework.web.servlet.mvc.method.annotation;
|
||||
import java.lang.reflect.Method;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -235,7 +234,7 @@ public class RequestMappingHandlerAdapterTests {
|
||||
// SPR-10859
|
||||
|
||||
@Test
|
||||
public void responseBodyInterceptor() throws Exception {
|
||||
public void responseBodyAdvice() throws Exception {
|
||||
List<HttpMessageConverter<?>> converters = new ArrayList<>();
|
||||
converters.add(new MappingJackson2HttpMessageConverter());
|
||||
this.handlerAdapter.setMessageConverters(converters);
|
||||
@@ -339,7 +338,7 @@ public class RequestMappingHandlerAdapterTests {
|
||||
}
|
||||
|
||||
@ControllerAdvice
|
||||
private static class ResponseCodeSuppressingAdvice extends AbstractMappingJacksonResponseBodyInterceptor {
|
||||
private static class ResponseCodeSuppressingAdvice extends AbstractMappingJacksonResponseBodyAdvice {
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
@Override
|
||||
@@ -357,7 +356,7 @@ public class RequestMappingHandlerAdapterTests {
|
||||
}
|
||||
|
||||
@ControllerAdvice
|
||||
private static class JsonpAdvice extends AbstractJsonpResponseBodyInterceptor {
|
||||
private static class JsonpAdvice extends AbstractJsonpResponseBodyAdvice {
|
||||
|
||||
public JsonpAdvice() {
|
||||
super(Arrays.asList("c"));
|
||||
|
||||
@@ -299,7 +299,7 @@ public class RequestResponseBodyMethodProcessorTests {
|
||||
converters.add(new MappingJackson2HttpMessageConverter());
|
||||
|
||||
RequestResponseBodyMethodProcessor processor = new RequestResponseBodyMethodProcessor(
|
||||
converters, null, Arrays.asList(new JsonViewResponseBodyInterceptor()));
|
||||
converters, null, Arrays.asList(new JsonViewResponseBodyAdvice()));
|
||||
|
||||
Object returnValue = new JacksonViewController().handleResponseBody();
|
||||
processor.handleReturnValue(returnValue, methodReturnType, this.mavContainer, this.webRequest);
|
||||
@@ -320,7 +320,7 @@ public class RequestResponseBodyMethodProcessorTests {
|
||||
converters.add(new MappingJackson2HttpMessageConverter());
|
||||
|
||||
HttpEntityMethodProcessor processor = new HttpEntityMethodProcessor(
|
||||
converters, null, Arrays.asList(new JsonViewResponseBodyInterceptor()));
|
||||
converters, null, Arrays.asList(new JsonViewResponseBodyAdvice()));
|
||||
|
||||
Object returnValue = new JacksonViewController().handleResponseEntity();
|
||||
processor.handleReturnValue(returnValue, methodReturnType, this.mavContainer, this.webRequest);
|
||||
|
||||
@@ -42,12 +42,12 @@ import static org.mockito.Mockito.*;
|
||||
|
||||
/**
|
||||
* Unit tests for
|
||||
* {@link org.springframework.web.servlet.mvc.method.annotation.ResponseBodyInterceptorChain}.
|
||||
* {@link ResponseBodyAdviceChain}.
|
||||
*
|
||||
* @author Rossen Stoyanchev
|
||||
* @since 4.1
|
||||
*/
|
||||
public class ResponseBodyInterceptorChainTests {
|
||||
public class ResponseBodyAdviceChainTests {
|
||||
|
||||
private String body;
|
||||
|
||||
@@ -73,15 +73,15 @@ public class ResponseBodyInterceptorChainTests {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void responseBodyInterceptor() {
|
||||
public void responseBodyAdvice() {
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
ResponseBodyInterceptor<String> interceptor = Mockito.mock(ResponseBodyInterceptor.class);
|
||||
ResponseBodyInterceptorChain chain = new ResponseBodyInterceptorChain(Arrays.asList(interceptor));
|
||||
ResponseBodyAdvice<String> advice = Mockito.mock(ResponseBodyAdvice.class);
|
||||
ResponseBodyAdviceChain chain = new ResponseBodyAdviceChain(Arrays.asList(advice));
|
||||
|
||||
String expected = "body++";
|
||||
when(interceptor.supports(this.returnType, this.converterType)).thenReturn(true);
|
||||
when(interceptor.beforeBodyWrite(eq(this.body), eq(this.returnType), eq(this.contentType),
|
||||
when(advice.supports(this.returnType, this.converterType)).thenReturn(true);
|
||||
when(advice.beforeBodyWrite(eq(this.body), eq(this.returnType), eq(this.contentType),
|
||||
eq(this.converterType), same(this.request), same(this.response))).thenReturn(expected);
|
||||
|
||||
String actual = chain.invoke(this.body, this.returnType,
|
||||
@@ -93,8 +93,8 @@ public class ResponseBodyInterceptorChainTests {
|
||||
@Test
|
||||
public void controllerAdvice() {
|
||||
|
||||
Object interceptor = new ControllerAdviceBean(new MyControllerAdvice());
|
||||
ResponseBodyInterceptorChain chain = new ResponseBodyInterceptorChain(Arrays.asList(interceptor));
|
||||
Object adviceBean = new ControllerAdviceBean(new MyControllerAdvice());
|
||||
ResponseBodyAdviceChain chain = new ResponseBodyAdviceChain(Arrays.asList(adviceBean));
|
||||
|
||||
String actual = chain.invoke(this.body, this.returnType,
|
||||
this.contentType, this.converterType, this.request, this.response);
|
||||
@@ -105,8 +105,8 @@ public class ResponseBodyInterceptorChainTests {
|
||||
@Test
|
||||
public void controllerAdviceNotApplicable() {
|
||||
|
||||
Object interceptor = new ControllerAdviceBean(new TargetedControllerAdvice());
|
||||
ResponseBodyInterceptorChain chain = new ResponseBodyInterceptorChain(Arrays.asList(interceptor));
|
||||
Object adviceBean = new ControllerAdviceBean(new TargetedControllerAdvice());
|
||||
ResponseBodyAdviceChain chain = new ResponseBodyAdviceChain(Arrays.asList(adviceBean));
|
||||
|
||||
String actual = chain.invoke(this.body, this.returnType,
|
||||
this.contentType, this.converterType, this.request, this.response);
|
||||
@@ -116,7 +116,7 @@ public class ResponseBodyInterceptorChainTests {
|
||||
|
||||
|
||||
@ControllerAdvice
|
||||
private static class MyControllerAdvice implements ResponseBodyInterceptor<String> {
|
||||
private static class MyControllerAdvice implements ResponseBodyAdvice<String> {
|
||||
|
||||
@Override
|
||||
public boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType) {
|
||||
@@ -134,7 +134,7 @@ public class ResponseBodyInterceptorChainTests {
|
||||
}
|
||||
|
||||
@ControllerAdvice(annotations = Controller.class)
|
||||
private static class TargetedControllerAdvice implements ResponseBodyInterceptor<String> {
|
||||
private static class TargetedControllerAdvice implements ResponseBodyAdvice<String> {
|
||||
|
||||
@Override
|
||||
public boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType) {
|
||||
Reference in New Issue
Block a user