DATACMNS-822 - Polishing.
Replaced optional dependencies with Optional and explicit null checks with calls to ifPresent. Used Lambda style instead of anonymous classes where applicable. Converted Hamcrest matchers to AssertJ. Minor improvements to formatting. Original pull request: #208.
This commit is contained in:
committed by
Oliver Gierke
parent
c1036b2204
commit
364ed9ab2e
@@ -57,7 +57,8 @@ public class HateoasAwareSpringDataWebConfiguration extends SpringDataWebConfigu
|
||||
@Bean
|
||||
@Override
|
||||
public HateoasPageableHandlerMethodArgumentResolver pageableResolver() {
|
||||
HateoasPageableHandlerMethodArgumentResolver pageableResolver =
|
||||
|
||||
HateoasPageableHandlerMethodArgumentResolver pageableResolver = //
|
||||
new HateoasPageableHandlerMethodArgumentResolver(sortResolver());
|
||||
customizePageableResolver(pageableResolver);
|
||||
return pageableResolver;
|
||||
@@ -70,6 +71,7 @@ public class HateoasAwareSpringDataWebConfiguration extends SpringDataWebConfigu
|
||||
@Bean
|
||||
@Override
|
||||
public HateoasSortHandlerMethodArgumentResolver sortResolver() {
|
||||
|
||||
HateoasSortHandlerMethodArgumentResolver sortResolver = new HateoasSortHandlerMethodArgumentResolver();
|
||||
customizeSortResolver(sortResolver);
|
||||
return sortResolver;
|
||||
|
||||
@@ -16,8 +16,10 @@
|
||||
package org.springframework.data.web.config;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
import org.springframework.beans.factory.ObjectFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
@@ -55,26 +57,26 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
|
||||
private final ApplicationContext context;
|
||||
private final ObjectFactory<ConversionService> conversionService;
|
||||
|
||||
public SpringDataWebConfiguration(ApplicationContext context,
|
||||
@Qualifier("mvcConversionService") ObjectFactory<ConversionService> conversionService) {
|
||||
@Autowired private Optional<PageableHandlerMethodArgumentResolverCustomizer> pageableResolverCustomizer;
|
||||
@Autowired private Optional<SortHandlerMethodArgumentResolverCustomizer> sortResolverCustomizer;
|
||||
|
||||
public SpringDataWebConfiguration( //
|
||||
ApplicationContext context, //
|
||||
@Qualifier("mvcConversionService") ObjectFactory<ConversionService> conversionService //
|
||||
) {
|
||||
|
||||
this.context = context;
|
||||
this.conversionService = conversionService;
|
||||
}
|
||||
|
||||
@Autowired(required = false)
|
||||
private PageableHandlerMethodArgumentResolverCustomizer pageableResolverCustomizer;
|
||||
|
||||
@Autowired(required = false)
|
||||
private SortHandlerMethodArgumentResolverCustomizer sortResolverCustomizer;
|
||||
|
||||
/*
|
||||
* (non-Javadoc)
|
||||
* @see org.springframework.data.web.config.SpringDataWebConfiguration#pageableResolver()
|
||||
*/
|
||||
@Bean
|
||||
public PageableHandlerMethodArgumentResolver pageableResolver() {
|
||||
PageableHandlerMethodArgumentResolver pageableResolver =
|
||||
|
||||
PageableHandlerMethodArgumentResolver pageableResolver = //
|
||||
new PageableHandlerMethodArgumentResolver(sortResolver());
|
||||
customizePageableResolver(pageableResolver);
|
||||
return pageableResolver;
|
||||
@@ -86,6 +88,7 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
|
||||
*/
|
||||
@Bean
|
||||
public SortHandlerMethodArgumentResolver sortResolver() {
|
||||
|
||||
SortHandlerMethodArgumentResolver sortResolver = new SortHandlerMethodArgumentResolver();
|
||||
customizeSortResolver(sortResolver);
|
||||
return sortResolver;
|
||||
@@ -107,8 +110,7 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
|
||||
|
||||
FormattingConversionService conversionService = (FormattingConversionService) registry;
|
||||
|
||||
DomainClassConverter<FormattingConversionService> converter = new DomainClassConverter<>(
|
||||
conversionService);
|
||||
DomainClassConverter<FormattingConversionService> converter = new DomainClassConverter<>(conversionService);
|
||||
converter.setApplicationContext(context);
|
||||
}
|
||||
|
||||
@@ -153,15 +155,11 @@ public class SpringDataWebConfiguration extends WebMvcConfigurerAdapter {
|
||||
}
|
||||
|
||||
protected void customizePageableResolver(PageableHandlerMethodArgumentResolver pageableResolver) {
|
||||
if (this.pageableResolverCustomizer != null) {
|
||||
this.pageableResolverCustomizer.customize(pageableResolver);
|
||||
}
|
||||
pageableResolverCustomizer.ifPresent(c -> c.customize(pageableResolver));
|
||||
}
|
||||
|
||||
protected void customizeSortResolver(SortHandlerMethodArgumentResolver sortResolver) {
|
||||
if (this.sortResolverCustomizer != null) {
|
||||
this.sortResolverCustomizer.customize(sortResolver);
|
||||
}
|
||||
sortResolverCustomizer.ifPresent(c -> c.customize(sortResolver));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user