Switch to vararg for configuring ResourceResolver's

This commit is contained in:
Rossen Stoyanchev 2014-04-25 00:01:24 -04:00
parent 6aa16b745f
commit f5cbd9aa4a
4 changed files with 11 additions and 20 deletions

View File

@ -17,6 +17,7 @@
package org.springframework.web.servlet.config.annotation;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.springframework.core.io.Resource;
@ -82,8 +83,8 @@ public class ResourceHandlerRegistration {
* is recommended to add {@link PathResourceResolver} as the last resolver.
* @since 4.1
*/
public void setResourceResolvers(List<ResourceResolver> resourceResolvers) {
this.resourceResolvers = resourceResolvers;
public void setResourceResolvers(ResourceResolver... resourceResolvers) {
this.resourceResolvers = Arrays.asList(resourceResolvers);
}
/**

View File

@ -107,8 +107,8 @@ public class ResourceHandlerRegistry {
* Configure the {@link ResourceResolver}s to use by default in resource handlers that
* don't have them set.
*/
public void setResourceResolvers(List<ResourceResolver> resourceResolvers) {
this.resourceResolvers = resourceResolvers;
public void setResourceResolvers(ResourceResolver... resourceResolvers) {
this.resourceResolvers = Arrays.asList(resourceResolvers);
}
/**
@ -120,11 +120,11 @@ public class ResourceHandlerRegistry {
}
Map<String, HttpRequestHandler> urlMap = new LinkedHashMap<String, HttpRequestHandler>();
for (ResourceHandlerRegistration registration : registrations) {
for (ResourceHandlerRegistration registration : this.registrations) {
for (String pathPattern : registration.getPathPatterns()) {
ResourceHttpRequestHandler handler = registration.getRequestHandler();
handler.setServletContext(servletContext);
handler.setApplicationContext(applicationContext);
handler.setServletContext(this.servletContext);
handler.setApplicationContext(this.applicationContext);
if ((this.resourceResolvers != null) && (registration.getResourceResolvers() == null)) {
handler.setResourceResolvers(this.resourceResolvers);
}

View File

@ -17,7 +17,6 @@
package org.springframework.web.servlet.config.annotation;
import java.util.Arrays;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
@ -97,13 +96,12 @@ public class ResourceHandlerRegistryTests {
@Test
public void resourceResolversAndTransformers() {
ResourceResolver resolver = Mockito.mock(ResourceResolver.class);
List<ResourceResolver> resolvers = Arrays.<ResourceResolver>asList(resolver);
registry.setResourceResolvers(resolvers);
registry.setResourceResolvers(resolver);
SimpleUrlHandlerMapping hm = (SimpleUrlHandlerMapping) registry.getHandlerMapping();
ResourceHttpRequestHandler handler = (ResourceHttpRequestHandler) hm.getUrlMap().values().iterator().next();
assertEquals(resolvers, handler.getResourceResolvers());
assertEquals(Arrays.asList(resolver), handler.getResourceResolvers());
}
private ResourceHttpRequestHandler getHandler(String pathPattern) {

View File

@ -16,9 +16,6 @@
package org.springframework.web.servlet.resource;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@ -114,14 +111,9 @@ public class PublicResourceUrlProviderJavaConfigTests {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
List<ResourceResolver> resourceResolvers = new ArrayList<>();
resourceResolvers.add(new FingerprintResourceResolver());
resourceResolvers.add(new PathResourceResolver());
registry.addResourceHandler("/resources/**")
.addResourceLocations("classpath:org/springframework/web/servlet/resource/test/")
.setResourceResolvers(resourceResolvers);
.setResourceResolvers(new FingerprintResourceResolver(), new PathResourceResolver());
}
}