|
29 | 29 | import org.apache.commons.logging.LogFactory;
|
30 | 30 |
|
31 | 31 | import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
32 |
| -import org.springframework.boot.web.servlet.DelegatingFilterProxyRegistrationBean; |
33 |
| -import org.springframework.boot.web.servlet.FilterRegistrationBean; |
34 |
| -import org.springframework.boot.web.servlet.ServletContextInitializer; |
| 32 | +import org.springframework.boot.web.servlet.AbstractFilterRegistrationBean; |
35 | 33 | import org.springframework.boot.web.servlet.ServletContextInitializerBeans;
|
36 | 34 | import org.springframework.context.ApplicationContext;
|
37 | 35 | import org.springframework.context.ConfigurableApplicationContext;
|
@@ -108,24 +106,11 @@ private LinesWriter getLinesWriter() {
|
108 | 106 | private void addFilters(ConfigurableMockMvcBuilder<?> builder) {
|
109 | 107 | ServletContextInitializerBeans initializers = new ServletContextInitializerBeans(
|
110 | 108 | this.context);
|
111 |
| - for (ServletContextInitializer initializer : initializers) { |
112 |
| - if (initializer instanceof FilterRegistrationBean) { |
113 |
| - addFilter(builder, (FilterRegistrationBean<?>) initializer); |
114 |
| - } |
115 |
| - if (initializer instanceof DelegatingFilterProxyRegistrationBean) { |
116 |
| - addFilter(builder, (DelegatingFilterProxyRegistrationBean) initializer); |
117 |
| - } |
118 |
| - } |
119 |
| - } |
120 |
| - |
121 |
| - private void addFilter(ConfigurableMockMvcBuilder<?> builder, |
122 |
| - FilterRegistrationBean<?> registration) { |
123 |
| - addFilter(builder, registration.getFilter(), registration.getUrlPatterns()); |
124 |
| - } |
125 |
| - |
126 |
| - private void addFilter(ConfigurableMockMvcBuilder<?> builder, |
127 |
| - DelegatingFilterProxyRegistrationBean registration) { |
128 |
| - addFilter(builder, registration.getFilter(), registration.getUrlPatterns()); |
| 109 | + initializers.stream().filter(AbstractFilterRegistrationBean.class::isInstance) |
| 110 | + .map(AbstractFilterRegistrationBean.class::cast) |
| 111 | + .filter(AbstractFilterRegistrationBean::isEnabled) |
| 112 | + .forEach((registration) -> addFilter(builder, registration.getFilter(), |
| 113 | + registration.getUrlPatterns())); |
129 | 114 | }
|
130 | 115 |
|
131 | 116 | private void addFilter(ConfigurableMockMvcBuilder<?> builder, Filter filter,
|
|
0 commit comments