Browse Source

Merge branch '5.1.x'

pull/22617/head
Rossen Stoyanchev 7 years ago
parent
commit
581e77c0fb
  1. 6
      spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/InterceptorRegistration.java
  2. 50
      spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/InterceptorRegistryTests.java

6
spring-webmvc/src/main/java/org/springframework/web/servlet/config/annotation/InterceptorRegistration.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2018 the original author or authors.
* Copyright 2002-2019 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.
@ -102,7 +102,7 @@ public class InterceptorRegistration { @@ -102,7 +102,7 @@ public class InterceptorRegistration {
/**
* Specify an order position to be used. Default is 0.
* @since 5.0
* @since 4.23
*/
public InterceptorRegistration order(int order){
this.order = order;
@ -111,13 +111,11 @@ public class InterceptorRegistration { @@ -111,13 +111,11 @@ public class InterceptorRegistration {
/**
* Return the order position to be used.
* @since 5.0
*/
protected int getOrder() {
return this.order;
}
/**
* Build the underlying interceptor. If URL patterns are provided, the returned
* type is {@link MappedInterceptor}; otherwise {@link HandlerInterceptor}.

50
spring-webmvc/src/test/java/org/springframework/web/servlet/config/annotation/InterceptorRegistryTests.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2017 the original author or authors.
* Copyright 2002-2019 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.
@ -154,6 +154,30 @@ public class InterceptorRegistryTests { @@ -154,6 +154,30 @@ public class InterceptorRegistryTests {
assertEquals(Collections.emptyList(), getInterceptorsForPath("/path1/secret"));
}
@Test
public void orderedInterceptors() {
this.registry.addInterceptor(this.interceptor1).order(Ordered.LOWEST_PRECEDENCE);
this.registry.addInterceptor(this.interceptor2).order(Ordered.HIGHEST_PRECEDENCE);
List<Object> interceptors = this.registry.getInterceptors();
assertEquals(2, interceptors.size());
assertSame(this.interceptor2, interceptors.get(0));
assertSame(this.interceptor1, interceptors.get(1));
}
@Test
public void nonOrderedInterceptors() {
this.registry.addInterceptor(this.interceptor1).order(0);
this.registry.addInterceptor(this.interceptor2).order(0);
List<Object> interceptors = this.registry.getInterceptors();
assertEquals(2, interceptors.size());
assertSame(this.interceptor1, interceptors.get(0));
assertSame(this.interceptor2, interceptors.get(1));
}
private List<HandlerInterceptor> getInterceptorsForPath(String lookupPath) {
PathMatcher pathMatcher = new AntPathMatcher();
@ -183,6 +207,7 @@ public class InterceptorRegistryTests { @@ -183,6 +207,7 @@ public class InterceptorRegistryTests {
assertTrue(webInterceptor.preHandleInvoked);
}
private static class TestWebRequestInterceptor implements WebRequestInterceptor {
private boolean preHandleInvoked = false;
@ -201,27 +226,4 @@ public class InterceptorRegistryTests { @@ -201,27 +226,4 @@ public class InterceptorRegistryTests {
}
}
@Test
public void orderedInterceptors() throws Exception {
this.registry.addInterceptor(this.interceptor1).order(Ordered.LOWEST_PRECEDENCE);
this.registry.addInterceptor(this.interceptor2).order(Ordered.HIGHEST_PRECEDENCE);
List<Object> interceptors = this.registry.getInterceptors();
assertEquals(2, interceptors.size());
assertSame(this.interceptor2, interceptors.get(0));
assertSame(this.interceptor1, interceptors.get(1));
}
@Test
public void nonOrderedInterceptors() throws Exception {
this.registry.addInterceptor(this.interceptor1).order(0);
this.registry.addInterceptor(this.interceptor2).order(0);
List<Object> interceptors = this.registry.getInterceptors();
assertEquals(2, interceptors.size());
assertSame(this.interceptor1, interceptors.get(0));
assertSame(this.interceptor2, interceptors.get(1));
}
}

Loading…
Cancel
Save