Polish "Add missing attributes to FilterRegistration annotation"
See gh-45005
This commit is contained in:
@@ -104,10 +104,10 @@ public @interface FilterRegistration {
|
||||
String[] servletNames() default {};
|
||||
|
||||
/**
|
||||
* Servlet types that the filter will be registered against.
|
||||
* @return the servlet types
|
||||
* Servlet classes that the filter will be registered against.
|
||||
* @return the servlet classes
|
||||
*/
|
||||
Class<?>[] servletRegistrationBeans() default {};
|
||||
Class<?>[] servletClasses() default {};
|
||||
|
||||
/**
|
||||
* URL patterns, as defined in the Servlet specification, that the filter will be
|
||||
|
||||
@@ -367,9 +367,8 @@ public class ServletContextInitializerBeans extends AbstractCollection<ServletCo
|
||||
for (WebInitParam param : registration.initParameters()) {
|
||||
bean.addInitParameter(param.name(), param.value());
|
||||
}
|
||||
|
||||
this.beanFactory.getBeanProvider(ServletRegistrationBean.class).forEach((servletRegistrationBean) -> {
|
||||
for (Class<?> servletClass : registration.servletRegistrationBeans()) {
|
||||
for (Class<?> servletClass : registration.servletClasses()) {
|
||||
if (servletClass.isInstance(servletRegistrationBean.getServlet())) {
|
||||
bean.addServletRegistrationBeans(servletRegistrationBean);
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@ package org.springframework.boot.web.servlet;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.EnumSet;
|
||||
import java.util.Map;
|
||||
|
||||
import jakarta.servlet.DispatcherType;
|
||||
import jakarta.servlet.Filter;
|
||||
@@ -144,8 +145,8 @@ class ServletContextInitializerBeansTests {
|
||||
assertThat(filterRegistrationBean.getServletNames()).containsExactly("test");
|
||||
assertThat(filterRegistrationBean.determineDispatcherTypes()).containsExactly(DispatcherType.ERROR);
|
||||
assertThat(filterRegistrationBean.getUrlPatterns()).containsExactly("/test/*");
|
||||
assertThat(filterRegistrationBean.getInitParameters()).containsEntry("env", "test")
|
||||
.containsEntry("debug", "true");
|
||||
assertThat(filterRegistrationBean.getInitParameters())
|
||||
.containsExactlyInAnyOrderEntriesOf(Map.of("env", "test", "debug", "true"));
|
||||
Collection<ServletRegistrationBean<?>> servletRegistrationBeans = filterRegistrationBean
|
||||
.getServletRegistrationBeans();
|
||||
assertThat(servletRegistrationBeans).hasSize(1);
|
||||
@@ -305,12 +306,11 @@ class ServletContextInitializerBeansTests {
|
||||
static class FilterConfigurationWithAnnotation {
|
||||
|
||||
@Bean
|
||||
@FilterRegistration(enabled = false, name = "test", asyncSupported = false,
|
||||
dispatcherTypes = DispatcherType.ERROR, matchAfter = true, servletNames = "test",
|
||||
urlPatterns = "/test/*",
|
||||
initParameters = { @WebInitParam(name = "env", value = "test"),
|
||||
@WebInitParam(name = "debug", value = "true") },
|
||||
servletRegistrationBeans = { TestServlet.class })
|
||||
@FilterRegistration(
|
||||
enabled = false, name = "test", asyncSupported = false, dispatcherTypes = DispatcherType.ERROR,
|
||||
matchAfter = true, servletNames = "test", urlPatterns = "/test/*", initParameters = {
|
||||
@WebInitParam(name = "env", value = "test"), @WebInitParam(name = "debug", value = "true") },
|
||||
servletClasses = { TestServlet.class })
|
||||
TestFilter testFilter() {
|
||||
return new TestFilter();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user