Browse Source

DATACMNS-822 - Polishing.

Switched to implement WebMvcConfigurer over extending WebMvcConfigurerAdapter. Formatting, assertions, Javadoc.

Original pull request: #208.
pull/173/merge
Oliver Gierke 9 years ago
parent
commit
2eb830d68f
  1. 4
      src/main/java/org/springframework/data/web/config/HateoasAwareSpringDataWebConfiguration.java
  2. 9
      src/main/java/org/springframework/data/web/config/PageableHandlerMethodArgumentResolverCustomizer.java
  3. 4
      src/main/java/org/springframework/data/web/config/QuerydslWebConfiguration.java
  4. 7
      src/main/java/org/springframework/data/web/config/SortHandlerMethodArgumentResolverCustomizer.java
  5. 19
      src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java

4
src/main/java/org/springframework/data/web/config/HateoasAwareSpringDataWebConfiguration.java

@ -58,8 +58,8 @@ public class HateoasAwareSpringDataWebConfiguration extends SpringDataWebConfigu @@ -58,8 +58,8 @@ public class HateoasAwareSpringDataWebConfiguration extends SpringDataWebConfigu
@Override
public HateoasPageableHandlerMethodArgumentResolver pageableResolver() {
HateoasPageableHandlerMethodArgumentResolver pageableResolver = //
new HateoasPageableHandlerMethodArgumentResolver(sortResolver());
HateoasPageableHandlerMethodArgumentResolver pageableResolver = new HateoasPageableHandlerMethodArgumentResolver(
sortResolver());
customizePageableResolver(pageableResolver);
return pageableResolver;
}

9
src/main/java/org/springframework/data/web/config/PageableHandlerMethodArgumentResolverCustomizer.java

@ -22,14 +22,17 @@ import org.springframework.data.web.PageableHandlerMethodArgumentResolver; @@ -22,14 +22,17 @@ import org.springframework.data.web.PageableHandlerMethodArgumentResolver;
* {@link PageableHandlerMethodArgumentResolver} configuration.
*
* @author Vedran Pavic
* @author Oliver Gierke
* @since 2.0
*/
@FunctionalInterface
public interface PageableHandlerMethodArgumentResolverCustomizer {
/**
* Customize the pageable resolver
* Customize the given {@link PageableHandlerMethodArgumentResolver}.
*
* @param pageableResolver the {@link PageableHandlerMethodArgumentResolver} to customize
* @param pageableResolver the {@link PageableHandlerMethodArgumentResolver} to customize, will never be
* {@literal null}.
*/
void customize(PageableHandlerMethodArgumentResolver pageableResolver);
}

4
src/main/java/org/springframework/data/web/config/QuerydslWebConfiguration.java

@ -29,7 +29,7 @@ import org.springframework.data.querydsl.SimpleEntityPathResolver; @@ -29,7 +29,7 @@ import org.springframework.data.querydsl.SimpleEntityPathResolver;
import org.springframework.data.querydsl.binding.QuerydslBindingsFactory;
import org.springframework.data.web.querydsl.QuerydslPredicateArgumentResolver;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import com.querydsl.core.types.Predicate;
@ -42,7 +42,7 @@ import com.querydsl.core.types.Predicate; @@ -42,7 +42,7 @@ import com.querydsl.core.types.Predicate;
* @soundtrack Anika Nilles - Alter Ego
*/
@Configuration
public class QuerydslWebConfiguration extends WebMvcConfigurerAdapter {
public class QuerydslWebConfiguration implements WebMvcConfigurer {
@Autowired @Qualifier("mvcConversionService") ObjectFactory<ConversionService> conversionService;

7
src/main/java/org/springframework/data/web/config/SortHandlerMethodArgumentResolverCustomizer.java

@ -22,14 +22,15 @@ import org.springframework.data.web.SortHandlerMethodArgumentResolver; @@ -22,14 +22,15 @@ import org.springframework.data.web.SortHandlerMethodArgumentResolver;
* {@link SortHandlerMethodArgumentResolver} configuration.
*
* @author Vedran Pavic
* @author Oliver Gierke
* @since 2.0
*/
public interface SortHandlerMethodArgumentResolverCustomizer {
/**
* Customize the sort resolver
* Customize the given {@link SortHandlerMethodArgumentResolver}.
*
* @param sortResolver the {@link SortHandlerMethodArgumentResolver} to customize
* @param sortResolver the {@link SortHandlerMethodArgumentResolver} to customize, will never be {@literal null}.
*/
void customize(SortHandlerMethodArgumentResolver sortResolver);
}

19
src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java

@ -36,9 +36,10 @@ import org.springframework.data.web.XmlBeamHttpMessageConverter; @@ -36,9 +36,10 @@ import org.springframework.data.web.XmlBeamHttpMessageConverter;
import org.springframework.format.FormatterRegistry;
import org.springframework.format.support.FormattingConversionService;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.util.Assert;
import org.springframework.util.ClassUtils;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import com.fasterxml.jackson.databind.ObjectMapper;
@ -52,18 +53,19 @@ import com.fasterxml.jackson.databind.ObjectMapper; @@ -52,18 +53,19 @@ import com.fasterxml.jackson.databind.ObjectMapper;
* @author Jens Schauder
*/
@Configuration
public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
public class SpringDataWebConfiguration implements WebMvcConfigurer {
private final ApplicationContext context;
private final ObjectFactory<ConversionService> conversionService;
@Autowired private Optional<PageableHandlerMethodArgumentResolverCustomizer> pageableResolverCustomizer;
@Autowired private Optional<SortHandlerMethodArgumentResolverCustomizer> sortResolverCustomizer;
private @Autowired Optional<PageableHandlerMethodArgumentResolverCustomizer> pageableResolverCustomizer;
private @Autowired Optional<SortHandlerMethodArgumentResolverCustomizer> sortResolverCustomizer;
public SpringDataWebConfiguration( //
ApplicationContext context, //
@Qualifier("mvcConversionService") ObjectFactory<ConversionService> conversionService //
) {
public SpringDataWebConfiguration(ApplicationContext context,
@Qualifier("mvcConversionService") ObjectFactory<ConversionService> conversionService) {
Assert.notNull(context, "ApplicationContext must not be null!");
Assert.notNull(conversionService, "ConversionService must not be null!");
this.context = context;
this.conversionService = conversionService;
@ -161,5 +163,4 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter { @@ -161,5 +163,4 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
protected void customizeSortResolver(SortHandlerMethodArgumentResolver sortResolver) {
sortResolverCustomizer.ifPresent(c -> c.customize(sortResolver));
}
}

Loading…
Cancel
Save