diff --git a/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java b/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java index 3ef3c524e..a51688cd8 100644 --- a/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java +++ b/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java @@ -101,7 +101,7 @@ final class AnnotationAuditingMetadata { return; } - Class type = it.getType(); + var type = it.getType(); if (Jsr310Converters.supports(type)) { return; diff --git a/src/main/java/org/springframework/data/auditing/AuditingHandlerSupport.java b/src/main/java/org/springframework/data/auditing/AuditingHandlerSupport.java index 476ac5e74..57e4cc2e6 100644 --- a/src/main/java/org/springframework/data/auditing/AuditingHandlerSupport.java +++ b/src/main/java/org/springframework/data/auditing/AuditingHandlerSupport.java @@ -107,7 +107,7 @@ public abstract class AuditingHandlerSupport { * @param auditor can be {@literal null}. * @param source must not be {@literal null}. */ - T markCreated(Auditor auditor, T source) { + T markCreated(Auditor auditor, T source) { Assert.notNull(source, "Source entity must not be null!"); @@ -120,16 +120,16 @@ public abstract class AuditingHandlerSupport { * @param auditor * @param source */ - T markModified(Auditor auditor, T source) { + T markModified(Auditor auditor, T source) { Assert.notNull(source, "Source entity must not be null!"); return touch(auditor, source, false); } - private T touch(Auditor auditor, T target, boolean isNew) { + private T touch(Auditor auditor, T target, boolean isNew) { - Optional> wrapper = factory.getBeanWrapperFor(target); + var wrapper = factory.getBeanWrapperFor(target); return wrapper.map(it -> { @@ -157,7 +157,7 @@ public abstract class AuditingHandlerSupport { * @param isNew * @return */ - private void touchAuditor(Auditor auditor, AuditableBeanWrapper wrapper, boolean isNew) { + private void touchAuditor(Auditor auditor, AuditableBeanWrapper wrapper, boolean isNew) { if(!auditor.isPresent()) { return; @@ -185,7 +185,7 @@ public abstract class AuditingHandlerSupport { Assert.notNull(wrapper, "AuditableBeanWrapper must not be null!"); - Optional now = dateTimeProvider.getNow(); + var now = dateTimeProvider.getNow(); Assert.notNull(now, () -> String.format("Now must not be null! Returned by: %s!", dateTimeProvider.getClass())); diff --git a/src/main/java/org/springframework/data/auditing/Auditor.java b/src/main/java/org/springframework/data/auditing/Auditor.java index c1d4ab147..d2ffa4f73 100644 --- a/src/main/java/org/springframework/data/auditing/Auditor.java +++ b/src/main/java/org/springframework/data/auditing/Auditor.java @@ -110,7 +110,7 @@ class Auditor { if (o == null || getClass() != o.getClass()) return false; - Auditor auditor = (Auditor) o; + var auditor = (Auditor) o; return ObjectUtils.nullSafeEquals(value, auditor.value); } diff --git a/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java b/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java index 9dda71ba8..2d9033efa 100644 --- a/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java +++ b/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java @@ -46,7 +46,7 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory public DefaultAuditableBeanWrapperFactory() { - DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService(); + var conversionService = new DefaultFormattingConversionService(); Jsr310Converters.getConvertersToRegister().forEach(conversionService::addConverter); @@ -75,7 +75,7 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory return (AuditableBeanWrapper) new AuditableInterfaceBeanWrapper(conversionService, (Auditable) it); } - AnnotationAuditingMetadata metadata = AnnotationAuditingMetadata.getMetadata(it.getClass()); + var metadata = AnnotationAuditingMetadata.getMetadata(it.getClass()); if (metadata.isAuditable()) { return new ReflectionAuditingBeanWrapper(conversionService, it); @@ -215,7 +215,7 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory value.getClass(), targetType)); } - Date date = conversionService.convert(value, Date.class); + var date = conversionService.convert(value, Date.class); return conversionService.convert(date, targetType); } @@ -317,7 +317,7 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory return getAsTemporalAccessor(metadata.getLastModifiedDateField().map(field -> { - Object value = org.springframework.util.ReflectionUtils.getField(field, target); + var value = org.springframework.util.ReflectionUtils.getField(field, target); return value instanceof Optional ? ((Optional) value).orElse(null) : value; }), TemporalAccessor.class); diff --git a/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java b/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java index b958fcc88..9fc899bb3 100644 --- a/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java +++ b/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java @@ -16,7 +16,6 @@ package org.springframework.data.auditing; import org.springframework.data.mapping.PersistentEntity; -import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.context.MappingContext; import org.springframework.data.mapping.context.PersistentEntities; import org.springframework.data.support.IsNewStrategy; @@ -62,7 +61,7 @@ public class IsNewAwareAuditingHandler extends AuditingHandler { return object; } - PersistentEntity> entity = entities + var entity = entities .getRequiredPersistentEntity(object.getClass()); return entity.isNew(object) ? markCreated(object) : markModified(object); diff --git a/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java b/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java index 703d9a279..24d3fb827 100644 --- a/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java +++ b/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java @@ -85,7 +85,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap return entities.mapOnContext(it.getClass(), (context, entity) -> { - MappingAuditingMetadata metadata = metadataCache.computeIfAbsent(it.getClass(), + var metadata = metadataCache.computeIfAbsent(it.getClass(), key -> new MappingAuditingMetadata(context, it.getClass())); return Optional.> ofNullable(metadata.isAuditable() // @@ -229,7 +229,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap @Override public Optional getLastModifiedDate() { - Optional firstValue = metadata.lastModifiedDatePaths.getFirst() // + var firstValue = metadata.lastModifiedDatePaths.getFirst() // .map(accessor::getProperty); return getAsTemporalAccessor(firstValue, TemporalAccessor.class); @@ -266,7 +266,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap property.forEach(it -> { - Class type = it.getRequiredLeafProperty().getType(); + var type = it.getRequiredLeafProperty().getType(); this.accessor.setProperty(it, getDateValueToSet(value, type, accessor.getBean()), OPTIONS); }); diff --git a/src/main/java/org/springframework/data/auditing/ReactiveIsNewAwareAuditingHandler.java b/src/main/java/org/springframework/data/auditing/ReactiveIsNewAwareAuditingHandler.java index 69a6f0366..59839dd3e 100644 --- a/src/main/java/org/springframework/data/auditing/ReactiveIsNewAwareAuditingHandler.java +++ b/src/main/java/org/springframework/data/auditing/ReactiveIsNewAwareAuditingHandler.java @@ -18,7 +18,6 @@ package org.springframework.data.auditing; import reactor.core.publisher.Mono; import org.springframework.data.mapping.PersistentEntity; -import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.context.MappingContext; import org.springframework.data.mapping.context.PersistentEntities; import org.springframework.data.support.IsNewStrategy; @@ -62,7 +61,7 @@ public class ReactiveIsNewAwareAuditingHandler extends ReactiveAuditingHandler { return Mono.just(object); } - PersistentEntity> entity = entities + var entity = entities .getRequiredPersistentEntity(object.getClass()); return entity.isNew(object) ? markCreated(object) : markModified(object); diff --git a/src/main/java/org/springframework/data/auditing/config/AnnotationAuditingConfiguration.java b/src/main/java/org/springframework/data/auditing/config/AnnotationAuditingConfiguration.java index c850f87c7..6500bbcd8 100644 --- a/src/main/java/org/springframework/data/auditing/config/AnnotationAuditingConfiguration.java +++ b/src/main/java/org/springframework/data/auditing/config/AnnotationAuditingConfiguration.java @@ -16,7 +16,6 @@ package org.springframework.data.auditing.config; import java.lang.annotation.Annotation; -import java.util.Map; import org.springframework.core.annotation.AnnotationAttributes; import org.springframework.core.type.AnnotationMetadata; @@ -47,7 +46,7 @@ public class AnnotationAuditingConfiguration implements AuditingConfiguration { Assert.notNull(metadata, "AnnotationMetadata must not be null!"); Assert.notNull(annotation, "Annotation must not be null!"); - Map attributesSource = metadata.getAnnotationAttributes(annotation.getName()); + var attributesSource = metadata.getAnnotationAttributes(annotation.getName()); if (attributesSource == null) { throw new IllegalArgumentException(String.format(MISSING_ANNOTATION_ATTRIBUTES, annotation, metadata)); diff --git a/src/main/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupport.java b/src/main/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupport.java index 83b5d622b..94435f9bf 100644 --- a/src/main/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupport.java +++ b/src/main/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupport.java @@ -60,7 +60,7 @@ public abstract class AuditingBeanDefinitionRegistrarSupport implements ImportBe Assert.notNull(annotationMetadata, "AnnotationMetadata must not be null!"); Assert.notNull(registry, "BeanDefinitionRegistry must not be null!"); - AbstractBeanDefinition ahbd = registerAuditHandlerBeanDefinition(registry, getConfiguration(annotationMetadata)); + var ahbd = registerAuditHandlerBeanDefinition(registry, getConfiguration(annotationMetadata)); registerAuditListenerBeanDefinition(ahbd, registry); } @@ -77,7 +77,7 @@ public abstract class AuditingBeanDefinitionRegistrarSupport implements ImportBe Assert.notNull(registry, "BeanDefinitionRegistry must not be null!"); Assert.notNull(configuration, "AuditingConfiguration must not be null!"); - AbstractBeanDefinition ahbd = getAuditHandlerBeanDefinitionBuilder(configuration).getBeanDefinition(); + var ahbd = getAuditHandlerBeanDefinitionBuilder(configuration).getBeanDefinition(); registry.registerBeanDefinition(getAuditingHandlerBeanName(), ahbd); return ahbd; } @@ -178,10 +178,10 @@ public abstract class AuditingBeanDefinitionRegistrarSupport implements ImportBe private BeanDefinition createLazyInitTargetSourceBeanDefinition(String auditorAwareRef) { - BeanDefinitionBuilder targetSourceBuilder = rootBeanDefinition(LazyInitTargetSource.class); + var targetSourceBuilder = rootBeanDefinition(LazyInitTargetSource.class); targetSourceBuilder.addPropertyValue("targetBeanName", auditorAwareRef); - BeanDefinitionBuilder builder = rootBeanDefinition(ProxyFactoryBean.class); + var builder = rootBeanDefinition(ProxyFactoryBean.class); builder.addPropertyValue("targetSource", targetSourceBuilder.getBeanDefinition()); return builder.getBeanDefinition(); diff --git a/src/main/java/org/springframework/data/auditing/config/AuditingHandlerBeanDefinitionParser.java b/src/main/java/org/springframework/data/auditing/config/AuditingHandlerBeanDefinitionParser.java index ba9545229..88f5e00ab 100644 --- a/src/main/java/org/springframework/data/auditing/config/AuditingHandlerBeanDefinitionParser.java +++ b/src/main/java/org/springframework/data/auditing/config/AuditingHandlerBeanDefinitionParser.java @@ -95,11 +95,11 @@ public class AuditingHandlerBeanDefinitionParser extends AbstractSingleBeanDefin @Override protected void doParse(Element element, BeanDefinitionBuilder builder) { - final BeanDefinitionBuilder persistentEntities = rootBeanDefinition(PersistentEntitiesFactoryBean.class); + final var persistentEntities = rootBeanDefinition(PersistentEntitiesFactoryBean.class); persistentEntities.addConstructorArgReference(mappingContextBeanName); builder.addConstructorArgValue(persistentEntities.getBeanDefinition()); - String auditorAwareRef = element.getAttribute(AUDITOR_AWARE_REF); + var auditorAwareRef = element.getAttribute(AUDITOR_AWARE_REF); if (StringUtils.hasText(auditorAwareRef)) { builder.addPropertyValue("auditorAware", createLazyInitTargetSourceBeanDefinition(auditorAwareRef)); @@ -123,10 +123,10 @@ public class AuditingHandlerBeanDefinitionParser extends AbstractSingleBeanDefin private BeanDefinition createLazyInitTargetSourceBeanDefinition(String auditorAwareRef) { - BeanDefinitionBuilder targetSourceBuilder = rootBeanDefinition(LazyInitTargetSource.class); + var targetSourceBuilder = rootBeanDefinition(LazyInitTargetSource.class); targetSourceBuilder.addPropertyValue("targetBeanName", auditorAwareRef); - BeanDefinitionBuilder builder = rootBeanDefinition(ProxyFactoryBean.class); + var builder = rootBeanDefinition(ProxyFactoryBean.class); builder.addPropertyValue("targetSource", targetSourceBuilder.getBeanDefinition()); return builder.getBeanDefinition(); diff --git a/src/main/java/org/springframework/data/config/BeanComponentDefinitionBuilder.java b/src/main/java/org/springframework/data/config/BeanComponentDefinitionBuilder.java index a2523d1bb..8294726cb 100644 --- a/src/main/java/org/springframework/data/config/BeanComponentDefinitionBuilder.java +++ b/src/main/java/org/springframework/data/config/BeanComponentDefinitionBuilder.java @@ -16,12 +16,12 @@ package org.springframework.data.config; import org.springframework.beans.factory.parsing.BeanComponentDefinition; -import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.support.BeanDefinitionReaderUtils; import org.springframework.beans.factory.xml.ParserContext; import org.springframework.util.Assert; import org.springframework.util.StringUtils; + import org.w3c.dom.Element; /** @@ -60,8 +60,8 @@ public class BeanComponentDefinitionBuilder { Assert.notNull(builder, "Builder must not be null!"); - AbstractBeanDefinition definition = builder.getRawBeanDefinition(); - String name = BeanDefinitionReaderUtils.generateBeanName(definition, context.getRegistry(), context.isNested()); + var definition = builder.getRawBeanDefinition(); + var name = BeanDefinitionReaderUtils.generateBeanName(definition, context.getRegistry(), context.isNested()); return getComponent(builder, name); } @@ -78,7 +78,7 @@ public class BeanComponentDefinitionBuilder { Assert.hasText(fallback, "Fallback component id must not be null or empty!"); - String id = defaultSource.getAttribute("id"); + var id = defaultSource.getAttribute("id"); return getComponent(builder, StringUtils.hasText(id) ? id : fallback); } @@ -107,7 +107,7 @@ public class BeanComponentDefinitionBuilder { Assert.notNull(builder, "Builder must not be null!"); Assert.hasText(name, "Name of bean must not be null or empty!"); - AbstractBeanDefinition definition = builder.getRawBeanDefinition(); + var definition = builder.getRawBeanDefinition(); definition.setSource(context.extractSource(rawSource)); return new BeanComponentDefinition(definition, name); diff --git a/src/main/java/org/springframework/data/config/ConfigurationUtils.java b/src/main/java/org/springframework/data/config/ConfigurationUtils.java index 13a2cf758..c3dc5fe8a 100644 --- a/src/main/java/org/springframework/data/config/ConfigurationUtils.java +++ b/src/main/java/org/springframework/data/config/ConfigurationUtils.java @@ -41,7 +41,7 @@ public interface ConfigurationUtils { Assert.notNull(context, "XmlReaderContext must not be null!"); - ResourceLoader resourceLoader = context.getResourceLoader(); + var resourceLoader = context.getResourceLoader(); if (resourceLoader == null) { throw new IllegalArgumentException("Could not obtain ResourceLoader from XmlReaderContext!"); @@ -72,7 +72,7 @@ public interface ConfigurationUtils { Assert.notNull(resourceLoader, "ResourceLoader must not be null!"); - ClassLoader classLoader = resourceLoader.getClassLoader(); + var classLoader = resourceLoader.getClassLoader(); if (classLoader == null) { throw new IllegalArgumentException("Could not obtain ClassLoader from ResourceLoader!"); @@ -92,7 +92,7 @@ public interface ConfigurationUtils { Assert.notNull(beanDefinition, "BeanDefinition must not be null!"); - String result = beanDefinition.getBeanClassName(); + var result = beanDefinition.getBeanClassName(); if (result == null) { throw new IllegalArgumentException( diff --git a/src/main/java/org/springframework/data/config/ParsingUtils.java b/src/main/java/org/springframework/data/config/ParsingUtils.java index d4cecdfa7..78c319b19 100644 --- a/src/main/java/org/springframework/data/config/ParsingUtils.java +++ b/src/main/java/org/springframework/data/config/ParsingUtils.java @@ -55,7 +55,7 @@ public abstract class ParsingUtils { Assert.hasText(attrName, "Attribute name must not be null!"); Assert.hasText(propertyName, "Property name must not be null!"); - String attr = element.getAttribute(attrName); + var attr = element.getAttribute(attrName); if (StringUtils.hasText(attr)) { builder.addPropertyValue(propertyName, attr); @@ -90,7 +90,7 @@ public abstract class ParsingUtils { Assert.hasText(attribute, "Attribute name must not be null!"); Assert.hasText(property, "Property name must not be null!"); - String value = element.getAttribute(attribute); + var value = element.getAttribute(attribute); if (StringUtils.hasText(value)) { builder.addPropertyReference(property, value); @@ -126,7 +126,7 @@ public abstract class ParsingUtils { Assert.notNull(builder, "Builder must not be null!"); - AbstractBeanDefinition definition = builder.getRawBeanDefinition(); + var definition = builder.getRawBeanDefinition(); definition.setSource(source); return definition; } @@ -143,7 +143,7 @@ public abstract class ParsingUtils { Assert.hasText(targetBeanName, "Target bean name must not be null or empty!"); - BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(ObjectFactoryCreatingFactoryBean.class); + var builder = BeanDefinitionBuilder.rootBeanDefinition(ObjectFactoryCreatingFactoryBean.class); builder.addPropertyValue("targetBeanName", targetBeanName); builder.setRole(AbstractBeanDefinition.ROLE_INFRASTRUCTURE); diff --git a/src/main/java/org/springframework/data/config/TypeFilterParser.java b/src/main/java/org/springframework/data/config/TypeFilterParser.java index 24a02729d..f6a03c860 100644 --- a/src/main/java/org/springframework/data/config/TypeFilterParser.java +++ b/src/main/java/org/springframework/data/config/TypeFilterParser.java @@ -32,9 +32,9 @@ import org.springframework.core.type.filter.RegexPatternTypeFilter; import org.springframework.core.type.filter.TypeFilter; import org.springframework.lang.Nullable; import org.springframework.util.Assert; + import org.w3c.dom.Element; import org.w3c.dom.Node; -import org.w3c.dom.NodeList; /** * Parser to populate the given {@link ClassPathScanningCandidateComponentProvider} with {@link TypeFilter}s parsed from @@ -85,13 +85,13 @@ public class TypeFilterParser { */ public Collection parseTypeFilters(Element element, Type type) { - NodeList nodeList = element.getChildNodes(); + var nodeList = element.getChildNodes(); Collection filters = new HashSet<>(); - for (int i = 0; i < nodeList.getLength(); i++) { + for (var i = 0; i < nodeList.getLength(); i++) { - Node node = nodeList.item(i); - Element childElement = type.getElement(node); + var node = nodeList.item(i); + var childElement = type.getElement(node); if (childElement == null) { continue; @@ -116,12 +116,12 @@ public class TypeFilterParser { */ protected TypeFilter createTypeFilter(Element element, ClassLoader classLoader) { - String filterType = element.getAttribute(FILTER_TYPE_ATTRIBUTE); - String expression = element.getAttribute(FILTER_EXPRESSION_ATTRIBUTE); + var filterType = element.getAttribute(FILTER_TYPE_ATTRIBUTE); + var expression = element.getAttribute(FILTER_EXPRESSION_ATTRIBUTE); try { - FilterType filter = FilterType.fromString(filterType); + var filter = FilterType.fromString(filterType); return filter.getFilter(expression, classLoader); } catch (ClassNotFoundException ex) { @@ -136,7 +136,7 @@ public class TypeFilterParser { * @author Oliver Gierke * @see #getFilter(String, ClassLoader) */ - private static enum FilterType { + private enum FilterType { ANNOTATION { @Override @@ -171,7 +171,7 @@ public class TypeFilterParser { @Override public TypeFilter getFilter(String expression, ClassLoader classLoader) throws ClassNotFoundException { - Class filterClass = classLoader.loadClass(expression); + var filterClass = classLoader.loadClass(expression); if (!TypeFilter.class.isAssignableFrom(filterClass)) { throw new IllegalArgumentException( "Class is not assignable to [" + TypeFilter.class.getName() + "]: " + expression); @@ -199,7 +199,7 @@ public class TypeFilterParser { */ static FilterType fromString(String typeString) { - for (FilterType filter : FilterType.values()) { + for (var filter : FilterType.values()) { if (filter.name().equalsIgnoreCase(typeString)) { return filter; } @@ -209,13 +209,13 @@ public class TypeFilterParser { } } - public static enum Type { + public enum Type { INCLUDE("include-filter"), EXCLUDE("exclude-filter"); - private String elementName; + private final String elementName; - private Type(String elementName) { + Type(String elementName) { this.elementName = elementName; } @@ -230,7 +230,7 @@ public class TypeFilterParser { Element getElement(Node node) { if (node.getNodeType() == Node.ELEMENT_NODE) { - String localName = node.getLocalName(); + var localName = node.getLocalName(); if (elementName.equals(localName)) { return (Element) node; } diff --git a/src/main/java/org/springframework/data/convert/ConfigurableTypeInformationMapper.java b/src/main/java/org/springframework/data/convert/ConfigurableTypeInformationMapper.java index 456d9c3a2..95d2baa54 100644 --- a/src/main/java/org/springframework/data/convert/ConfigurableTypeInformationMapper.java +++ b/src/main/java/org/springframework/data/convert/ConfigurableTypeInformationMapper.java @@ -53,8 +53,8 @@ public class ConfigurableTypeInformationMapper implements TypeInformationMapper for (Entry, String> entry : sourceTypeMap.entrySet()) { - ClassTypeInformation type = ClassTypeInformation.from(entry.getKey()); - Alias alias = Alias.of(entry.getValue()); + var type = ClassTypeInformation.from(entry.getKey()); + var alias = Alias.of(entry.getValue()); if (typeToAlias.containsValue(alias)) { throw new IllegalArgumentException( diff --git a/src/main/java/org/springframework/data/convert/CustomConversions.java b/src/main/java/org/springframework/data/convert/CustomConversions.java index 4a854fe62..e6420c47f 100644 --- a/src/main/java/org/springframework/data/convert/CustomConversions.java +++ b/src/main/java/org/springframework/data/convert/CustomConversions.java @@ -113,7 +113,7 @@ public class CustomConversions { this.converterConfiguration = converterConfiguration; - List registeredConverters = collectPotentialConverterRegistrations( + var registeredConverters = collectPotentialConverterRegistrations( converterConfiguration.getStoreConversions(), converterConfiguration.getUserConverters()).stream() // .filter(this::isSupportedConverter) // .filter(this::shouldRegister) // @@ -253,7 +253,7 @@ public class CustomConversions { Assert.notNull(converterRegistration, "Converter registration must not be null!"); - ConvertiblePair pair = converterRegistration.getConvertiblePair(); + var pair = converterRegistration.getConvertiblePair(); if (converterRegistration.isReading()) { @@ -288,7 +288,7 @@ public class CustomConversions { */ private boolean isSupportedConverter(ConverterRegistrationIntent registrationIntent) { - boolean register = registrationIntent.isUserConverter() || registrationIntent.isStoreConverter() + var register = registrationIntent.isUserConverter() || registrationIntent.isStoreConverter() || (registrationIntent.isReading() && registrationIntent.isSimpleSourceType()) || (registrationIntent.isWriting() && registrationIntent.isSimpleTargetType()); @@ -329,7 +329,7 @@ public class CustomConversions { Assert.notNull(sourceType, "Source type must not be null!"); - Class target = customWriteTargetTypes.computeIfAbsent(sourceType, getRawWriteTarget); + var target = customWriteTargetTypes.computeIfAbsent(sourceType, getRawWriteTarget); return Void.class.equals(target) || target == null ? Optional.empty() : Optional.of(target); } @@ -348,7 +348,7 @@ public class CustomConversions { Assert.notNull(sourceType, "Source type must not be null!"); Assert.notNull(requestedTargetType, "Target type must not be null!"); - Class target = customWriteTargetTypes.computeIfAbsent(sourceType, requestedTargetType, getWriteTarget); + var target = customWriteTargetTypes.computeIfAbsent(sourceType, requestedTargetType, getWriteTarget); return Void.class.equals(target) || target == null ? Optional.empty() : Optional.of(target); } @@ -428,13 +428,13 @@ public class CustomConversions { return targetType; } - for (ConvertiblePair pair : pairs) { + for (var pair : pairs) { if (!hasAssignableSourceType(pair, sourceType)) { continue; } - Class candidate = pair.getTargetType(); + var candidate = pair.getTargetType(); if (!requestedTargetTypeIsAssignable(targetType, candidate)) { continue; @@ -491,7 +491,7 @@ public class CustomConversions { public Class computeIfAbsent(Class sourceType, Class targetType, Function> mappingFunction) { - TargetTypes targetTypes = customReadTargetTypes.get(sourceType); + var targetTypes = customReadTargetTypes.get(sourceType); if (targetTypes == null) { targetTypes = customReadTargetTypes.computeIfAbsent(sourceType, TargetTypes::new); @@ -532,7 +532,7 @@ public class CustomConversions { @Nullable public Class computeIfAbsent(Class targetType, Function> mappingFunction) { - Class optionalTarget = conversionTargets.get(targetType); + var optionalTarget = conversionTargets.get(targetType); if (optionalTarget == null) { optionalTarget = mappingFunction.apply(new ConvertiblePair(sourceType, targetType)); @@ -758,9 +758,9 @@ public class CustomConversions { Assert.notNull(converter, "Converter must not be null!"); - Class type = converter.getClass(); - boolean isWriting = isAnnotatedWith(type, WritingConverter.class); - boolean isReading = isAnnotatedWith(type, ReadingConverter.class); + var type = converter.getClass(); + var isWriting = isAnnotatedWith(type, WritingConverter.class); + var isReading = isAnnotatedWith(type, ReadingConverter.class); if (converter instanceof ConverterAware) { @@ -769,7 +769,7 @@ public class CustomConversions { } else if (converter instanceof GenericConverter) { - Set convertibleTypes = GenericConverter.class.cast(converter).getConvertibleTypes(); + var convertibleTypes = GenericConverter.class.cast(converter).getConvertibleTypes(); return convertibleTypes == null // ? Streamable.empty() // @@ -795,8 +795,8 @@ public class CustomConversions { private Streamable getRegistrationFor(Object converter, Class type, boolean isReading, boolean isWriting) { - Class converterType = converter.getClass(); - Class[] arguments = GenericTypeResolver.resolveTypeArguments(converterType, type); + var converterType = converter.getClass(); + var arguments = GenericTypeResolver.resolveTypeArguments(converterType, type); if (arguments == null) { throw new IllegalStateException(String.format("Couldn't resolve type arguments for %s!", converterType)); @@ -838,11 +838,10 @@ public class CustomConversions { return true; } - if (!(o instanceof StoreConversions)) { + if (!(o instanceof StoreConversions that)) { return false; } - StoreConversions that = (StoreConversions) o; if (!ObjectUtils.nullSafeEquals(storeTypeHolder, that.storeTypeHolder)) { return false; } @@ -856,7 +855,7 @@ public class CustomConversions { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(storeTypeHolder); + var result = ObjectUtils.nullSafeHashCode(storeTypeHolder); result = 31 * result + ObjectUtils.nullSafeHashCode(storeConverters); return result; } diff --git a/src/main/java/org/springframework/data/convert/DefaultConverterBuilder.java b/src/main/java/org/springframework/data/convert/DefaultConverterBuilder.java index 4267e5e07..d1f84472c 100644 --- a/src/main/java/org/springframework/data/convert/DefaultConverterBuilder.java +++ b/src/main/java/org/springframework/data/convert/DefaultConverterBuilder.java @@ -44,20 +44,10 @@ import org.springframework.util.ObjectUtils; * @soundtrack John Mayer - Still Feel Like Your Man (The Search for Everything) */ @SuppressWarnings("OptionalUsedAsFieldOrParameterType") -class DefaultConverterBuilder +record DefaultConverterBuilder (ConvertiblePair convertiblePair, + Optional> writing, Optional> reading) implements ConverterAware, ReadingConverterBuilder, WritingConverterBuilder { - private final ConvertiblePair convertiblePair; - private final Optional> writing; - private final Optional> reading; - - DefaultConverterBuilder(ConvertiblePair convertiblePair, Optional> writing, - Optional> reading) { - this.convertiblePair = convertiblePair; - this.writing = writing; - this.reading = reading; - } - /* * (non-Javadoc) * @see org.springframework.data.convert.WritingConverterBuilder#andReading(java.util.function.Function) @@ -172,12 +162,10 @@ class DefaultConverterBuilder return true; } - if (!(o instanceof ConfigurableGenericConverter)) { + if (!(o instanceof ConfigurableGenericConverter that)) { return false; } - ConfigurableGenericConverter that = (ConfigurableGenericConverter) o; - if (!ObjectUtils.nullSafeEquals(convertiblePair, that.convertiblePair)) { return false; } @@ -191,7 +179,7 @@ class DefaultConverterBuilder */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(convertiblePair); + var result = ObjectUtils.nullSafeHashCode(convertiblePair); result = 31 * result + ObjectUtils.nullSafeHashCode(function); return result; } diff --git a/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java b/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java index 4f6b70ccf..2ca7d24da 100644 --- a/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java +++ b/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java @@ -96,8 +96,8 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware this.typeCache = new ConcurrentHashMap<>(); this.getAlias = key -> { - for (TypeInformationMapper mapper : mappers) { - TypeInformation typeInformation = mapper.resolveTypeFrom(key); + for (var mapper : mappers) { + var typeInformation = mapper.resolveTypeFrom(key); if (typeInformation != null) { return Optional.of(typeInformation); @@ -130,7 +130,7 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware @Nullable private TypeInformation getFromCacheOrCreate(Alias alias) { - Optional> typeInformation = typeCache.get(alias); + var typeInformation = typeCache.get(alias); if (typeInformation == null) { typeInformation = typeCache.computeIfAbsent(alias, getAlias); @@ -149,22 +149,22 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware Assert.notNull(source, "Source must not be null!"); Assert.notNull(basicType, "Basic type must not be null!"); - Class documentsTargetType = getDefaultedTypeToBeUsed(source); + var documentsTargetType = getDefaultedTypeToBeUsed(source); if (documentsTargetType == null) { return basicType; } - Class rawType = basicType.getType(); + var rawType = basicType.getType(); - boolean isMoreConcreteCustomType = rawType == null + var isMoreConcreteCustomType = rawType == null || rawType.isAssignableFrom(documentsTargetType) && !rawType.equals(documentsTargetType); if (!isMoreConcreteCustomType) { return basicType; } - ClassTypeInformation targetType = ClassTypeInformation.from(documentsTargetType); + var targetType = ClassTypeInformation.from(documentsTargetType); return (TypeInformation) basicType.specialize(targetType); } @@ -179,7 +179,7 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware @Nullable private Class getDefaultedTypeToBeUsed(S source) { - TypeInformation documentsTargetTypeInformation = readType(source); + var documentsTargetTypeInformation = readType(source); documentsTargetTypeInformation = documentsTargetTypeInformation == null ? getFallbackTypeFor(source) : documentsTargetTypeInformation; return documentsTargetTypeInformation == null ? null : documentsTargetTypeInformation.getType(); @@ -214,7 +214,7 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware Assert.notNull(info, "TypeInformation must not be null!"); - Alias alias = getAliasFor(info); + var alias = getAliasFor(info); if (alias.isPresent()) { accessor.writeTypeTo(sink, alias.getValue()); } @@ -246,7 +246,7 @@ public class DefaultTypeMapper implements TypeMapper, BeanClassLoaderAware for (TypeInformationMapper mapper : mappers) { - Alias alias = mapper.createAliasFor(info); + var alias = mapper.createAliasFor(info); if (alias.isPresent()) { return alias; } diff --git a/src/main/java/org/springframework/data/convert/JMoleculesConverters.java b/src/main/java/org/springframework/data/convert/JMoleculesConverters.java index 1f496f02d..dcde57c03 100644 --- a/src/main/java/org/springframework/data/convert/JMoleculesConverters.java +++ b/src/main/java/org/springframework/data/convert/JMoleculesConverters.java @@ -54,10 +54,10 @@ public class JMoleculesConverters { List converters = new ArrayList<>(); - Supplier conversionService = () -> DefaultConversionService.getSharedInstance(); + var conversionService = (Supplier) () -> DefaultConversionService.getSharedInstance(); - IdentifierToPrimitivesConverter toPrimitives = new IdentifierToPrimitivesConverter(conversionService); - PrimitivesToIdentifierConverter toIdentifier = new PrimitivesToIdentifierConverter(conversionService); + var toPrimitives = new IdentifierToPrimitivesConverter(conversionService); + var toIdentifier = new PrimitivesToIdentifierConverter(conversionService); converters.add(toPrimitives); converters.add(toIdentifier); diff --git a/src/main/java/org/springframework/data/convert/Jsr310Converters.java b/src/main/java/org/springframework/data/convert/Jsr310Converters.java index 128f3a286..8ae60f667 100644 --- a/src/main/java/org/springframework/data/convert/Jsr310Converters.java +++ b/src/main/java/org/springframework/data/convert/Jsr310Converters.java @@ -87,7 +87,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum DateToLocalDateTimeConverter implements Converter { + public enum DateToLocalDateTimeConverter implements Converter { INSTANCE; @@ -99,7 +99,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum LocalDateTimeToDateConverter implements Converter { + public enum LocalDateTimeToDateConverter implements Converter { INSTANCE; @@ -111,7 +111,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum DateToLocalDateConverter implements Converter { + public enum DateToLocalDateConverter implements Converter { INSTANCE; @@ -123,7 +123,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum LocalDateToDateConverter implements Converter { + public enum LocalDateToDateConverter implements Converter { INSTANCE; @@ -135,7 +135,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum DateToLocalTimeConverter implements Converter { + public enum DateToLocalTimeConverter implements Converter { INSTANCE; @@ -147,7 +147,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum LocalTimeToDateConverter implements Converter { + public enum LocalTimeToDateConverter implements Converter { INSTANCE; @@ -159,7 +159,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum DateToInstantConverter implements Converter { + public enum DateToInstantConverter implements Converter { INSTANCE; @@ -171,7 +171,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum InstantToDateConverter implements Converter { + public enum InstantToDateConverter implements Converter { INSTANCE; @@ -183,7 +183,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum LocalDateTimeToInstantConverter implements Converter { + public enum LocalDateTimeToInstantConverter implements Converter { INSTANCE; @@ -195,7 +195,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum InstantToLocalDateTimeConverter implements Converter { + public enum InstantToLocalDateTimeConverter implements Converter { INSTANCE; @@ -207,7 +207,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum ZoneIdToStringConverter implements Converter { + public enum ZoneIdToStringConverter implements Converter { INSTANCE; @@ -219,7 +219,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToZoneIdConverter implements Converter { + public enum StringToZoneIdConverter implements Converter { INSTANCE; @@ -231,7 +231,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum DurationToStringConverter implements Converter { + public enum DurationToStringConverter implements Converter { INSTANCE; @@ -243,7 +243,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToDurationConverter implements Converter { + public enum StringToDurationConverter implements Converter { INSTANCE; @@ -255,7 +255,7 @@ public abstract class Jsr310Converters { } @WritingConverter - public static enum PeriodToStringConverter implements Converter { + public enum PeriodToStringConverter implements Converter { INSTANCE; @@ -267,7 +267,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToPeriodConverter implements Converter { + public enum StringToPeriodConverter implements Converter { INSTANCE; @@ -279,7 +279,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToLocalDateConverter implements Converter { + public enum StringToLocalDateConverter implements Converter { INSTANCE; @@ -295,7 +295,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToLocalDateTimeConverter implements Converter { + public enum StringToLocalDateTimeConverter implements Converter { INSTANCE; @@ -311,7 +311,7 @@ public abstract class Jsr310Converters { } @ReadingConverter - public static enum StringToInstantConverter implements Converter { + public enum StringToInstantConverter implements Converter { INSTANCE; diff --git a/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java b/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java index 175ef2f82..d9ce62f0a 100644 --- a/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java +++ b/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java @@ -16,7 +16,6 @@ package org.springframework.data.convert; import java.util.Map; -import java.util.Map.Entry; import java.util.concurrent.ConcurrentHashMap; import org.springframework.data.mapping.Alias; @@ -66,7 +65,7 @@ public class MappingContextTypeInformationMapper implements TypeInformationMappe return typeMap.computeIfAbsent(type.getRawTypeInformation(), key -> { - PersistentEntity entity = mappingContext.getPersistentEntity(key); + var entity = mappingContext.getPersistentEntity(key); if (entity == null || entity.getTypeAlias() == null) { return Alias.NONE; @@ -86,7 +85,7 @@ public class MappingContextTypeInformationMapper implements TypeInformationMappe // Reject second alias for same type - Alias existingAlias = typeMap.getOrDefault(key, Alias.NONE); + var existingAlias = typeMap.getOrDefault(key, Alias.NONE); if (existingAlias.isPresentButDifferent(alias)) { @@ -120,7 +119,7 @@ public class MappingContextTypeInformationMapper implements TypeInformationMappe @Override public TypeInformation resolveTypeFrom(Alias alias) { - for (Entry, Alias> entry : typeMap.entrySet()) { + for (var entry : typeMap.entrySet()) { if (entry.getValue().hasSamePresentValueAs(alias)) { return entry.getKey(); } diff --git a/src/main/java/org/springframework/data/convert/SimpleTypeInformationMapper.java b/src/main/java/org/springframework/data/convert/SimpleTypeInformationMapper.java index bc7772e72..9480c65fe 100644 --- a/src/main/java/org/springframework/data/convert/SimpleTypeInformationMapper.java +++ b/src/main/java/org/springframework/data/convert/SimpleTypeInformationMapper.java @@ -53,7 +53,7 @@ public class SimpleTypeInformationMapper implements TypeInformationMapper, BeanC @Override public TypeInformation resolveTypeFrom(Alias alias) { - String stringAlias = alias.mapTyped(String.class); + var stringAlias = alias.mapTyped(String.class); if (stringAlias != null) { return cache.computeIfAbsent(stringAlias, this::loadClass).orElse(null); diff --git a/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java b/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java index afd2d750a..630df63fd 100644 --- a/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java +++ b/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java @@ -24,7 +24,7 @@ import org.springframework.lang.Nullable; /** * Simple ChangeSet implementation backed by a HashMap. - * + * * @author Thomas Risberg * @author Rod Johnson * @author Christoph Strobl @@ -61,7 +61,7 @@ public class HashMapChangeSet implements ChangeSet { @Nullable public T get(String key, Class requiredClass, ConversionService conversionService) { - Object value = values.get(key); + var value = values.get(key); if (value == null) { return null; diff --git a/src/main/java/org/springframework/data/domain/AbstractPageRequest.java b/src/main/java/org/springframework/data/domain/AbstractPageRequest.java index fe81a648c..ce4e10d23 100644 --- a/src/main/java/org/springframework/data/domain/AbstractPageRequest.java +++ b/src/main/java/org/springframework/data/domain/AbstractPageRequest.java @@ -118,8 +118,8 @@ public abstract class AbstractPageRequest implements Pageable, Serializable { @Override public int hashCode() { - final int prime = 31; - int result = 1; + final var prime = 31; + var result = 1; result = prime * result + page; result = prime * result + size; @@ -142,7 +142,7 @@ public abstract class AbstractPageRequest implements Pageable, Serializable { return false; } - AbstractPageRequest other = (AbstractPageRequest) obj; + var other = (AbstractPageRequest) obj; return this.page == other.page && this.size == other.size; } } diff --git a/src/main/java/org/springframework/data/domain/Chunk.java b/src/main/java/org/springframework/data/domain/Chunk.java index 829e33002..ef4ebd6bd 100644 --- a/src/main/java/org/springframework/data/domain/Chunk.java +++ b/src/main/java/org/springframework/data/domain/Chunk.java @@ -184,14 +184,12 @@ abstract class Chunk implements Slice, Serializable { return true; } - if (!(obj instanceof Chunk)) { + if (!(obj instanceof Chunk that)) { return false; } - Chunk that = (Chunk) obj; - - boolean contentEqual = this.content.equals(that.content); - boolean pageableEqual = this.pageable.equals(that.pageable); + var contentEqual = this.content.equals(that.content); + var pageableEqual = this.pageable.equals(that.pageable); return contentEqual && pageableEqual; } @@ -203,7 +201,7 @@ abstract class Chunk implements Slice, Serializable { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * pageable.hashCode(); result += 31 * content.hashCode(); diff --git a/src/main/java/org/springframework/data/domain/ExampleMatcher.java b/src/main/java/org/springframework/data/domain/ExampleMatcher.java index 40ab5025f..c59823578 100644 --- a/src/main/java/org/springframework/data/domain/ExampleMatcher.java +++ b/src/main/java/org/springframework/data/domain/ExampleMatcher.java @@ -124,7 +124,7 @@ public interface ExampleMatcher { Assert.hasText(propertyPath, "PropertyPath must not be empty!"); Assert.notNull(matcherConfigurer, "MatcherConfigurer must not be empty!"); - GenericPropertyMatcher genericPropertyMatcher = new GenericPropertyMatcher(); + var genericPropertyMatcher = new GenericPropertyMatcher(); matcherConfigurer.configureMatcher(genericPropertyMatcher); return withMatcher(propertyPath, genericPropertyMatcher); @@ -451,12 +451,10 @@ public interface ExampleMatcher { return true; } - if (!(o instanceof GenericPropertyMatcher)) { + if (!(o instanceof GenericPropertyMatcher that)) { return false; } - GenericPropertyMatcher that = (GenericPropertyMatcher) o; - if (stringMatcher != that.stringMatcher) return false; @@ -473,7 +471,7 @@ public interface ExampleMatcher { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(stringMatcher); + var result = ObjectUtils.nullSafeHashCode(stringMatcher); result = 31 * result + ObjectUtils.nullSafeHashCode(ignoreCase); result = 31 * result + ObjectUtils.nullSafeHashCode(valueTransformer); return result; @@ -751,12 +749,10 @@ public interface ExampleMatcher { return true; } - if (!(o instanceof PropertySpecifier)) { + if (!(o instanceof PropertySpecifier that)) { return false; } - PropertySpecifier that = (PropertySpecifier) o; - if (!ObjectUtils.nullSafeEquals(path, that.path)) { return false; } @@ -777,7 +773,7 @@ public interface ExampleMatcher { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(path); + var result = ObjectUtils.nullSafeHashCode(path); result = 31 * result + ObjectUtils.nullSafeHashCode(stringMatcher); result = 31 * result + ObjectUtils.nullSafeHashCode(ignoreCase); result = 31 * result + ObjectUtils.nullSafeHashCode(valueTransformer); @@ -840,11 +836,10 @@ public interface ExampleMatcher { return true; } - if (!(o instanceof PropertySpecifiers)) { + if (!(o instanceof PropertySpecifiers that)) { return false; } - PropertySpecifiers that = (PropertySpecifiers) o; return ObjectUtils.nullSafeEquals(propertySpecifiers, that.propertySpecifiers); } diff --git a/src/main/java/org/springframework/data/domain/PageImpl.java b/src/main/java/org/springframework/data/domain/PageImpl.java index 444247ec6..d3bf388bb 100644 --- a/src/main/java/org/springframework/data/domain/PageImpl.java +++ b/src/main/java/org/springframework/data/domain/PageImpl.java @@ -113,8 +113,8 @@ public class PageImpl extends Chunk implements Page { @Override public String toString() { - String contentType = "UNKNOWN"; - List content = getContent(); + var contentType = "UNKNOWN"; + var content = getContent(); if (!content.isEmpty() && content.get(0) != null) { contentType = content.get(0).getClass().getName(); @@ -134,12 +134,10 @@ public class PageImpl extends Chunk implements Page { return true; } - if (!(obj instanceof PageImpl)) { + if (!(obj instanceof PageImpl that)) { return false; } - PageImpl that = (PageImpl) obj; - return this.total == that.total && super.equals(obj); } @@ -150,7 +148,7 @@ public class PageImpl extends Chunk implements Page { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * (int) (total ^ total >>> 32); result += 31 * super.hashCode(); diff --git a/src/main/java/org/springframework/data/domain/PageRequest.java b/src/main/java/org/springframework/data/domain/PageRequest.java index 10b5f06d2..0f27e3795 100644 --- a/src/main/java/org/springframework/data/domain/PageRequest.java +++ b/src/main/java/org/springframework/data/domain/PageRequest.java @@ -142,12 +142,10 @@ public class PageRequest extends AbstractPageRequest { return true; } - if (!(obj instanceof PageRequest)) { + if (!(obj instanceof PageRequest that)) { return false; } - PageRequest that = (PageRequest) obj; - return super.equals(that) && this.sort.equals(that.sort); } diff --git a/src/main/java/org/springframework/data/domain/Range.java b/src/main/java/org/springframework/data/domain/Range.java index b5f41a3dc..0d9542a96 100644 --- a/src/main/java/org/springframework/data/domain/Range.java +++ b/src/main/java/org/springframework/data/domain/Range.java @@ -226,12 +226,10 @@ public final class Range> { return true; } - if (!(o instanceof Range)) { + if (!(o instanceof Range range)) { return false; } - Range range = (Range) o; - if (!ObjectUtils.nullSafeEquals(lowerBound, range.lowerBound)) { return false; } @@ -245,7 +243,7 @@ public final class Range> { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(lowerBound); + var result = ObjectUtils.nullSafeHashCode(lowerBound); result = 31 * result + ObjectUtils.nullSafeHashCode(upperBound); return result; } @@ -436,12 +434,10 @@ public final class Range> { return true; } - if (!(o instanceof Bound)) { + if (!(o instanceof Bound bound)) { return false; } - Bound bound = (Bound) o; - if (inclusive != bound.inclusive) return false; @@ -454,7 +450,7 @@ public final class Range> { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(value); + var result = ObjectUtils.nullSafeHashCode(value); result = 31 * result + (inclusive ? 1 : 0); return result; } diff --git a/src/main/java/org/springframework/data/domain/SliceImpl.java b/src/main/java/org/springframework/data/domain/SliceImpl.java index 09140f8b8..a8c0c04de 100644 --- a/src/main/java/org/springframework/data/domain/SliceImpl.java +++ b/src/main/java/org/springframework/data/domain/SliceImpl.java @@ -83,8 +83,8 @@ public class SliceImpl extends Chunk { @Override public String toString() { - String contentType = "UNKNOWN"; - List content = getContent(); + var contentType = "UNKNOWN"; + var content = getContent(); if (content.size() > 0) { contentType = content.get(0).getClass().getName(); @@ -104,12 +104,10 @@ public class SliceImpl extends Chunk { return true; } - if (!(obj instanceof SliceImpl)) { + if (!(obj instanceof SliceImpl that)) { return false; } - SliceImpl that = (SliceImpl) obj; - return this.hasNext == that.hasNext && super.equals(obj); } @@ -120,7 +118,7 @@ public class SliceImpl extends Chunk { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * (hasNext ? 1 : 0); result += 31 * super.hashCode(); diff --git a/src/main/java/org/springframework/data/domain/Sort.java b/src/main/java/org/springframework/data/domain/Sort.java index 1fb078db8..465a8582d 100644 --- a/src/main/java/org/springframework/data/domain/Sort.java +++ b/src/main/java/org/springframework/data/domain/Sort.java @@ -193,9 +193,9 @@ public class Sort implements Streamable these = new ArrayList<>(this.toList()); + var these = new ArrayList(this.toList()); - for (Order order : sort) { + for (var order : sort) { these.add(order); } @@ -211,7 +211,7 @@ public class Sort implements Streamable implements Example { return true; } - if (!(o instanceof TypedExample)) { + if (!(o instanceof TypedExample that)) { return false; } - TypedExample that = (TypedExample) o; if (!ObjectUtils.nullSafeEquals(probe, that.probe)) { return false; } @@ -75,7 +74,7 @@ class TypedExample implements Example { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(probe); + var result = ObjectUtils.nullSafeHashCode(probe); result = 31 * result + ObjectUtils.nullSafeHashCode(matcher); return result; } diff --git a/src/main/java/org/springframework/data/domain/TypedExampleMatcher.java b/src/main/java/org/springframework/data/domain/TypedExampleMatcher.java index 7e720a676..bf768d243 100644 --- a/src/main/java/org/springframework/data/domain/TypedExampleMatcher.java +++ b/src/main/java/org/springframework/data/domain/TypedExampleMatcher.java @@ -105,8 +105,8 @@ class TypedExampleMatcher implements ExampleMatcher { Assert.hasText(propertyPath, "PropertyPath must not be empty!"); Assert.notNull(genericPropertyMatcher, "GenericPropertyMatcher must not be empty!"); - PropertySpecifiers propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); - PropertySpecifier propertySpecifier = new PropertySpecifier(propertyPath); + var propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); + var propertySpecifier = new PropertySpecifier(propertyPath); if (genericPropertyMatcher.ignoreCase != null) { propertySpecifier = propertySpecifier.withIgnoreCase(genericPropertyMatcher.ignoreCase); @@ -134,8 +134,8 @@ class TypedExampleMatcher implements ExampleMatcher { Assert.hasText(propertyPath, "PropertyPath must not be empty!"); Assert.notNull(propertyValueTransformer, "PropertyValueTransformer must not be empty!"); - PropertySpecifiers propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); - PropertySpecifier propertySpecifier = getOrCreatePropertySpecifier(propertyPath, propertySpecifiers); + var propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); + var propertySpecifier = getOrCreatePropertySpecifier(propertyPath, propertySpecifiers); propertySpecifiers.add(propertySpecifier.withValueTransformer(propertyValueTransformer)); @@ -153,10 +153,10 @@ class TypedExampleMatcher implements ExampleMatcher { Assert.notEmpty(propertyPaths, "PropertyPaths must not be empty!"); Assert.noNullElements(propertyPaths, "PropertyPaths must not contain null elements!"); - PropertySpecifiers propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); + var propertySpecifiers = new PropertySpecifiers(this.propertySpecifiers); - for (String propertyPath : propertyPaths) { - PropertySpecifier propertySpecifier = getOrCreatePropertySpecifier(propertyPath, propertySpecifiers); + for (var propertyPath : propertyPaths) { + var propertySpecifier = getOrCreatePropertySpecifier(propertyPath, propertySpecifiers); propertySpecifiers.add(propertySpecifier.withIgnoreCase(true)); } @@ -256,12 +256,10 @@ class TypedExampleMatcher implements ExampleMatcher { return true; } - if (!(o instanceof TypedExampleMatcher)) { + if (!(o instanceof TypedExampleMatcher that)) { return false; } - TypedExampleMatcher that = (TypedExampleMatcher) o; - if (defaultIgnoreCase != that.defaultIgnoreCase) { return false; } @@ -292,7 +290,7 @@ class TypedExampleMatcher implements ExampleMatcher { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(nullHandler); + var result = ObjectUtils.nullSafeHashCode(nullHandler); result = 31 * result + ObjectUtils.nullSafeHashCode(defaultStringMatcher); result = 31 * result + ObjectUtils.nullSafeHashCode(propertySpecifiers); result = 31 * result + ObjectUtils.nullSafeHashCode(ignoredPaths); diff --git a/src/main/java/org/springframework/data/domain/jaxb/OrderAdapter.java b/src/main/java/org/springframework/data/domain/jaxb/OrderAdapter.java index 689877ea1..01fcfb7e9 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/OrderAdapter.java +++ b/src/main/java/org/springframework/data/domain/jaxb/OrderAdapter.java @@ -17,7 +17,6 @@ package org.springframework.data.domain.jaxb; import jakarta.xml.bind.annotation.adapters.XmlAdapter; -import org.springframework.data.domain.Sort.Direction; import org.springframework.data.domain.Sort.Order; import org.springframework.data.domain.jaxb.SpringDataJaxb.OrderDto; import org.springframework.lang.Nullable; @@ -43,7 +42,7 @@ public class OrderAdapter extends XmlAdapter { return null; } - OrderDto dto = new OrderDto(); + var dto = new OrderDto(); dto.direction = order.getDirection(); dto.property = order.getProperty(); return dto; @@ -61,8 +60,8 @@ public class OrderAdapter extends XmlAdapter { return null; } - Direction direction = source.direction; - String property = source.property; + var direction = source.direction; + var property = source.property; if (direction == null || property == null) { return null; diff --git a/src/main/java/org/springframework/data/domain/jaxb/PageAdapter.java b/src/main/java/org/springframework/data/domain/jaxb/PageAdapter.java index 44263c8af..44d379312 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/PageAdapter.java +++ b/src/main/java/org/springframework/data/domain/jaxb/PageAdapter.java @@ -44,7 +44,7 @@ public class PageAdapter extends XmlAdapter> { return null; } - PageDto dto = new PageDto(); + var dto = new PageDto(); dto.content = source.getContent(); dto.add(getLinks(source)); diff --git a/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java b/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java index edf13f512..8c10ace74 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java +++ b/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java @@ -46,9 +46,9 @@ class PageableAdapter extends XmlAdapter { return null; } - PageRequestDto dto = new PageRequestDto(); + var dto = new PageRequestDto(); - SortDto sortDto = SortAdapter.INSTANCE.marshal(request.getSort()); + var sortDto = SortAdapter.INSTANCE.marshal(request.getSort()); dto.orders = sortDto == null ? Collections.emptyList() : sortDto.orders; dto.page = request.getPageNumber(); dto.size = request.getPageSize(); @@ -72,7 +72,7 @@ class PageableAdapter extends XmlAdapter { return PageRequest.of(v.page, v.size); } - SortDto sortDto = new SortDto(); + var sortDto = new SortDto(); sortDto.orders = v.orders; return PageRequest.of(v.page, v.size, SortAdapter.INSTANCE.unmarshal(sortDto)); diff --git a/src/main/java/org/springframework/data/domain/jaxb/SortAdapter.java b/src/main/java/org/springframework/data/domain/jaxb/SortAdapter.java index 758fdcba1..706488a3e 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/SortAdapter.java +++ b/src/main/java/org/springframework/data/domain/jaxb/SortAdapter.java @@ -43,7 +43,7 @@ public class SortAdapter extends XmlAdapter { return null; } - SortDto dto = new SortDto(); + var dto = new SortDto(); dto.orders = SpringDataJaxb.marshal(source, OrderAdapter.INSTANCE); return dto; diff --git a/src/main/java/org/springframework/data/domain/jaxb/SpringDataJaxb.java b/src/main/java/org/springframework/data/domain/jaxb/SpringDataJaxb.java index fd77d2311..1cbc35a2e 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/SpringDataJaxb.java +++ b/src/main/java/org/springframework/data/domain/jaxb/SpringDataJaxb.java @@ -119,7 +119,7 @@ public abstract class SpringDataJaxb { List result = new ArrayList<>(source.size()); - for (S element : source) { + for (var element : source) { try { result.add(adapter.unmarshal(element)); } catch (Exception o_O) { @@ -146,7 +146,7 @@ public abstract class SpringDataJaxb { List result = new ArrayList<>(); - for (T element : source) { + for (var element : source) { try { result.add(adapter.marshal(element)); } catch (Exception o_O) { diff --git a/src/main/java/org/springframework/data/geo/Box.java b/src/main/java/org/springframework/data/geo/Box.java index 3177b0b36..4b973bf7a 100644 --- a/src/main/java/org/springframework/data/geo/Box.java +++ b/src/main/java/org/springframework/data/geo/Box.java @@ -97,7 +97,7 @@ public class Box implements Shape { @Override public int hashCode() { - int result = 31; + var result = 31; result += 17 * first.hashCode(); result += 17 * second.hashCode(); @@ -116,12 +116,10 @@ public class Box implements Shape { return true; } - if (!(obj instanceof Box)) { + if (!(obj instanceof Box that)) { return false; } - Box that = (Box) obj; - return this.first.equals(that.first) && this.second.equals(that.second); } } diff --git a/src/main/java/org/springframework/data/geo/Circle.java b/src/main/java/org/springframework/data/geo/Circle.java index 980a11b66..f99856891 100644 --- a/src/main/java/org/springframework/data/geo/Circle.java +++ b/src/main/java/org/springframework/data/geo/Circle.java @@ -102,12 +102,10 @@ public class Circle implements Shape { return true; } - if (!(o instanceof Circle)) { + if (!(o instanceof Circle circle)) { return false; } - Circle circle = (Circle) o; - if (!ObjectUtils.nullSafeEquals(center, circle.center)) { return false; } @@ -121,7 +119,7 @@ public class Circle implements Shape { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(center); + var result = ObjectUtils.nullSafeHashCode(center); result = 31 * result + ObjectUtils.nullSafeHashCode(radius); return result; } diff --git a/src/main/java/org/springframework/data/geo/Distance.java b/src/main/java/org/springframework/data/geo/Distance.java index 03cb96b82..8ba34eb69 100644 --- a/src/main/java/org/springframework/data/geo/Distance.java +++ b/src/main/java/org/springframework/data/geo/Distance.java @@ -121,7 +121,7 @@ public final class Distance implements Serializable, Comparable { Assert.notNull(other, "Distance to add must not be null!"); - double newNormalizedValue = getNormalizedValue() + other.getNormalizedValue(); + var newNormalizedValue = getNormalizedValue() + other.getNormalizedValue(); return new Distance(newNormalizedValue * metric.getMultiplier(), metric); } @@ -138,8 +138,8 @@ public final class Distance implements Serializable, Comparable { Assert.notNull(other, "Distance to must not be null!"); Assert.notNull(metric, "Result metric must not be null!"); - double newLeft = getNormalizedValue() * metric.getMultiplier(); - double newRight = other.getNormalizedValue() * metric.getMultiplier(); + var newLeft = getNormalizedValue() * metric.getMultiplier(); + var newRight = other.getNormalizedValue() * metric.getMultiplier(); return new Distance(newLeft + newRight, metric); } @@ -169,7 +169,7 @@ public final class Distance implements Serializable, Comparable { return 1; } - double difference = this.getNormalizedValue() - that.getNormalizedValue(); + var difference = this.getNormalizedValue() - that.getNormalizedValue(); return difference == 0 ? 0 : difference > 0 ? 1 : -1; } @@ -181,7 +181,7 @@ public final class Distance implements Serializable, Comparable { @Override public String toString() { - StringBuilder builder = new StringBuilder(); + var builder = new StringBuilder(); builder.append(value); if (metric != Metrics.NEUTRAL) { @@ -210,12 +210,10 @@ public final class Distance implements Serializable, Comparable { return true; } - if (!(o instanceof Distance)) { + if (!(o instanceof Distance distance)) { return false; } - Distance distance = (Distance) o; - if (value != distance.value) { return false; } diff --git a/src/main/java/org/springframework/data/geo/GeoPage.java b/src/main/java/org/springframework/data/geo/GeoPage.java index 89f9cdcff..fa5b90e50 100644 --- a/src/main/java/org/springframework/data/geo/GeoPage.java +++ b/src/main/java/org/springframework/data/geo/GeoPage.java @@ -75,12 +75,10 @@ public class GeoPage extends PageImpl> { return true; } - if (!(obj instanceof GeoPage)) { + if (!(obj instanceof GeoPage that)) { return false; } - GeoPage that = (GeoPage) obj; - return super.equals(obj) && ObjectUtils.nullSafeEquals(this.averageDistance, that.averageDistance); } diff --git a/src/main/java/org/springframework/data/geo/GeoResult.java b/src/main/java/org/springframework/data/geo/GeoResult.java index c936a1bb6..07c87f640 100644 --- a/src/main/java/org/springframework/data/geo/GeoResult.java +++ b/src/main/java/org/springframework/data/geo/GeoResult.java @@ -62,12 +62,10 @@ public final class GeoResult implements Serializable { return true; } - if (!(o instanceof GeoResult)) { + if (!(o instanceof GeoResult geoResult)) { return false; } - GeoResult geoResult = (GeoResult) o; - if (!ObjectUtils.nullSafeEquals(content, geoResult.content)) { return false; } @@ -81,7 +79,7 @@ public final class GeoResult implements Serializable { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(content); + var result = ObjectUtils.nullSafeHashCode(content); result = 31 * result + ObjectUtils.nullSafeHashCode(distance); return result; } diff --git a/src/main/java/org/springframework/data/geo/GeoResults.java b/src/main/java/org/springframework/data/geo/GeoResults.java index 4559cb319..d3ff53581 100644 --- a/src/main/java/org/springframework/data/geo/GeoResults.java +++ b/src/main/java/org/springframework/data/geo/GeoResults.java @@ -115,12 +115,10 @@ public class GeoResults implements Iterable>, Serializable { return true; } - if (!(o instanceof GeoResults)) { + if (!(o instanceof GeoResults that)) { return false; } - GeoResults that = (GeoResults) o; - if (!ObjectUtils.nullSafeEquals(results, that.results)) { return false; } @@ -134,7 +132,7 @@ public class GeoResults implements Iterable>, Serializable { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(results); + var result = ObjectUtils.nullSafeHashCode(results); result = 31 * result + ObjectUtils.nullSafeHashCode(averageDistance); return result; } @@ -158,7 +156,7 @@ public class GeoResults implements Iterable>, Serializable { return new Distance(0, metric); } - double averageDistance = results.stream()// + var averageDistance = results.stream()// .mapToDouble(it -> it.getDistance().getValue())// .average().orElse(0); diff --git a/src/main/java/org/springframework/data/geo/Point.java b/src/main/java/org/springframework/data/geo/Point.java index 1e23fe8a0..b0df7ddd5 100644 --- a/src/main/java/org/springframework/data/geo/Point.java +++ b/src/main/java/org/springframework/data/geo/Point.java @@ -87,9 +87,9 @@ public class Point implements Serializable { @Override public int hashCode() { - int result = 1; + var result = 1; - long temp = Double.doubleToLongBits(x); + var temp = Double.doubleToLongBits(x); result = 31 * result + (int) (temp ^ temp >>> 32); temp = Double.doubleToLongBits(y); @@ -109,12 +109,10 @@ public class Point implements Serializable { return true; } - if (!(obj instanceof Point)) { + if (!(obj instanceof Point other)) { return false; } - Point other = (Point) obj; - if (Double.doubleToLongBits(x) != Double.doubleToLongBits(other.x)) { return false; } diff --git a/src/main/java/org/springframework/data/geo/Polygon.java b/src/main/java/org/springframework/data/geo/Polygon.java index 2afd4a55c..a01b617da 100644 --- a/src/main/java/org/springframework/data/geo/Polygon.java +++ b/src/main/java/org/springframework/data/geo/Polygon.java @@ -111,11 +111,10 @@ public class Polygon implements Iterable, Shape { return true; } - if (!(o instanceof Polygon)) { + if (!(o instanceof Polygon that)) { return false; } - Polygon that = (Polygon) o; return ObjectUtils.nullSafeEquals(points, that.points); } diff --git a/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java b/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java index 15e3c4f0c..e067b3f2f 100644 --- a/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java +++ b/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java @@ -94,7 +94,7 @@ public enum DistanceFormatter implements Converter, Formatter< */ private static Distance doConvert(String source) { - for (Entry metric : SUPPORTED_METRICS.entrySet()) { + for (var metric : SUPPORTED_METRICS.entrySet()) { if (source.endsWith(metric.getKey())) { return fromString(source, metric); } @@ -117,7 +117,7 @@ public enum DistanceFormatter implements Converter, Formatter< */ private static Distance fromString(String source, Entry metric) { - String amountString = source.substring(0, source.indexOf(metric.getKey())); + var amountString = source.substring(0, source.indexOf(metric.getKey())); try { return new Distance(Double.parseDouble(amountString), metric.getValue()); diff --git a/src/main/java/org/springframework/data/geo/format/PointFormatter.java b/src/main/java/org/springframework/data/geo/format/PointFormatter.java index 04707f851..ee30c2ebe 100644 --- a/src/main/java/org/springframework/data/geo/format/PointFormatter.java +++ b/src/main/java/org/springframework/data/geo/format/PointFormatter.java @@ -45,7 +45,7 @@ public enum PointFormatter implements Converter, Formatter @Override public Point convert(String source) { - String[] parts = source.split(","); + var parts = source.split(","); if (parts.length != 2) { throw new IllegalArgumentException(String.format(INVALID_FORMAT, source)); @@ -53,8 +53,8 @@ public enum PointFormatter implements Converter, Formatter try { - double latitude = Double.parseDouble(parts[0]); - double longitude = Double.parseDouble(parts[1]); + var latitude = Double.parseDouble(parts[0]); + var longitude = Double.parseDouble(parts[1]); return new Point(longitude, latitude); diff --git a/src/main/java/org/springframework/data/history/AnnotationRevisionMetadata.java b/src/main/java/org/springframework/data/history/AnnotationRevisionMetadata.java index 3d7635122..f615ade57 100755 --- a/src/main/java/org/springframework/data/history/AnnotationRevisionMetadata.java +++ b/src/main/java/org/springframework/data/history/AnnotationRevisionMetadata.java @@ -118,7 +118,7 @@ public class AnnotationRevisionMetadata> implem return Lazy.of(() -> { - AnnotationDetectionFieldCallback callback = new AnnotationDetectionFieldCallback(annotationType); + var callback = new AnnotationDetectionFieldCallback(annotationType); ReflectionUtils.doWithFields(entity.getClass(), callback); return Optional.ofNullable(callback.getValue(entity)); }); @@ -138,8 +138,8 @@ public class AnnotationRevisionMetadata> implem return Instant.ofEpochMilli((Long) timestamp); } - if (Date.class.isInstance(timestamp)) { - return Date.class.cast(timestamp).toInstant(); + if (timestamp instanceof Date) { + return ((Date) timestamp).toInstant(); } throw new IllegalArgumentException(String.format("Can't convert %s to Instant!", timestamp)); diff --git a/src/main/java/org/springframework/data/history/Revision.java b/src/main/java/org/springframework/data/history/Revision.java index 66d29a79b..790fc1eb2 100755 --- a/src/main/java/org/springframework/data/history/Revision.java +++ b/src/main/java/org/springframework/data/history/Revision.java @@ -139,12 +139,10 @@ public final class Revision, T> implements Comp return true; } - if (!(o instanceof Revision)) { + if (!(o instanceof Revision revision)) { return false; } - Revision revision = (Revision) o; - if (!ObjectUtils.nullSafeEquals(metadata, revision.metadata)) { return false; } @@ -158,7 +156,7 @@ public final class Revision, T> implements Comp */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(metadata); + var result = ObjectUtils.nullSafeHashCode(metadata); result = 31 * result + ObjectUtils.nullSafeHashCode(entity); return result; } diff --git a/src/main/java/org/springframework/data/history/RevisionSort.java b/src/main/java/org/springframework/data/history/RevisionSort.java index 7963d10ae..b0f8f54e4 100644 --- a/src/main/java/org/springframework/data/history/RevisionSort.java +++ b/src/main/java/org/springframework/data/history/RevisionSort.java @@ -76,7 +76,7 @@ public class RevisionSort extends Sort { Assert.notNull(sort, "Sort must not be null!"); - Order order = sort.getOrderFor(PROPERTY); + var order = sort.getOrderFor(PROPERTY); return order == null ? Direction.ASC : order.getDirection(); } } diff --git a/src/main/java/org/springframework/data/history/Revisions.java b/src/main/java/org/springframework/data/history/Revisions.java index f0c3c106c..466757bdd 100644 --- a/src/main/java/org/springframework/data/history/Revisions.java +++ b/src/main/java/org/springframework/data/history/Revisions.java @@ -89,7 +89,7 @@ public class Revisions, T> implements Streamabl * @return */ public Revision getLatestRevision() { - int index = latestLast ? revisions.size() - 1 : 0; + var index = latestLast ? revisions.size() - 1 : 0; return revisions.get(index); } diff --git a/src/main/java/org/springframework/data/mapping/AccessOptions.java b/src/main/java/org/springframework/data/mapping/AccessOptions.java index 1577a94d3..f32ab40d9 100644 --- a/src/main/java/org/springframework/data/mapping/AccessOptions.java +++ b/src/main/java/org/springframework/data/mapping/AccessOptions.java @@ -186,7 +186,7 @@ public class AccessOptions { Assert.isTrue(type.isAssignableFrom(property.getType()), () -> String .format("Cannot register a property handler for %s on a property of type %s!", type, property.getType())); - Function caster = it -> type.cast(it); + var caster = (Function) it -> type.cast(it); return registerHandler(property, caster.andThen(handler)); } @@ -201,7 +201,7 @@ public class AccessOptions { @Nullable Object postProcess(PersistentProperty property, @Nullable Object value) { - Function handler = handlers.get(property); + var handler = handlers.get(property); return handler == null ? value : handler.apply(value); } diff --git a/src/main/java/org/springframework/data/mapping/Alias.java b/src/main/java/org/springframework/data/mapping/Alias.java index 35c5eac6f..0dbfe15d9 100644 --- a/src/main/java/org/springframework/data/mapping/Alias.java +++ b/src/main/java/org/springframework/data/mapping/Alias.java @@ -158,11 +158,10 @@ public final class Alias { return true; } - if (!(o instanceof Alias)) { + if (!(o instanceof Alias alias)) { return false; } - Alias alias = (Alias) o; return ObjectUtils.nullSafeEquals(value, alias.value); } diff --git a/src/main/java/org/springframework/data/mapping/IdentifierAccessor.java b/src/main/java/org/springframework/data/mapping/IdentifierAccessor.java index 105470bc0..9c1c2172e 100644 --- a/src/main/java/org/springframework/data/mapping/IdentifierAccessor.java +++ b/src/main/java/org/springframework/data/mapping/IdentifierAccessor.java @@ -45,7 +45,7 @@ public interface IdentifierAccessor { */ default Object getRequiredIdentifier() { - Object identifier = getIdentifier(); + var identifier = getIdentifier(); if (identifier != null) { return identifier; diff --git a/src/main/java/org/springframework/data/mapping/PersistentEntity.java b/src/main/java/org/springframework/data/mapping/PersistentEntity.java index 833ee40b7..b19b7ff0e 100644 --- a/src/main/java/org/springframework/data/mapping/PersistentEntity.java +++ b/src/main/java/org/springframework/data/mapping/PersistentEntity.java @@ -97,7 +97,7 @@ public interface PersistentEntity> extends It */ default P getRequiredIdProperty() { - P property = getIdProperty(); + var property = getIdProperty(); if (property != null) { return property; @@ -125,7 +125,7 @@ public interface PersistentEntity> extends It */ default P getRequiredVersionProperty() { - P property = getVersionProperty(); + var property = getVersionProperty(); if (property != null) { return property; @@ -152,7 +152,7 @@ public interface PersistentEntity> extends It */ default P getRequiredPersistentProperty(String name) { - P property = getPersistentProperty(name); + var property = getPersistentProperty(name); if (property != null) { return property; @@ -171,7 +171,7 @@ public interface PersistentEntity> extends It @Nullable default P getPersistentProperty(Class annotationType) { - Iterator

it = getPersistentProperties(annotationType).iterator(); + var it = getPersistentProperties(annotationType).iterator(); return it.hasNext() ? it.next() : null; } @@ -277,7 +277,7 @@ public interface PersistentEntity> extends It */ default A getRequiredAnnotation(Class annotationType) throws IllegalStateException { - A annotation = findAnnotation(annotationType); + var annotation = findAnnotation(annotationType); if (annotation != null) { return annotation; diff --git a/src/main/java/org/springframework/data/mapping/PersistentProperty.java b/src/main/java/org/springframework/data/mapping/PersistentProperty.java index af15f638e..ce0fbffe6 100644 --- a/src/main/java/org/springframework/data/mapping/PersistentProperty.java +++ b/src/main/java/org/springframework/data/mapping/PersistentProperty.java @@ -85,7 +85,7 @@ public interface PersistentProperty

> { default Method getRequiredGetter() { - Method getter = getGetter(); + var getter = getGetter(); if (getter == null) { throw new IllegalArgumentException(String.format("No getter available for persistent property %s!", this)); @@ -105,7 +105,7 @@ public interface PersistentProperty

> { default Method getRequiredSetter() { - Method setter = getSetter(); + var setter = getSetter(); if (setter == null) { throw new IllegalArgumentException(String.format("No setter available for persistent property %s!", this)); @@ -143,7 +143,7 @@ public interface PersistentProperty

> { default Method getRequiredWither() { - Method wither = getWither(); + var wither = getWither(); if (wither == null) { throw new IllegalArgumentException(String.format("No wither available for persistent property %s!", this)); @@ -157,7 +157,7 @@ public interface PersistentProperty

> { default Field getRequiredField() { - Field field = getField(); + var field = getField(); if (field == null) { throw new IllegalArgumentException(String.format("No field backing persistent property %s!", this)); @@ -186,7 +186,7 @@ public interface PersistentProperty

> { */ default Association

getRequiredAssociation() { - Association

association = getAssociation(); + var association = getAssociation(); if (association != null) { return association; @@ -332,7 +332,7 @@ public interface PersistentProperty

> { */ default A getRequiredAnnotation(Class annotationType) throws IllegalStateException { - A annotation = findAnnotation(annotationType); + var annotation = findAnnotation(annotationType); if (annotation != null) { return annotation; diff --git a/src/main/java/org/springframework/data/mapping/PersistentPropertyAccessor.java b/src/main/java/org/springframework/data/mapping/PersistentPropertyAccessor.java index 89c6c5db9..e4c7b8b74 100644 --- a/src/main/java/org/springframework/data/mapping/PersistentPropertyAccessor.java +++ b/src/main/java/org/springframework/data/mapping/PersistentPropertyAccessor.java @@ -61,26 +61,26 @@ public interface PersistentPropertyAccessor { Assert.notNull(path, "PersistentPropertyPath must not be null!"); Assert.isTrue(!path.isEmpty(), "PersistentPropertyPath must not be empty!"); - PersistentPropertyPath> parentPath = path.getParentPath(); - PersistentProperty leafProperty = path.getRequiredLeafProperty(); - PersistentProperty parentProperty = parentPath.isEmpty() ? null : parentPath.getLeafProperty(); + var parentPath = path.getParentPath(); + var leafProperty = path.getRequiredLeafProperty(); + var parentProperty = parentPath.isEmpty() ? null : parentPath.getLeafProperty(); if (parentProperty != null && (parentProperty.isCollectionLike() || parentProperty.isMap())) { throw new MappingException( String.format("Cannot traverse collection or map intermediate %s", parentPath.toDotPath())); } - Object parent = parentPath.isEmpty() ? getBean() : getProperty(parentPath); + var parent = parentPath.isEmpty() ? getBean() : getProperty(parentPath); if (parent == null) { - String nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; + var nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; throw new MappingException( String.format(nullIntermediateMessage, parentProperty, path.toDotPath(), getBean().getClass().getName())); } - PersistentPropertyAccessor accessor = parent == getBean() // + var accessor = parent == getBean() // ? this // : leafProperty.getOwner().getPropertyAccessor(parent); @@ -90,7 +90,7 @@ public interface PersistentPropertyAccessor { return; } - Object bean = accessor.getBean(); + var bean = accessor.getBean(); if (bean != parent) { setProperty(parentPath, bean); @@ -140,7 +140,7 @@ public interface PersistentPropertyAccessor { default Object getProperty(PersistentPropertyPath> path, TraversalContext context) { Object bean = getBean(); - Object current = bean; + var current = bean; if (path.isEmpty()) { return bean; @@ -150,14 +150,14 @@ public interface PersistentPropertyAccessor { if (current == null) { - String nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; + var nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; throw new MappingException( String.format(nullIntermediateMessage, property, path.toDotPath(), bean.getClass().getName())); } - PersistentEntity> entity = property.getOwner(); - PersistentPropertyAccessor accessor = entity.getPropertyAccessor(current); + var entity = property.getOwner(); + var accessor = entity.getPropertyAccessor(current); current = context.postProcess(property, accessor.getProperty(property)); } diff --git a/src/main/java/org/springframework/data/mapping/PersistentPropertyPath.java b/src/main/java/org/springframework/data/mapping/PersistentPropertyPath.java index 2d739251f..ba735ed38 100644 --- a/src/main/java/org/springframework/data/mapping/PersistentPropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/PersistentPropertyPath.java @@ -76,7 +76,7 @@ public interface PersistentPropertyPath

> extends default P getRequiredLeafProperty() { - P property = getLeafProperty(); + var property = getLeafProperty(); if (property == null) { throw new IllegalStateException("No leaf property found!"); diff --git a/src/main/java/org/springframework/data/mapping/PreferredConstructor.java b/src/main/java/org/springframework/data/mapping/PreferredConstructor.java index 8ac155a56..c0d213653 100644 --- a/src/main/java/org/springframework/data/mapping/PreferredConstructor.java +++ b/src/main/java/org/springframework/data/mapping/PreferredConstructor.java @@ -131,13 +131,13 @@ public class PreferredConstructor> { Assert.notNull(property, "Property must not be null!"); - Boolean cached = isPropertyParameterCache.get(property); + var cached = isPropertyParameterCache.get(property); if (cached != null) { return cached; } - boolean result = false; + var result = false; for (Parameter parameter : parameters) { if (parameter.maps(property)) { result = true; @@ -214,7 +214,7 @@ public class PreferredConstructor> { throw new IllegalStateException(); } - Class owningType = entity.getType(); + var owningType = entity.getType(); return owningType.isMemberClass() && type.getType().equals(owningType.getEnclosingClass()); }); @@ -297,12 +297,10 @@ public class PreferredConstructor> { return true; } - if (!(o instanceof Parameter)) { + if (!(o instanceof Parameter parameter)) { return false; } - Parameter parameter = (Parameter) o; - if (!ObjectUtils.nullSafeEquals(name, parameter.name)) { return false; } @@ -324,7 +322,7 @@ public class PreferredConstructor> { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(name); + var result = ObjectUtils.nullSafeHashCode(name); result = 31 * result + ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(key); result = 31 * result + ObjectUtils.nullSafeHashCode(entity); @@ -339,10 +337,10 @@ public class PreferredConstructor> { */ boolean maps(PersistentProperty property) { - PersistentEntity entity = this.entity; - String name = this.name; + var entity = this.entity; + var name = this.name; - P referencedProperty = entity == null ? null : name == null ? null : entity.getPersistentProperty(name); + var referencedProperty = entity == null ? null : name == null ? null : entity.getPersistentProperty(name); return property.equals(referencedProperty); } diff --git a/src/main/java/org/springframework/data/mapping/PropertyPath.java b/src/main/java/org/springframework/data/mapping/PropertyPath.java index 12d94a611..7b87f8bb3 100644 --- a/src/main/java/org/springframework/data/mapping/PropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/PropertyPath.java @@ -22,7 +22,6 @@ import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Stack; -import java.util.regex.Matcher; import java.util.regex.Pattern; import org.springframework.data.util.ClassTypeInformation; @@ -83,8 +82,8 @@ public class PropertyPath implements Streamable { Assert.notNull(owningType, "Owning type must not be null!"); Assert.notNull(base, "Previously found properties must not be null!"); - String propertyName = Introspector.decapitalize(name); - TypeInformation propertyType = owningType.getProperty(propertyName); + var propertyName = Introspector.decapitalize(name); + var propertyType = owningType.getProperty(propertyName); if (propertyType == null) { throw new PropertyReferenceException(propertyName, owningType, base); @@ -123,7 +122,7 @@ public class PropertyPath implements Streamable { */ public PropertyPath getLeafProperty() { - PropertyPath result = this; + var result = this; while (result.hasNext()) { result = result.requiredNext(); @@ -209,7 +208,7 @@ public class PropertyPath implements Streamable { Assert.hasText(path, "Path must not be null or empty!"); - String lookup = toDotPath().concat(".").concat(path); + var lookup = toDotPath().concat(".").concat(path); return PropertyPath.from(lookup, owningType); } @@ -231,7 +230,7 @@ public class PropertyPath implements Streamable { @Nullable public PropertyPath next() { - PropertyPath result = current; + var result = current; if (result == null) { return null; @@ -258,12 +257,10 @@ public class PropertyPath implements Streamable { return true; } - if (!(o instanceof PropertyPath)) { + if (!(o instanceof PropertyPath that)) { return false; } - PropertyPath that = (PropertyPath) o; - if (isCollection != that.isCollection) { return false; } @@ -293,7 +290,7 @@ public class PropertyPath implements Streamable { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(owningType); + var result = ObjectUtils.nullSafeHashCode(owningType); result = 31 * result + ObjectUtils.nullSafeHashCode(name); result = 31 * result + ObjectUtils.nullSafeHashCode(typeInformation); result = 31 * result + ObjectUtils.nullSafeHashCode(actualTypeInformation); @@ -310,7 +307,7 @@ public class PropertyPath implements Streamable { */ private PropertyPath requiredNext() { - PropertyPath result = next; + var result = next; if (result == null) { throw new IllegalStateException( @@ -349,17 +346,17 @@ public class PropertyPath implements Streamable { List iteratorSource = new ArrayList<>(); - Matcher matcher = isQuoted(it.path) ? SPLITTER_FOR_QUOTED.matcher(it.path.replace("\\Q", "").replace("\\E", "")) + var matcher = isQuoted(it.path) ? SPLITTER_FOR_QUOTED.matcher(it.path.replace("\\Q", "").replace("\\E", "")) : SPLITTER.matcher("_" + it.path); while (matcher.find()) { iteratorSource.add(matcher.group(1)); } - Iterator parts = iteratorSource.iterator(); + var parts = iteratorSource.iterator(); PropertyPath result = null; - Stack current = new Stack<>(); + var current = new Stack(); while (parts.hasNext()) { if (result == null) { @@ -392,9 +389,9 @@ public class PropertyPath implements Streamable { */ private static PropertyPath create(String source, Stack base) { - PropertyPath previous = base.peek(); + var previous = base.peek(); - PropertyPath propertyPath = create(source, previous.typeInformation.getRequiredActualType(), base); + var propertyPath = create(source, previous.typeInformation.getRequiredActualType(), base); previous.next = propertyPath; return propertyPath; } @@ -458,13 +455,13 @@ public class PropertyPath implements Streamable { exception = e; } - Matcher matcher = NESTED_PROPERTY_PATTERN.matcher(source); + var matcher = NESTED_PROPERTY_PATTERN.matcher(source); if (matcher.find() && matcher.start() != 0) { - int position = matcher.start(); - String head = source.substring(0, position); - String tail = source.substring(position); + var position = matcher.start(); + var head = source.substring(0, position); + var tail = source.substring(position); try { return create(head, type, tail + addTail, base); @@ -518,12 +515,10 @@ public class PropertyPath implements Streamable { return true; } - if (!(o instanceof Key)) { + if (!(o instanceof Key key)) { return false; } - Key key = (Key) o; - if (!ObjectUtils.nullSafeEquals(type, key.type)) { return false; } @@ -537,7 +532,7 @@ public class PropertyPath implements Streamable { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(type); + var result = ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(path); return result; } diff --git a/src/main/java/org/springframework/data/mapping/PropertyReferenceException.java b/src/main/java/org/springframework/data/mapping/PropertyReferenceException.java index 42ef140d7..a97a032c5 100644 --- a/src/main/java/org/springframework/data/mapping/PropertyReferenceException.java +++ b/src/main/java/org/springframework/data/mapping/PropertyReferenceException.java @@ -99,12 +99,12 @@ public class PropertyReferenceException extends RuntimeException { @Override public String getMessage() { - StringBuilder builder = new StringBuilder( + var builder = new StringBuilder( String.format(ERROR_TEMPLATE, propertyName, type.getType().getSimpleName())); - Collection potentialMatches = getPropertyMatches(); + var potentialMatches = getPropertyMatches(); if (!potentialMatches.isEmpty()) { - String matches = StringUtils.collectionToDelimitedString(potentialMatches, ",", "'", "'"); + var matches = StringUtils.collectionToDelimitedString(potentialMatches, ",", "'", "'"); builder.append(String.format(HINTS_TEMPLATE, matches)); } diff --git a/src/main/java/org/springframework/data/mapping/TargetAwareIdentifierAccessor.java b/src/main/java/org/springframework/data/mapping/TargetAwareIdentifierAccessor.java index b237415c2..5226bbb32 100644 --- a/src/main/java/org/springframework/data/mapping/TargetAwareIdentifierAccessor.java +++ b/src/main/java/org/springframework/data/mapping/TargetAwareIdentifierAccessor.java @@ -39,7 +39,7 @@ public abstract class TargetAwareIdentifierAccessor implements IdentifierAccesso @Override public Object getRequiredIdentifier() { - Object identifier = getIdentifier(); + var identifier = getIdentifier(); if (identifier != null) { return identifier; diff --git a/src/main/java/org/springframework/data/mapping/TraversalContext.java b/src/main/java/org/springframework/data/mapping/TraversalContext.java index 690a1a198..837b05be7 100644 --- a/src/main/java/org/springframework/data/mapping/TraversalContext.java +++ b/src/main/java/org/springframework/data/mapping/TraversalContext.java @@ -124,7 +124,7 @@ public class TraversalContext { Assert.isTrue(type.isAssignableFrom(property.getType()), () -> String .format("Cannot register a property handler for %s on a property of type %s!", type, property.getType())); - Function caster = it -> type.cast(it); + var caster = (Function) it -> type.cast(it); return registerHandler(property, caster.andThen(handler)); } @@ -139,7 +139,7 @@ public class TraversalContext { @Nullable Object postProcess(PersistentProperty property, @Nullable Object value) { - Function handler = handlers.get(property); + var handler = handlers.get(property); return handler == null ? value : handler.apply(value); } diff --git a/src/main/java/org/springframework/data/mapping/callback/DefaultEntityCallbacks.java b/src/main/java/org/springframework/data/mapping/callback/DefaultEntityCallbacks.java index 8fe06ae96..0da26e157 100644 --- a/src/main/java/org/springframework/data/mapping/callback/DefaultEntityCallbacks.java +++ b/src/main/java/org/springframework/data/mapping/callback/DefaultEntityCallbacks.java @@ -19,8 +19,8 @@ import java.lang.reflect.Method; import java.util.Map; import java.util.function.BiFunction; -import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.beans.factory.BeanFactory; import org.springframework.core.ResolvableType; import org.springframework.util.Assert; @@ -68,22 +68,22 @@ class DefaultEntityCallbacks implements EntityCallbacks { Assert.notNull(entity, "Entity must not be null!"); - Class entityType = (Class) (entity != null ? ClassUtils.getUserClass(entity.getClass()) + var entityType = (Class) (entity != null ? ClassUtils.getUserClass(entity.getClass()) : callbackDiscoverer.resolveDeclaredEntityType(callbackType).getRawClass()); - Method callbackMethod = callbackMethodCache.computeIfAbsent(callbackType, it -> { + var callbackMethod = callbackMethodCache.computeIfAbsent(callbackType, it -> { - Method method = EntityCallbackDiscoverer.lookupCallbackMethod(it, entityType, args); + var method = EntityCallbackDiscoverer.lookupCallbackMethod(it, entityType, args); ReflectionUtils.makeAccessible(method); return method; }); - T value = entity; + var value = entity; - for (EntityCallback callback : callbackDiscoverer.getEntityCallbacks(entityType, + for (var callback : callbackDiscoverer.getEntityCallbacks(entityType, ResolvableType.forClass(callbackType))) { - BiFunction, T, Object> callbackFunction = EntityCallbackDiscoverer + var callbackFunction = EntityCallbackDiscoverer .computeCallbackInvokerFunction(callback, callbackMethod, args); value = callbackInvoker.invokeCallback(callback, value, callbackFunction); } @@ -100,7 +100,7 @@ class DefaultEntityCallbacks implements EntityCallbacks { this.callbackDiscoverer.addEntityCallback(callback); } - class SimpleEntityCallbackInvoker implements org.springframework.data.mapping.callback.EntityCallbackInvoker { + static class SimpleEntityCallbackInvoker implements org.springframework.data.mapping.callback.EntityCallbackInvoker { @Override public T invokeCallback(EntityCallback callback, T entity, @@ -108,7 +108,7 @@ class DefaultEntityCallbacks implements EntityCallbacks { try { - Object value = callbackInvokerFunction.apply(callback, entity); + var value = callbackInvokerFunction.apply(callback, entity); if (value != null) { return (T) value; @@ -119,12 +119,12 @@ class DefaultEntityCallbacks implements EntityCallbacks { } catch (ClassCastException ex) { - String msg = ex.getMessage(); + var msg = ex.getMessage(); if (msg == null || EntityCallbackInvoker.matchesClassCastMessage(msg, entity.getClass())) { // Possibly a lambda-defined listener which we could not resolve the generic event type for // -> let's suppress the exception and just log a debug message. - Log logger = LogFactory.getLog(getClass()); + var logger = LogFactory.getLog(getClass()); if (logger.isDebugEnabled()) { logger.debug("Non-matching callback type for entity callback: " + callback, ex); } diff --git a/src/main/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacks.java b/src/main/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacks.java index cbd53815c..0d288b6cb 100644 --- a/src/main/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacks.java +++ b/src/main/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacks.java @@ -21,9 +21,9 @@ import java.lang.reflect.Method; import java.util.Map; import java.util.function.BiFunction; -import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.reactivestreams.Publisher; + import org.springframework.beans.factory.BeanFactory; import org.springframework.core.ResolvableType; import org.springframework.util.Assert; @@ -69,22 +69,22 @@ class DefaultReactiveEntityCallbacks implements ReactiveEntityCallbacks { Assert.notNull(entity, "Entity must not be null!"); - Class entityType = (Class) (entity != null ? ClassUtils.getUserClass(entity.getClass()) + var entityType = (Class) (entity != null ? ClassUtils.getUserClass(entity.getClass()) : callbackDiscoverer.resolveDeclaredEntityType(callbackType).getRawClass()); - Method callbackMethod = callbackMethodCache.computeIfAbsent(callbackType, it -> { + var callbackMethod = callbackMethodCache.computeIfAbsent(callbackType, it -> { - Method method = EntityCallbackDiscoverer.lookupCallbackMethod(it, entityType, args); + var method = EntityCallbackDiscoverer.lookupCallbackMethod(it, entityType, args); ReflectionUtils.makeAccessible(method); return method; }); - Mono deferredCallbackChain = Mono.just(entity); + var deferredCallbackChain = Mono.just(entity); - for (EntityCallback callback : callbackDiscoverer.getEntityCallbacks(entityType, + for (var callback : callbackDiscoverer.getEntityCallbacks(entityType, ResolvableType.forClass(callbackType))) { - BiFunction, T, Object> callbackFunction = EntityCallbackDiscoverer + var callbackFunction = EntityCallbackDiscoverer .computeCallbackInvokerFunction(callback, callbackMethod, args); deferredCallbackChain = deferredCallbackChain @@ -111,7 +111,7 @@ class DefaultReactiveEntityCallbacks implements ReactiveEntityCallbacks { try { - Object value = callbackInvokerFunction.apply(callback, entity); + var value = callbackInvokerFunction.apply(callback, entity); if (value != null) { return value instanceof Publisher ? Mono.from((Publisher) value) : Mono.just((T) value); @@ -121,12 +121,12 @@ class DefaultReactiveEntityCallbacks implements ReactiveEntityCallbacks { String.format("Callback invocation on %s returned null value for %s", callback.getClass(), entity)); } catch (ClassCastException ex) { - String msg = ex.getMessage(); + var msg = ex.getMessage(); if (msg == null || EntityCallbackInvoker.matchesClassCastMessage(msg, entity.getClass())) { // Possibly a lambda-defined listener which we could not resolve the generic event type for // -> let's suppress the exception and just log a debug message. - Log logger = LogFactory.getLog(getClass()); + var logger = LogFactory.getLog(getClass()); if (logger.isDebugEnabled()) { logger.debug("Non-matching callback type for entity callback: " + callback, ex); } diff --git a/src/main/java/org/springframework/data/mapping/callback/EntityCallbackDiscoverer.java b/src/main/java/org/springframework/data/mapping/callback/EntityCallbackDiscoverer.java index 8d85999d1..616598ca5 100644 --- a/src/main/java/org/springframework/data/mapping/callback/EntityCallbackDiscoverer.java +++ b/src/main/java/org/springframework/data/mapping/callback/EntityCallbackDiscoverer.java @@ -79,7 +79,7 @@ class EntityCallbackDiscoverer { // Explicitly remove target for a proxy, if registered already, // in order to avoid double invocations of the same callback. - Object singletonTarget = AopProxyUtils.getSingletonTarget(callback); + var singletonTarget = AopProxyUtils.getSingletonTarget(callback); if (singletonTarget instanceof EntityCallback) { this.defaultRetriever.entityCallbacks.remove(singletonTarget); } @@ -134,10 +134,10 @@ class EntityCallbackDiscoverer { Collection> getEntityCallbacks(Class entity, ResolvableType callbackType) { Class sourceType = entity; - CallbackCacheKey cacheKey = new CallbackCacheKey(callbackType, sourceType); + var cacheKey = new CallbackCacheKey(callbackType, sourceType); // Quick check for existing entry on ConcurrentHashMap... - CallbackRetriever retriever = this.retrieverCache.get(cacheKey); + var retriever = this.retrieverCache.get(cacheKey); if (retriever != null) { return (Collection>) (Collection) retriever.getEntityCallbacks(); } @@ -152,7 +152,7 @@ class EntityCallbackDiscoverer { return (Collection>) (Collection) retriever.getEntityCallbacks(); } retriever = new CallbackRetriever(true); - Collection> callbacks = retrieveEntityCallbacks(ResolvableType.forClass(sourceType), + var callbacks = retrieveEntityCallbacks(ResolvableType.forClass(sourceType), callbackType, retriever); this.retrieverCache.put(cacheKey, retriever); return (Collection>) (Collection) callbacks; @@ -166,7 +166,7 @@ class EntityCallbackDiscoverer { @Nullable ResolvableType resolveDeclaredEntityType(Class callbackType) { - ResolvableType eventType = entityTypeCache.get(callbackType); + var eventType = entityTypeCache.get(callbackType); if (eventType == null) { eventType = ResolvableType.forClass(callbackType).as(EntityCallback.class).getGeneric(); @@ -196,7 +196,7 @@ class EntityCallbackDiscoverer { callbackBeans = new LinkedHashSet<>(this.defaultRetriever.entityCallbackBeans); } - for (EntityCallback callback : callbacks) { + for (var callback : callbacks) { if (supportsEvent(callback, entityType, callbackType)) { if (retriever != null) { retriever.getEntityCallbacks().add(callback); @@ -206,10 +206,10 @@ class EntityCallbackDiscoverer { } if (!callbackBeans.isEmpty()) { - BeanFactory beanFactory = getRequiredBeanFactory(); - for (String callbackBeanName : callbackBeans) { + var beanFactory = getRequiredBeanFactory(); + for (var callbackBeanName : callbackBeans) { try { - Class callbackImplType = beanFactory.getType(callbackBeanName); + var callbackImplType = beanFactory.getType(callbackBeanName); if (callbackImplType == null || supportsEvent(callbackImplType, entityType)) { EntityCallback callback = beanFactory.getBean(callbackBeanName, EntityCallback.class); if (!allCallbacks.contains(callback) && supportsEvent(callback, entityType, callbackType)) { @@ -253,7 +253,7 @@ class EntityCallbackDiscoverer { */ protected boolean supportsEvent(Class callback, ResolvableType entityType) { - ResolvableType declaredEventType = resolveDeclaredEntityType(callback); + var declaredEventType = resolveDeclaredEntityType(callback); return (declaredEventType == null || declaredEventType.isAssignableFrom(entityType)); } @@ -291,8 +291,7 @@ class EntityCallbackDiscoverer { this.beanFactory = beanFactory; - if (beanFactory instanceof ConfigurableBeanFactory) { - ConfigurableBeanFactory cbf = (ConfigurableBeanFactory) beanFactory; + if (beanFactory instanceof ConfigurableBeanFactory cbf) { if (this.beanClassLoader == null) { this.beanClassLoader = cbf.getBeanClassLoader(); } @@ -332,7 +331,7 @@ class EntityCallbackDiscoverer { return (entityCallback, entity) -> { - Object[] invocationArgs = new Object[args.length + 1]; + var invocationArgs = new Object[args.length + 1]; invocationArgs[0] = entity; if (args.length > 0) { System.arraycopy(args, 0, invocationArgs, 1, args.length); @@ -372,8 +371,8 @@ class EntityCallbackDiscoverer { allCallbacks.addAll(this.entityCallbacks); if (!this.entityCallbackBeans.isEmpty()) { - BeanFactory beanFactory = getRequiredBeanFactory(); - for (String callbackBeanName : this.entityCallbackBeans) { + var beanFactory = getRequiredBeanFactory(); + for (var callbackBeanName : this.entityCallbackBeans) { try { EntityCallback callback = beanFactory.getBean(callbackBeanName, EntityCallback.class); if (this.preFiltered || !allCallbacks.contains(callback)) { @@ -427,7 +426,7 @@ class EntityCallbackDiscoverer { return true; } - CallbackCacheKey otherKey = (CallbackCacheKey) other; + var otherKey = (CallbackCacheKey) other; return (this.callbackType.equals(otherKey.callbackType) && ObjectUtils.nullSafeEquals(this.entityType, otherKey.entityType)); diff --git a/src/main/java/org/springframework/data/mapping/callback/EntityCallbackInvoker.java b/src/main/java/org/springframework/data/mapping/callback/EntityCallbackInvoker.java index 18e7970ef..a70c76aa7 100644 --- a/src/main/java/org/springframework/data/mapping/callback/EntityCallbackInvoker.java +++ b/src/main/java/org/springframework/data/mapping/callback/EntityCallbackInvoker.java @@ -48,7 +48,7 @@ interface EntityCallbackInvoker { } // On Java 9, the message used to contain the module name: "java.base/java.lang.String cannot be cast..." - int moduleSeparatorIndex = classCastMessage.indexOf('/'); + var moduleSeparatorIndex = classCastMessage.indexOf('/'); if (moduleSeparatorIndex != -1 && classCastMessage.startsWith(eventClass.getName(), moduleSeparatorIndex + 1)) { return true; } diff --git a/src/main/java/org/springframework/data/mapping/callback/EntityCallbacks.java b/src/main/java/org/springframework/data/mapping/callback/EntityCallbacks.java index 6faabe92b..ee9e07850 100644 --- a/src/main/java/org/springframework/data/mapping/callback/EntityCallbacks.java +++ b/src/main/java/org/springframework/data/mapping/callback/EntityCallbacks.java @@ -55,8 +55,8 @@ public interface EntityCallbacks { */ static EntityCallbacks create(EntityCallback... callbacks) { - EntityCallbacks entityCallbacks = create(); - for (EntityCallback callback : callbacks) { + var entityCallbacks = create(); + for (var callback : callbacks) { entityCallbacks.addEntityCallback(callback); } return entityCallbacks; diff --git a/src/main/java/org/springframework/data/mapping/callback/ReactiveEntityCallbacks.java b/src/main/java/org/springframework/data/mapping/callback/ReactiveEntityCallbacks.java index d70eb8546..a4974e544 100644 --- a/src/main/java/org/springframework/data/mapping/callback/ReactiveEntityCallbacks.java +++ b/src/main/java/org/springframework/data/mapping/callback/ReactiveEntityCallbacks.java @@ -58,8 +58,8 @@ public interface ReactiveEntityCallbacks { */ static ReactiveEntityCallbacks create(EntityCallback... callbacks) { - ReactiveEntityCallbacks entityCallbacks = create(); - for (EntityCallback callback : callbacks) { + var entityCallbacks = create(); + for (var callback : callbacks) { entityCallbacks.addEntityCallback(callback); } return entityCallbacks; diff --git a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java index a186260af..5518d22b6 100644 --- a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java +++ b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java @@ -17,7 +17,6 @@ package org.springframework.data.mapping.context; import java.beans.PropertyDescriptor; import java.lang.reflect.Field; -import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.util.Collection; import java.util.Collections; @@ -33,7 +32,6 @@ import java.util.stream.Collectors; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; - import org.springframework.beans.BeanUtils; import org.springframework.beans.BeansException; import org.springframework.beans.factory.InitializingBean; @@ -114,8 +112,8 @@ public abstract class AbstractMappingContext(this); - EntityInstantiators instantiators = new EntityInstantiators(); - PersistentPropertyAccessorFactory accessorFactory = NativeDetector.inNativeImage() + var instantiators = new EntityInstantiators(); + var accessorFactory = NativeDetector.inNativeImage() ? BeanWrapperPropertyAccessorFactory.INSTANCE : new ClassGeneratingPropertyAccessorFactory(); @@ -218,7 +216,7 @@ public abstract class AbstractMappingContext entity = persistentEntities.get(ClassTypeInformation.from(type)); + var entity = persistentEntities.get(ClassTypeInformation.from(type)); return entity == null ? false : entity.isPresent(); } @@ -237,7 +235,7 @@ public abstract class AbstractMappingContext entity = persistentEntities.get(type); + var entity = persistentEntities.get(type); if (entity != null) { return entity.orElse(null); @@ -280,7 +278,7 @@ public abstract class AbstractMappingContext typeInfo = persistentProperty.getTypeInformation(); + var typeInfo = persistentProperty.getTypeInformation(); return getPersistentEntity(typeInfo.getRequiredActualType()); } @@ -355,7 +353,7 @@ public abstract class AbstractMappingContext persistentEntity = persistentEntities.get(typeInformation); + var persistentEntity = persistentEntities.get(typeInformation); if (persistentEntity != null) { return persistentEntity; @@ -400,9 +398,9 @@ public abstract class AbstractMappingContext type = userTypeInformation.getType(); + var type = userTypeInformation.getType(); - E entity = createPersistentEntity(userTypeInformation); + var entity = createPersistentEntity(userTypeInformation); entity.setEvaluationContextProvider(evaluationContextProvider); // Eagerly cache the entity as we might have to find it during recursive lookups. @@ -413,14 +411,14 @@ public abstract class AbstractMappingContext descriptors = new HashMap<>(); - for (PropertyDescriptor descriptor : pds) { + for (var descriptor : pds) { descriptors.put(descriptor.getName(), descriptor); } - PersistentPropertyCreator persistentPropertyCreator = new PersistentPropertyCreator(entity, descriptors); + var persistentPropertyCreator = new PersistentPropertyCreator(entity, descriptors); ReflectionUtils.doWithFields(type, persistentPropertyCreator, PersistentPropertyFilter.INSTANCE); persistentPropertyCreator.addPropertiesForRemainingDescriptors(); @@ -544,12 +542,12 @@ public abstract class AbstractMappingContext type = entity.getTypeInformation(); + var fieldName = field.getName(); + var type = entity.getTypeInformation(); ReflectionUtils.makeAccessible(field); - Property property = Optional.ofNullable(descriptors.get(fieldName))// + var property = Optional.ofNullable(descriptors.get(fieldName))// .map(it -> Property.of(type, field, it))// .orElseGet(() -> Property.of(type, field)); @@ -575,7 +573,7 @@ public abstract class AbstractMappingContext declaringClass = getDeclaringClass(property); - Class existingDeclaringClass = getDeclaringClass(existingProperty); + var declaringClass = getDeclaringClass(property); + var existingDeclaringClass = getDeclaringClass(existingProperty); - Class propertyType = getPropertyType(property); - Class existingPropertyType = getPropertyType(existingProperty); + var propertyType = getPropertyType(property); + var existingPropertyType = getPropertyType(existingProperty); if (!propertyType.isAssignableFrom(existingPropertyType)) { @@ -638,12 +636,12 @@ public abstract class AbstractMappingContext getDeclaringClass(PersistentProperty persistentProperty) { - Field field = persistentProperty.getField(); + var field = persistentProperty.getField(); if (field != null) { return field.getDeclaringClass(); } - Method accessor = persistentProperty.getGetter(); + var accessor = persistentProperty.getGetter(); if (accessor == null) { accessor = persistentProperty.getSetter(); @@ -662,22 +660,22 @@ public abstract class AbstractMappingContext getPropertyType(PersistentProperty persistentProperty) { - Field field = persistentProperty.getField(); + var field = persistentProperty.getField(); if (field != null) { return field.getType(); } - Method getter = persistentProperty.getGetter(); + var getter = persistentProperty.getGetter(); if (getter != null) { return getter.getReturnType(); } - Method setter = persistentProperty.getSetter(); + var setter = persistentProperty.getSetter(); if (setter != null) { return setter.getParameterTypes()[0]; } - Method wither = persistentProperty.getWither(); + var wither = persistentProperty.getWither(); if (wither != null) { return wither.getParameterTypes()[0]; } diff --git a/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java b/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java index 4d3fde4f5..e503ef5ba 100644 --- a/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java @@ -80,7 +80,7 @@ class DefaultPersistentPropertyPath

> implements } @SuppressWarnings("null") - Class leafPropertyType = getLeafProperty().getActualType(); + var leafPropertyType = getLeafProperty().getActualType(); Assert.isTrue(property.getOwner().getType().equals(leafPropertyType), () -> String.format("Cannot append property %s to type %s!", property.getName(), leafPropertyType.getName())); @@ -128,7 +128,7 @@ class DefaultPersistentPropertyPath

> implements Assert.hasText(delimiter, "Delimiter must not be null or empty!"); Assert.notNull(converter, "Converter must not be null!"); - String result = properties.stream() // + var result = properties.stream() // .map(converter::convert) // .filter(StringUtils::hasText) // .collect(Collectors.joining(delimiter)); @@ -162,15 +162,15 @@ class DefaultPersistentPropertyPath

> implements Assert.notNull(path, "PersistentPropertyPath must not be null!"); - Iterator

iterator = path.iterator(); + var iterator = path.iterator(); - for (P property : this) { + for (var property : this) { if (!iterator.hasNext()) { return false; } - P reference = iterator.next(); + var reference = iterator.next(); if (!property.equals(reference)) { return false; @@ -191,9 +191,9 @@ class DefaultPersistentPropertyPath

> implements } List

result = new ArrayList<>(); - Iterator

iterator = iterator(); + var iterator = iterator(); - for (int i = 0; i < base.getLength(); i++) { + for (var i = 0; i < base.getLength(); i++) { iterator.next(); } @@ -210,7 +210,7 @@ class DefaultPersistentPropertyPath

> implements */ public PersistentPropertyPath

getParentPath() { - int size = properties.size(); + var size = properties.size(); return size == 0 ? this : new DefaultPersistentPropertyPath<>(properties.subList(0, size - 1)); } @@ -256,11 +256,10 @@ class DefaultPersistentPropertyPath

> implements return true; } - if (!(o instanceof DefaultPersistentPropertyPath)) { + if (!(o instanceof DefaultPersistentPropertyPath that)) { return false; } - DefaultPersistentPropertyPath that = (DefaultPersistentPropertyPath) o; return ObjectUtils.nullSafeEquals(properties, that.properties); } diff --git a/src/main/java/org/springframework/data/mapping/context/InvalidPersistentPropertyPath.java b/src/main/java/org/springframework/data/mapping/context/InvalidPersistentPropertyPath.java index 11ebbb368..549df5b0b 100644 --- a/src/main/java/org/springframework/data/mapping/context/InvalidPersistentPropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/context/InvalidPersistentPropertyPath.java @@ -109,14 +109,14 @@ public class InvalidPersistentPropertyPath extends MappingException { return ""; } - String dotPath = path.toDotPath(); + var dotPath = path.toDotPath(); return dotPath == null ? "" : dotPath; } private static String createMessage(TypeInformation type, String unresolvableSegment) { - Set potentialMatches = detectPotentialMatches(unresolvableSegment, type.getType()); + var potentialMatches = detectPotentialMatches(unresolvableSegment, type.getType()); Object match = StringUtils.collectionToCommaDelimitedString(potentialMatches); return String.format(DEFAULT_MESSAGE, unresolvableSegment, type.getType(), match); diff --git a/src/main/java/org/springframework/data/mapping/context/MappingContext.java b/src/main/java/org/springframework/data/mapping/context/MappingContext.java index ac37cc621..f77d4cf40 100644 --- a/src/main/java/org/springframework/data/mapping/context/MappingContext.java +++ b/src/main/java/org/springframework/data/mapping/context/MappingContext.java @@ -70,7 +70,7 @@ public interface MappingContext, P extends Pers */ default E getRequiredPersistentEntity(Class type) throws MappingException { - E entity = getPersistentEntity(type); + var entity = getPersistentEntity(type); if (entity != null) { return entity; @@ -110,7 +110,7 @@ public interface MappingContext, P extends Pers */ default E getRequiredPersistentEntity(TypeInformation type) throws MappingException { - E entity = getPersistentEntity(type); + var entity = getPersistentEntity(type); if (entity != null) { return entity; @@ -143,7 +143,7 @@ public interface MappingContext, P extends Pers */ default E getRequiredPersistentEntity(P persistentProperty) throws MappingException { - E entity = getPersistentEntity(persistentProperty); + var entity = getPersistentEntity(persistentProperty); if (entity != null) { return entity; diff --git a/src/main/java/org/springframework/data/mapping/context/PersistentEntities.java b/src/main/java/org/springframework/data/mapping/context/PersistentEntities.java index c157de7a7..bc7e93cab 100644 --- a/src/main/java/org/springframework/data/mapping/context/PersistentEntities.java +++ b/src/main/java/org/springframework/data/mapping/context/PersistentEntities.java @@ -196,13 +196,13 @@ public class PersistentEntities implements Streamable getEntityUltimatelyReferredToBy(PersistentProperty property) { - TypeInformation propertyType = property.getTypeInformation().getActualType(); + var propertyType = property.getTypeInformation().getActualType(); if (propertyType == null || !property.isAssociation()) { return null; } - Class associationTargetType = property.getAssociationTargetType(); + var associationTargetType = property.getAssociationTargetType(); return associationTargetType == null // ? getEntityIdentifiedBy(propertyType) // @@ -220,7 +220,7 @@ public class PersistentEntities implements Streamable entity = getEntityUltimatelyReferredToBy(property); + var entity = getEntityUltimatelyReferredToBy(property); return entity == null // ? property.getTypeInformation().getRequiredActualType() // @@ -238,16 +238,24 @@ public class PersistentEntities implements Streamable getEntityIdentifiedBy(TypeInformation type) { - Collection> entities = contexts.stream() // - .flatMap(it -> it.getPersistentEntities().stream()) // - .map(PersistentEntity::getIdProperty) // - .filter(it -> it != null && type.equals(it.getTypeInformation().getActualType())) // - .map(PersistentProperty::getOwner) // - .collect(Collectors.toList()); + Collection> entities = new ArrayList<>(); + for (MappingContext> context : contexts) { + + for (PersistentEntity> persistentProperties : context + .getPersistentEntities()) { + + var idProperty = persistentProperties.getIdProperty(); + + if (idProperty != null && type.equals(idProperty.getTypeInformation().getActualType())) { + var owner = idProperty.getOwner(); + entities.add(owner); + } + } + } if (entities.size() > 1) { - String message = "Found multiple entities identified by " + type.getType() + ": "; + var message = "Found multiple entities identified by " + type.getType() + ": "; message += entities.stream().map(it -> it.getType().getName()).collect(Collectors.joining(", ")); message += "! Introduce dedicated unique identifier types or explicitly define the target type in @Reference!"; diff --git a/src/main/java/org/springframework/data/mapping/context/PersistentPropertyPathFactory.java b/src/main/java/org/springframework/data/mapping/context/PersistentPropertyPathFactory.java index 6d1f76aa4..00c6b9e65 100644 --- a/src/main/java/org/springframework/data/mapping/context/PersistentPropertyPathFactory.java +++ b/src/main/java/org/springframework/data/mapping/context/PersistentPropertyPathFactory.java @@ -19,7 +19,6 @@ import java.util.*; import java.util.function.Function; import java.util.function.Predicate; import java.util.stream.Collectors; -import java.util.stream.Stream; import org.springframework.data.mapping.AssociationHandler; import org.springframework.data.mapping.PersistentEntity; @@ -181,26 +180,26 @@ class PersistentPropertyPathFactory, P extends */ private PersistentPropertyPath

createPersistentPropertyPath(String propertyPath, TypeInformation type) { - String trimmedPath = propertyPath.trim(); + var trimmedPath = propertyPath.trim(); List parts = trimmedPath.isEmpty() // ? Collections.emptyList() // : Arrays.asList(trimmedPath.split("\\.")); DefaultPersistentPropertyPath

path = DefaultPersistentPropertyPath.empty(); - Iterator iterator = parts.iterator(); - E current = context.getRequiredPersistentEntity(type); + var iterator = parts.iterator(); + var current = context.getRequiredPersistentEntity(type); while (iterator.hasNext()) { - String segment = iterator.next(); - final DefaultPersistentPropertyPath

currentPath = path; + var segment = iterator.next(); + final var currentPath = path; - Pair, E> pair = getPair(path, iterator, segment, current); + var pair = getPair(path, iterator, segment, current); if (pair == null) { - String source = StringUtils.collectionToDelimitedString(parts, "."); + var source = StringUtils.collectionToDelimitedString(parts, "."); throw new InvalidPersistentPropertyPath(source, type, segment, currentPath); } @@ -216,7 +215,7 @@ class PersistentPropertyPathFactory, P extends private Pair, E> getPair(DefaultPersistentPropertyPath

path, Iterator iterator, String segment, E entity) { - P property = entity.getPersistentProperty(segment); + var property = entity.getPersistentProperty(segment); if (property == null) { return null; @@ -228,13 +227,13 @@ class PersistentPropertyPathFactory, P extends private Collection> from(TypeInformation type, Predicate filter, Predicate

traversalGuard, DefaultPersistentPropertyPath

basePath) { - TypeInformation actualType = type.getActualType(); + var actualType = type.getActualType(); if (actualType == null) { return Collections.emptyList(); } - E entity = context.getRequiredPersistentEntity(actualType); + var entity = context.getRequiredPersistentEntity(actualType); return from(entity, filter, traversalGuard, basePath); } @@ -243,16 +242,16 @@ class PersistentPropertyPathFactory, P extends Set> properties = new HashSet<>(); - PropertyHandler

propertyTester = persistentProperty -> { + var propertyTester = (PropertyHandler

) persistentProperty -> { - TypeInformation typeInformation = persistentProperty.getTypeInformation(); - TypeInformation actualPropertyType = typeInformation.getActualType(); + var typeInformation = persistentProperty.getTypeInformation(); + var actualPropertyType = typeInformation.getActualType(); if (basePath.containsPropertyOfType(actualPropertyType)) { return; } - DefaultPersistentPropertyPath

currentPath = basePath.append(persistentProperty); + var currentPath = basePath.append(persistentProperty); if (filter.test(persistentProperty)) { properties.add(currentPath); @@ -265,7 +264,8 @@ class PersistentPropertyPathFactory, P extends entity.doWithProperties(propertyTester); - AssociationHandler

handler = association -> propertyTester.doWithPersistentProperty(association.getInverse()); + var handler = (AssociationHandler

) association -> propertyTester + .doWithPersistentProperty(association.getInverse()); entity.doWithAssociations(handler); return properties; @@ -304,12 +304,10 @@ class PersistentPropertyPathFactory, P extends return true; } - if (!(o instanceof TypeAndPath)) { + if (!(o instanceof TypeAndPath that)) { return false; } - TypeAndPath that = (TypeAndPath) o; - if (!ObjectUtils.nullSafeEquals(type, that.type)) { return false; } @@ -323,7 +321,7 @@ class PersistentPropertyPathFactory, P extends */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(type); + var result = ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(path); return result; } @@ -364,7 +362,7 @@ class PersistentPropertyPathFactory, P extends List> sorted = new ArrayList<>(paths); - Collections.sort(sorted, SHORTEST_PATH.thenComparing(ShortestSegmentFirst.INSTANCE)); + sorted.sort(SHORTEST_PATH.thenComparing(ShortestSegmentFirst.INSTANCE)); return new DefaultPersistentPropertyPaths<>(type, sorted); } @@ -400,7 +398,7 @@ class PersistentPropertyPathFactory, P extends return false; } - String dotPath = path.toDotPath(); + var dotPath = path.toDotPath(); return stream().anyMatch(it -> dotPath.equals(it.toDotPath())); } @@ -423,7 +421,7 @@ class PersistentPropertyPathFactory, P extends Assert.notNull(predicate, "Predicate must not be null!"); - List> paths = this.stream() // + var paths = this.stream() // .filter(it -> !it.stream().anyMatch(predicate)) // .collect(Collectors.toList()); @@ -456,10 +454,10 @@ class PersistentPropertyPathFactory, P extends @SuppressWarnings("null") public int compare(PersistentPropertyPath left, PersistentPropertyPath right) { - Function, Integer> mapper = it -> it.getName().length(); + var mapper = (Function, Integer>) it -> it.getName().length(); - Stream leftNames = left.stream().map(mapper); - Stream rightNames = right.stream().map(mapper); + var leftNames = left.stream().map(mapper); + var rightNames = right.stream().map(mapper); return StreamUtils.zip(leftNames, rightNames, (l, r) -> l - r) // .filter(it -> it != 0) // diff --git a/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java b/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java index baa8999f8..a689f0319 100644 --- a/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java +++ b/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java @@ -279,7 +279,7 @@ public abstract class AbstractPersistentProperty

@Override public Class getAssociationTargetType() { - TypeInformation result = getAssociationTargetTypeInformation(); + var result = getAssociationTargetTypeInformation(); return result != null ? result.getType() : null; } @@ -350,7 +350,7 @@ public abstract class AbstractPersistentProperty

if (isMap()) { - TypeInformation mapValueType = information.getMapValueType(); + var mapValueType = information.getMapValueType(); if (mapValueType != null) { return mapValueType.getType(); @@ -383,7 +383,7 @@ public abstract class AbstractPersistentProperty

protected TypeInformation getActualTypeInformation() { - TypeInformation targetType = associationTargetType.getNullable(); + var targetType = associationTargetType.getNullable(); return targetType == null ? information.getRequiredActualType() : targetType; } @@ -398,12 +398,10 @@ public abstract class AbstractPersistentProperty

return true; } - if (!(obj instanceof AbstractPersistentProperty)) { + if (!(obj instanceof AbstractPersistentProperty that)) { return false; } - AbstractPersistentProperty that = (AbstractPersistentProperty) obj; - return this.property.equals(that.property); } @@ -427,10 +425,10 @@ public abstract class AbstractPersistentProperty

private Set> detectEntityTypes(SimpleTypeHolder simpleTypes) { - TypeInformation typeToStartWith = getAssociationTargetTypeInformation(); + var typeToStartWith = getAssociationTargetTypeInformation(); typeToStartWith = typeToStartWith == null ? information : typeToStartWith; - Set> result = detectEntityTypes(typeToStartWith); + var result = detectEntityTypes(typeToStartWith); return result.stream() .filter(it -> !simpleTypes.isSimpleType(it.getType())) @@ -450,7 +448,7 @@ public abstract class AbstractPersistentProperty

result.addAll(detectEntityTypes(source.getComponentType())); } - TypeInformation actualType = source.getActualType(); + var actualType = source.getActualType(); if (source.equals(actualType)) { result.add(source); diff --git a/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java b/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java index ad0e0907c..843e96aa7 100644 --- a/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java +++ b/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java @@ -64,7 +64,7 @@ public abstract class AnnotationBasedPersistentProperty

usePropertyAccess = Lazy.of(() -> { - AccessType accessType = findPropertyOrOwnerAnnotation(AccessType.class); + var accessType = findPropertyOrOwnerAnnotation(AccessType.class); return accessType != null && Type.PROPERTY.equals(accessType.value()) || super.usePropertyAccess(); }); @@ -105,7 +105,7 @@ public abstract class AnnotationBasedPersistentProperty

{ - for (Annotation annotation : it.getAnnotations()) { + for (var annotation : it.getAnnotations()) { - Class annotationType = annotation.annotationType(); + var annotationType = annotation.annotationType(); - Annotation mergedAnnotation = AnnotatedElementUtils.getMergedAnnotation(it, annotationType); + var mergedAnnotation = AnnotatedElementUtils.getMergedAnnotation(it, annotationType); validateAnnotation(mergedAnnotation, "Ambiguous mapping! Annotation %s configured " @@ -139,10 +139,10 @@ public abstract class AnnotationBasedPersistentProperty

{ - for (Annotation annotation : it.getAnnotations()) { + for (var annotation : it.getAnnotations()) { - Class annotationType = annotation.annotationType(); - Annotation mergedAnnotation = AnnotatedElementUtils.getMergedAnnotation(it, annotationType); + var annotationType = annotation.annotationType(); + var mergedAnnotation = AnnotatedElementUtils.getMergedAnnotation(it, annotationType); validateAnnotation(mergedAnnotation, "Ambiguous mapping! Annotation %s configured " + "on field %s and one of its accessor methods in class %s!", @@ -164,7 +164,7 @@ public abstract class AnnotationBasedPersistentProperty

annotationType = candidate.annotationType(); + var annotationType = candidate.annotationType(); if (!annotationType.getName().startsWith(SPRING_DATA_PACKAGE)) { return; @@ -251,7 +251,7 @@ public abstract class AnnotationBasedPersistentProperty

Optional doFindAnnotation(Class annotationType) { - Optional annotation = annotationCache.get(annotationType); + var annotation = annotationCache.get(annotationType); if (annotation != null) { return (Optional) annotation; @@ -274,7 +274,7 @@ public abstract class AnnotationBasedPersistentProperty

A findPropertyOrOwnerAnnotation(Class annotationType) { - A annotation = findAnnotation(annotationType); + var annotation = findAnnotation(annotationType); return annotation != null ? annotation : getOwner().findAnnotation(annotationType); } @@ -319,7 +319,7 @@ public abstract class AnnotationBasedPersistentProperty

> implement propertyCache.computeIfAbsent(property.getName(), key -> property); - P candidate = returnPropertyIfBetterIdPropertyCandidateOrNull(property); + var candidate = returnPropertyIfBetterIdPropertyCandidateOrNull(property); if (candidate != null) { this.idProperty = candidate; @@ -230,7 +230,7 @@ public class BasicPersistentEntity> implement if (property.isVersionProperty()) { - P versionProperty = this.versionProperty; + var versionProperty = this.versionProperty; if (versionProperty != null) { @@ -267,7 +267,7 @@ public class BasicPersistentEntity> implement return null; } - P idProperty = this.idProperty; + var idProperty = this.idProperty; if (idProperty != null) { throw new MappingException(String.format("Attempt to add id property %s but already have property %s registered " @@ -311,7 +311,7 @@ public class BasicPersistentEntity> implement private List

doFindPersistentProperty(Class annotationType) { - List

annotatedProperties = properties.stream() // + var annotatedProperties = properties.stream() // .filter(it -> it.isAnnotationPresent(annotationType)) // .collect(Collectors.toList()); @@ -356,7 +356,7 @@ public class BasicPersistentEntity> implement Assert.notNull(handler, "PropertyHandler must not be null!"); - for (P property : persistentPropertiesCache) { + for (var property : persistentPropertiesCache) { handler.doWithPersistentProperty(property); } } @@ -383,7 +383,7 @@ public class BasicPersistentEntity> implement Assert.notNull(handler, "Handler must not be null!"); - for (Association

association : associations) { + for (var association : associations) { handler.doWithAssociation(association); } } @@ -522,7 +522,7 @@ public class BasicPersistentEntity> implement @Override public Iterator

iterator() { - Iterator

iterator = properties.iterator(); + var iterator = properties.iterator(); return new Iterator

() { @@ -593,12 +593,13 @@ public class BasicPersistentEntity> implement */ private static Alias getAliasFromAnnotation(Class type) { - Optional typeAliasValue = Optional - .ofNullable(AnnotatedElementUtils.findMergedAnnotation(type, TypeAlias.class))// - .map(TypeAlias::value)// - .filter(StringUtils::hasText); + var typeAlias = AnnotatedElementUtils.findMergedAnnotation(type, TypeAlias.class); - return Alias.ofNullable(typeAliasValue.orElse(null)); + if (typeAlias != null && StringUtils.hasText(typeAlias.value())) { + return Alias.of(typeAlias.value()); + } + + return Alias.empty(); } /** diff --git a/src/main/java/org/springframework/data/mapping/model/BeanWrapper.java b/src/main/java/org/springframework/data/mapping/model/BeanWrapper.java index 5f49c81e7..fef66e24c 100644 --- a/src/main/java/org/springframework/data/mapping/model/BeanWrapper.java +++ b/src/main/java/org/springframework/data/mapping/model/BeanWrapper.java @@ -19,10 +19,7 @@ import kotlin.reflect.KCallable; import kotlin.reflect.KParameter; import kotlin.reflect.KParameter.Kind; -import java.lang.reflect.Field; -import java.lang.reflect.Method; import java.util.LinkedHashMap; -import java.util.List; import java.util.Map; import org.springframework.data.mapping.MappingException; @@ -68,7 +65,7 @@ class BeanWrapper implements PersistentPropertyAccessor { if (property.isImmutable()) { - Method wither = property.getWither(); + var wither = property.getWither(); if (wither != null) { @@ -89,14 +86,14 @@ class BeanWrapper implements PersistentPropertyAccessor { if (!property.usePropertyAccess()) { - Field field = property.getRequiredField(); + var field = property.getRequiredField(); ReflectionUtils.makeAccessible(field); ReflectionUtils.setField(field, bean, value); return; } - Method setter = property.getRequiredSetter(); + var setter = property.getRequiredSetter(); ReflectionUtils.makeAccessible(setter); ReflectionUtils.invokeMethod(setter, bean, value); @@ -133,13 +130,13 @@ class BeanWrapper implements PersistentPropertyAccessor { if (!property.usePropertyAccess()) { - Field field = property.getRequiredField(); + var field = property.getRequiredField(); ReflectionUtils.makeAccessible(field); return ReflectionUtils.getField(field, bean); } - Method getter = property.getRequiredGetter(); + var getter = property.getRequiredGetter(); ReflectionUtils.makeAccessible(getter); return ReflectionUtils.invokeMethod(getter, bean); @@ -175,8 +172,8 @@ class BeanWrapper implements PersistentPropertyAccessor { */ static Object setProperty(PersistentProperty property, T bean, @Nullable Object value) { - Class type = property.getOwner().getType(); - KCallable copy = copyMethodCache.computeIfAbsent(type, it -> getCopyMethod(it, property)); + var type = property.getOwner().getType(); + var copy = copyMethodCache.computeIfAbsent(type, it -> getCopyMethod(it, property)); if (copy == null) { throw new UnsupportedOperationException(String.format( @@ -191,9 +188,9 @@ class BeanWrapper implements PersistentPropertyAccessor { Map args = new LinkedHashMap<>(2, 1); - List parameters = callable.getParameters(); + var parameters = callable.getParameters(); - for (KParameter parameter : parameters) { + for (var parameter : parameters) { if (parameter.getKind() == Kind.INSTANCE) { args.put(parameter, bean); diff --git a/src/main/java/org/springframework/data/mapping/model/CamelCaseSplittingFieldNamingStrategy.java b/src/main/java/org/springframework/data/mapping/model/CamelCaseSplittingFieldNamingStrategy.java index 2fc95b1b1..481493a6e 100644 --- a/src/main/java/org/springframework/data/mapping/model/CamelCaseSplittingFieldNamingStrategy.java +++ b/src/main/java/org/springframework/data/mapping/model/CamelCaseSplittingFieldNamingStrategy.java @@ -52,12 +52,12 @@ public class CamelCaseSplittingFieldNamingStrategy implements FieldNamingStrateg @Override public String getFieldName(PersistentProperty property) { - List parts = ParsingUtils.splitCamelCaseToLower(property.getName()); + var parts = ParsingUtils.splitCamelCaseToLower(property.getName()); List result = new ArrayList<>(); - for (String part : parts) { + for (var part : parts) { - String candidate = preparePart(part); + var candidate = preparePart(part); if (StringUtils.hasText(candidate)) { result.add(candidate); diff --git a/src/main/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiator.java b/src/main/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiator.java index d74391137..a92211f49 100644 --- a/src/main/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiator.java +++ b/src/main/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiator.java @@ -17,7 +17,6 @@ package org.springframework.data.mapping.model; import static org.springframework.asm.Opcodes.*; -import java.lang.reflect.Constructor; import java.lang.reflect.Modifier; import java.util.Arrays; import java.util.HashMap; @@ -80,7 +79,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { public , P extends PersistentProperty

> T createInstance(E entity, ParameterValueProvider

provider) { - EntityInstantiator instantiator = this.entityInstantiators.get(entity.getTypeInformation()); + var instantiator = this.entityInstantiators.get(entity.getTypeInformation()); if (instantiator == null) { instantiator = potentiallyCreateAndRegisterEntityInstantiator(entity); @@ -96,8 +95,8 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { private synchronized EntityInstantiator potentiallyCreateAndRegisterEntityInstantiator( PersistentEntity entity) { - Map, EntityInstantiator> map = this.entityInstantiators; - EntityInstantiator instantiator = map.get(entity.getTypeInformation()); + var map = this.entityInstantiators; + var instantiator = map.get(entity.getTypeInformation()); if (instantiator != null) { return instantiator; @@ -164,7 +163,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { return true; } - Class type = entity.getType(); + var type = entity.getType(); if (type.isInterface() // || type.isArray() // @@ -174,7 +173,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { return true; } - PreferredConstructor persistenceConstructor = entity.getPersistenceConstructor(); + var persistenceConstructor = entity.getPersistenceConstructor(); if (persistenceConstructor == null || Modifier.isPrivate(persistenceConstructor.getConstructor().getModifiers())) { return true; } @@ -245,7 +244,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { public , P extends PersistentProperty

> T createInstance(E entity, ParameterValueProvider

provider) { - Object[] params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); + var params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); try { return (T) instantiator.newInstance(params); @@ -269,9 +268,9 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { return allocateArguments(0); } - Object[] params = allocateArguments(constructor.getConstructor().getParameterCount()); + var params = allocateArguments(constructor.getConstructor().getParameterCount()); - int index = 0; + var index = 0; for (Parameter parameter : constructor.getParameters()) { params[index++] = provider.getParameterValue(parameter); } @@ -316,7 +315,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { public , P extends PersistentProperty

> T createInstance(E entity, ParameterValueProvider

provider) { - Object[] params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); + var params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); throw new MappingInstantiationException(entity, Arrays.asList(params), new BeanInstantiationException(typeToCreate, "Class is abstract")); @@ -382,9 +381,9 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { public Class generateCustomInstantiatorClass(PersistentEntity entity, @Nullable PreferredConstructor constructor) { - String className = generateClassName(entity); - Class type = entity.getType(); - ClassLoader classLoader = type.getClassLoader(); + var className = generateClassName(entity); + var type = entity.getType(); + var classLoader = type.getClassLoader(); if (ClassUtils.isPresent(className, classLoader)) { @@ -395,7 +394,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { } } - byte[] bytecode = generateBytecode(className, entity, constructor); + var bytecode = generateBytecode(className, entity, constructor); try { return ReflectUtils.defineClass(className, bytecode, classLoader, type.getProtectionDomain(), type); @@ -423,7 +422,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { public byte[] generateBytecode(String internalClassName, PersistentEntity entity, @Nullable PreferredConstructor constructor) { - ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); + var cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); cw.visit(Opcodes.V1_6, ACC_PUBLIC + ACC_SUPER, internalClassName.replace('.', '/'), null, JAVA_LANG_OBJECT, IMPLEMENTED_INTERFACES); @@ -439,7 +438,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { private void visitDefaultConstructor(ClassWriter cw) { - MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, INIT, "()V", null, null); + var mv = cw.visitMethod(ACC_PUBLIC, INIT, "()V", null, null); mv.visitCode(); mv.visitVarInsn(ALOAD, 0); mv.visitMethodInsn(INVOKESPECIAL, JAVA_LANG_OBJECT, INIT, "()V", false); @@ -458,9 +457,9 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { private void visitCreateMethod(ClassWriter cw, PersistentEntity entity, @Nullable PreferredConstructor constructor) { - String entityTypeResourcePath = Type.getInternalName(entity.getType()); + var entityTypeResourcePath = Type.getInternalName(entity.getType()); - MethodVisitor mv = cw.visitMethod(ACC_PUBLIC + ACC_VARARGS, CREATE_METHOD_NAME, + var mv = cw.visitMethod(ACC_PUBLIC + ACC_VARARGS, CREATE_METHOD_NAME, "([Ljava/lang/Object;)Ljava/lang/Object;", null, null); mv.visitCode(); mv.visitTypeInsn(NEW, entityTypeResourcePath); @@ -468,11 +467,11 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { if (constructor != null) { - Constructor ctor = constructor.getConstructor(); - Class[] parameterTypes = ctor.getParameterTypes(); + var ctor = constructor.getConstructor(); + var parameterTypes = ctor.getParameterTypes(); List> parameters = constructor.getParameters(); - for (int i = 0; i < parameterTypes.length; i++) { + for (var i = 0; i < parameterTypes.length; i++) { mv.visitVarInsn(ALOAD, 1); @@ -483,7 +482,7 @@ class ClassGeneratingEntityInstantiator implements EntityInstantiator { if (parameterTypes[i].isPrimitive()) { mv.visitInsn(DUP); - String parameterName = parameters.size() > i ? parameters.get(i).getName() : null; + var parameterName = parameters.size() > i ? parameters.get(i).getName() : null; insertAssertNotNull(mv, parameterName == null ? String.format("at index %d", i) : parameterName); insertUnboxInsns(mv, Type.getType(parameterTypes[i]).toString().charAt(0), ""); diff --git a/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java b/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java index 57d58332a..33d103e8a 100644 --- a/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java +++ b/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java @@ -48,7 +48,6 @@ import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.PersistentPropertyAccessor; import org.springframework.data.mapping.SimpleAssociationHandler; import org.springframework.data.mapping.SimplePropertyHandler; -import org.springframework.data.mapping.model.KotlinCopyMethod.KotlinCopyByProperty; import org.springframework.data.util.Optionals; import org.springframework.data.util.TypeInformation; import org.springframework.lang.Nullable; @@ -83,11 +82,11 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert @Override public PersistentPropertyAccessor getPropertyAccessor(PersistentEntity entity, T bean) { - Constructor constructor = constructorMap.get(entity); + var constructor = constructorMap.get(entity); if (constructor == null) { - Class> accessorClass = potentiallyCreateAndRegisterPersistentPropertyAccessorClass( + var accessorClass = potentiallyCreateAndRegisterPersistentPropertyAccessorClass( entity); constructor = accessorClass.getConstructors()[0]; @@ -96,7 +95,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert this.constructorMap = constructorMap; } - Object[] args = argumentCache.get(); + var args = argumentCache.get(); args[0] = bean; try { @@ -136,7 +135,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static boolean isTypeInjectable(PersistentEntity entity) { - Class type = entity.getType(); + var type = entity.getType(); return type.getClassLoader() != null && (type.getPackage() == null || !type.getPackage().getName().startsWith("java")) && ClassUtils.isPresent(PersistentPropertyAccessor.class.getName(), type.getClassLoader()) @@ -146,7 +145,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private boolean hasUniquePropertyHashCodes(PersistentEntity entity) { Set hashCodes = new HashSet<>(); - AtomicInteger propertyCount = new AtomicInteger(); + var propertyCount = new AtomicInteger(); entity.doWithProperties((SimplePropertyHandler) property -> { @@ -172,8 +171,8 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private synchronized Class> potentiallyCreateAndRegisterPersistentPropertyAccessorClass( PersistentEntity entity) { - Map, Class>> map = this.propertyAccessorClasses; - Class> propertyAccessorClass = map.get(entity.getTypeInformation()); + var map = this.propertyAccessorClasses; + var propertyAccessorClass = map.get(entity.getTypeInformation()); if (propertyAccessorClass != null) { return propertyAccessorClass; @@ -314,9 +313,9 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert */ static Class generateCustomAccessorClass(PersistentEntity entity) { - String className = generateClassName(entity); - Class type = entity.getType(); - ClassLoader classLoader = type.getClassLoader(); + var className = generateClassName(entity); + var type = entity.getType(); + var classLoader = type.getClassLoader(); if (ClassUtils.isPresent(className, classLoader)) { @@ -327,7 +326,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert } } - byte[] bytecode = generateBytecode(className.replace('.', '/'), entity); + var bytecode = generateBytecode(className.replace('.', '/'), entity); try { @@ -343,10 +342,10 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert */ static byte[] generateBytecode(String internalClassName, PersistentEntity entity) { - ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); + var cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); cw.visit(Opcodes.V1_6, ACC_PUBLIC + ACC_SUPER, internalClassName, null, JAVA_LANG_OBJECT, IMPLEMENTED_INTERFACES); - List> persistentProperties = getPersistentProperties(entity); + var persistentProperties = getPersistentProperties(entity); visitFields(entity, persistentProperties, cw); visitDefaultConstructor(entity, internalClassName, cw); @@ -393,7 +392,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert cw.visitField(ACC_PRIVATE, BEAN_FIELD, getAccessibleTypeReferenceName(entity), null, null).visitEnd(); - for (PersistentProperty property : persistentProperties) { + for (var property : persistentProperties) { if (property.isImmutable()) { if (generateMethodHandle(entity, property.getWither())) { @@ -443,7 +442,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv = cw.visitMethod(ACC_PUBLIC, INIT, String.format("(%s)V", getAccessibleTypeReferenceName(entity)), null, null); mv.visitCode(); - Label l0 = new Label(); + var l0 = new Label(); mv.visitLabel(l0); mv.visitVarInsn(ALOAD, 0); mv.visitMethodInsn(INVOKESPECIAL, JAVA_LANG_OBJECT, INIT, "()V", false); @@ -461,7 +460,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitFieldInsn(PUTFIELD, internalClassName, BEAN_FIELD, getAccessibleTypeReferenceName(entity)); mv.visitInsn(RETURN); - Label l3 = new Label(); + var l3 = new Label(); mv.visitLabel(l3); mv.visitLocalVariable(THIS_REF, referenceName(internalClassName), null, l0, l3, 0); mv.visitLocalVariable(BEAN_FIELD, getAccessibleTypeReferenceName(entity), null, l0, l3, 1); @@ -490,10 +489,10 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitStaticInitializer(PersistentEntity entity, List> persistentProperties, String internalClassName, ClassWriter cw) { - MethodVisitor mv = cw.visitMethod(ACC_STATIC, CLINIT, "()V", null, null); + var mv = cw.visitMethod(ACC_STATIC, CLINIT, "()V", null, null); mv.visitCode(); - Label l0 = new Label(); - Label l1 = new Label(); + var l0 = new Label(); + var l1 = new Label(); mv.visitLabel(l0); // lookup = MethodHandles.lookup() @@ -501,9 +500,9 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert String.format("()%s", referenceName(JAVA_LANG_INVOKE_METHOD_HANDLES_LOOKUP)), false); mv.visitVarInsn(ASTORE, 0); - List> entityClasses = getPropertyDeclaratingClasses(persistentProperties); + var entityClasses = getPropertyDeclaratingClasses(persistentProperties); - for (Class entityClass : entityClasses) { + for (var entityClass : entityClasses) { mv.visitLdcInsn(entityClass.getName()); mv.visitMethodInsn(INVOKESTATIC, JAVA_LANG_CLASS, "forName", @@ -511,7 +510,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitVarInsn(ASTORE, classVariableIndex5(entityClasses, entityClass)); } - for (PersistentProperty property : persistentProperties) { + for (var property : persistentProperties) { if (property.usePropertyAccess()) { @@ -544,9 +543,9 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitLocalVariable("getter", referenceName(JAVA_LANG_REFLECT_METHOD), null, l0, l1, 3); mv.visitLocalVariable("wither", referenceName(JAVA_LANG_REFLECT_METHOD), null, l0, l1, 4); - for (Class entityClass : entityClasses) { + for (var entityClass : entityClasses) { - int index = classVariableIndex5(entityClasses, entityClass); + var index = classVariableIndex5(entityClasses, entityClass); mv.visitLocalVariable(String.format("class_%d", index), referenceName(JAVA_LANG_CLASS), null, l0, l1, index); } @@ -582,7 +581,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert List> entityClasses, String internalClassName) { // getter = .class.getDeclaredMethod() - Method getter = property.getGetter(); + var getter = property.getGetter(); if (getter != null) { @@ -634,7 +633,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitInsn(DUP); mv.visitInsn(ICONST_0); - Class parameterType = method.getParameterTypes()[0]; + var parameterType = method.getParameterTypes()[0]; if (parameterType.isPrimitive()) { mv.visitFieldInsn(GETSTATIC, Type.getInternalName(autoboxType(method.getParameterTypes()[0])), "TYPE", @@ -677,7 +676,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert // field = .class.getDeclaredField() - Field field = property.getField(); + var field = property.getField(); if (field != null) { mv.visitVarInsn(ALOAD, classVariableIndex5(entityClasses, field.getDeclaringClass())); @@ -715,10 +714,10 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitBeanGetter(PersistentEntity entity, String internalClassName, ClassWriter cw) { // public Object getBean() - MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "getBean", String.format("()%s", referenceName(JAVA_LANG_OBJECT)), + var mv = cw.visitMethod(ACC_PUBLIC, "getBean", String.format("()%s", referenceName(JAVA_LANG_OBJECT)), null, null); mv.visitCode(); - Label l0 = new Label(); + var l0 = new Label(); // return this.bean mv.visitLabel(l0); @@ -728,7 +727,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitInsn(ARETURN); - Label l1 = new Label(); + var l1 = new Label(); mv.visitLabel(l1); mv.visitLocalVariable(THIS_REF, referenceName(internalClassName), null, l0, l1, 0); mv.visitMaxs(1, 1); @@ -759,13 +758,13 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitGetProperty(PersistentEntity entity, List> persistentProperties, String internalClassName, ClassWriter cw) { - MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "getProperty", + var mv = cw.visitMethod(ACC_PUBLIC, "getProperty", "(Lorg/springframework/data/mapping/PersistentProperty;)Ljava/lang/Object;", "(Lorg/springframework/data/mapping/PersistentProperty<*>;)Ljava/lang/Object;", null); mv.visitCode(); - Label l0 = new Label(); - Label l1 = new Label(); + var l0 = new Label(); + var l1 = new Label(); mv.visitLabel(l0); // Assert.notNull(property) @@ -798,21 +797,21 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitGetPropertySwitch(PersistentEntity entity, List> persistentProperties, String internalClassName, MethodVisitor mv) { - Map propertyStackMap = createPropertyStackMap(persistentProperties); + var propertyStackMap = createPropertyStackMap(persistentProperties); - int[] hashes = new int[propertyStackMap.size()]; - Label[] switchJumpLabels = new Label[propertyStackMap.size()]; + var hashes = new int[propertyStackMap.size()]; + var switchJumpLabels = new Label[propertyStackMap.size()]; List stackmap = new ArrayList<>(propertyStackMap.values()); Collections.sort(stackmap); - for (int i = 0; i < stackmap.size(); i++) { + for (var i = 0; i < stackmap.size(); i++) { - PropertyStackAddress propertyStackAddress = stackmap.get(i); + var propertyStackAddress = stackmap.get(i); hashes[i] = propertyStackAddress.hash; switchJumpLabels[i] = propertyStackAddress.label; } - Label dfltLabel = new Label(); + var dfltLabel = new Label(); mv.visitVarInsn(ALOAD, 1); mv.visitMethodInsn(INVOKEINTERFACE, PERSISTENT_PROPERTY, "getName", @@ -820,7 +819,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitMethodInsn(INVOKEVIRTUAL, JAVA_LANG_STRING, "hashCode", "()I", false); mv.visitLookupSwitchInsn(dfltLabel, hashes, switchJumpLabels); - for (PersistentProperty property : persistentProperties) { + for (var property : persistentProperties) { mv.visitLabel(propertyStackMap.get(property.getName()).label); mv.visitFrame(Opcodes.F_SAME, 0, null, 0, null); @@ -844,7 +843,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitGetProperty0(PersistentEntity entity, PersistentProperty property, MethodVisitor mv, String internalClassName) { - Method getter = property.getGetter(); + var getter = property.getGetter(); if (property.usePropertyAccess() && getter != null) { if (generateMethodHandle(entity, getter)) { @@ -858,9 +857,9 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert // bean.get… mv.visitVarInsn(ALOAD, 2); - int invokeOpCode = INVOKEVIRTUAL; - Class declaringClass = getter.getDeclaringClass(); - boolean interfaceDefinition = declaringClass.isInterface(); + var invokeOpCode = INVOKEVIRTUAL; + var declaringClass = getter.getDeclaringClass(); + var interfaceDefinition = declaringClass.isInterface(); if (interfaceDefinition) { invokeOpCode = INVOKEINTERFACE; @@ -872,7 +871,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert } } else { - Field field = property.getRequiredField(); + var field = property.getRequiredField(); if (generateMethodHandle(entity, field)) { // $fieldGetter.invoke(bean) @@ -922,12 +921,12 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitSetProperty(PersistentEntity entity, List> persistentProperties, String internalClassName, ClassWriter cw) { - MethodVisitor mv = cw.visitMethod(ACC_PUBLIC, "setProperty", + var mv = cw.visitMethod(ACC_PUBLIC, "setProperty", "(Lorg/springframework/data/mapping/PersistentProperty;Ljava/lang/Object;)V", "(Lorg/springframework/data/mapping/PersistentProperty<*>;Ljava/lang/Object;)V", null); mv.visitCode(); - Label l0 = new Label(); + var l0 = new Label(); mv.visitLabel(l0); visitAssertNotNull(mv); @@ -940,7 +939,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert visitSetPropertySwitch(entity, persistentProperties, internalClassName, mv); - Label l1 = new Label(); + var l1 = new Label(); mv.visitLabel(l1); visitThrowUnsupportedOperationException(mv, "No accessor to set property %s!"); @@ -962,20 +961,20 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitSetPropertySwitch(PersistentEntity entity, List> persistentProperties, String internalClassName, MethodVisitor mv) { - Map propertyStackMap = createPropertyStackMap(persistentProperties); + var propertyStackMap = createPropertyStackMap(persistentProperties); - int[] hashes = new int[propertyStackMap.size()]; - Label[] switchJumpLabels = new Label[propertyStackMap.size()]; + var hashes = new int[propertyStackMap.size()]; + var switchJumpLabels = new Label[propertyStackMap.size()]; List stackmap = new ArrayList<>(propertyStackMap.values()); Collections.sort(stackmap); - for (int i = 0; i < stackmap.size(); i++) { - PropertyStackAddress propertyStackAddress = stackmap.get(i); + for (var i = 0; i < stackmap.size(); i++) { + var propertyStackAddress = stackmap.get(i); hashes[i] = propertyStackAddress.hash; switchJumpLabels[i] = propertyStackAddress.label; } - Label dfltLabel = new Label(); + var dfltLabel = new Label(); mv.visitVarInsn(ALOAD, 1); mv.visitMethodInsn(INVOKEINTERFACE, PERSISTENT_PROPERTY, "getName", @@ -983,7 +982,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitMethodInsn(INVOKEVIRTUAL, JAVA_LANG_STRING, "hashCode", "()I", false); mv.visitLookupSwitchInsn(dfltLabel, hashes, switchJumpLabels); - for (PersistentProperty property : persistentProperties) { + for (var property : persistentProperties) { mv.visitLabel(propertyStackMap.get(property.getName()).label); mv.visitFrame(Opcodes.F_SAME, 0, null, 0, null); @@ -1006,8 +1005,8 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitSetProperty0(PersistentEntity entity, PersistentProperty property, MethodVisitor mv, String internalClassName) { - Method setter = property.getSetter(); - Method wither = property.getWither(); + var setter = property.getSetter(); + var wither = property.getWither(); if (property.isImmutable()) { @@ -1085,7 +1084,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitKotlinCopy(PersistentEntity entity, PersistentProperty property, MethodVisitor mv, String internalClassName) { - KotlinCopyMethod kotlinCopyMethod = KotlinCopyMethod.findCopyMethod(entity.getType()) + var kotlinCopyMethod = KotlinCopyMethod.findCopyMethod(entity.getType()) .orElseThrow(() -> new IllegalStateException( String.format("No usable .copy(…) method found in entity %s", entity.getType().getName()))); @@ -1101,17 +1100,17 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert visitInvokeMethodSingleArg(mv, kotlinCopyMethod.getPublicCopyMethod()); } else { - Method copy = kotlinCopyMethod.getSyntheticCopyMethod(); - Class[] parameterTypes = copy.getParameterTypes(); + var copy = kotlinCopyMethod.getSyntheticCopyMethod(); + var parameterTypes = copy.getParameterTypes(); // PersonWithId.copy$default..(bean, object, MASK, null) mv.visitVarInsn(ALOAD, 3); - KotlinCopyByProperty copyByProperty = kotlinCopyMethod.forProperty(property) + var copyByProperty = kotlinCopyMethod.forProperty(property) .orElseThrow(() -> new IllegalStateException( String.format("No usable .copy(…) method found for property %s", property))); - for (int i = 1; i < kotlinCopyMethod.getParameterCount(); i++) { + for (var i = 1; i < kotlinCopyMethod.getParameterCount(); i++) { if (copyByProperty.getParameterPosition() == i) { @@ -1130,7 +1129,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitInsn(Opcodes.ACONST_NULL); - int invokeOpCode = getInvokeOp(copy, false); + var invokeOpCode = getInvokeOp(copy, false); mv.visitMethodInsn(invokeOpCode, Type.getInternalName(copy.getDeclaringClass()), copy.getName(), getArgumentSignature(copy), false); @@ -1190,7 +1189,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitSetField(PersistentEntity entity, PersistentProperty property, MethodVisitor mv, String internalClassName) { - Field field = property.getField(); + var field = property.getField(); if (field != null) { if (generateSetterMethodHandle(entity, field)) { // $fieldSetter.invoke(bean, object) @@ -1205,7 +1204,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert mv.visitVarInsn(ALOAD, 3); mv.visitVarInsn(ALOAD, 2); - Class fieldType = field.getType(); + var fieldType = field.getType(); mv.visitTypeInsn(CHECKCAST, Type.getInternalName(autoboxType(fieldType))); autoboxIfNeeded(autoboxType(fieldType), fieldType, mv); @@ -1225,10 +1224,10 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert */ private static String getArgumentSignature(Method method) { - StringBuilder result = new StringBuilder("("); + var result = new StringBuilder("("); List argumentTypes = new ArrayList<>(); - for (Class parameterType : method.getParameterTypes()) { + for (var parameterType : method.getParameterTypes()) { result.append("%s"); argumentTypes.add(signatureTypeName(parameterType)); @@ -1324,7 +1323,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert if (isAccessible(entity)) { if (Modifier.isProtected(member.getModifiers()) || isDefault(member.getModifiers())) { - Package declaringPackage = member.getDeclaringClass().getPackage(); + var declaringPackage = member.getDeclaringClass().getPackage(); if (declaringPackage != null && !declaringPackage.equals(entity.getType().getPackage())) { return true; @@ -1353,15 +1352,15 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static void visitInvokeMethodSingleArg(MethodVisitor mv, Method method) { - Class[] parameterTypes = method.getParameterTypes(); - Class parameterType = parameterTypes[0]; - Class declaringClass = method.getDeclaringClass(); - boolean interfaceDefinition = declaringClass.isInterface(); + var parameterTypes = method.getParameterTypes(); + var parameterType = parameterTypes[0]; + var declaringClass = method.getDeclaringClass(); + var interfaceDefinition = declaringClass.isInterface(); mv.visitTypeInsn(CHECKCAST, Type.getInternalName(autoboxType(parameterType))); autoboxIfNeeded(autoboxType(parameterType), parameterType, mv); - int invokeOpCode = getInvokeOp(method, interfaceDefinition); + var invokeOpCode = getInvokeOp(method, interfaceDefinition); mv.visitMethodInsn(invokeOpCode, Type.getInternalName(method.getDeclaringClass()), method.getName(), String.format("(%s)%s", signatureTypeName(parameterType), signatureTypeName(method.getReturnType())), @@ -1370,7 +1369,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static int getInvokeOp(Method method, boolean interfaceDefinition) { - int invokeOpCode = Modifier.isStatic(method.getModifiers()) ? INVOKESTATIC : INVOKEVIRTUAL; + var invokeOpCode = Modifier.isStatic(method.getModifiers()) ? INVOKESTATIC : INVOKEVIRTUAL; if (interfaceDefinition) { invokeOpCode = INVOKEINTERFACE; @@ -1383,7 +1382,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert Map stackmap = new HashMap<>(); - for (PersistentProperty property : persistentProperties) { + for (var property : persistentProperties) { stackmap.put(property.getName(), new PropertyStackAddress(new Label(), property.getName().hashCode())); } return stackmap; @@ -1444,7 +1443,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert */ private static boolean hasKotlinCopyMethod(PersistentProperty property) { - Class type = property.getOwner().getType(); + var type = property.getOwner().getType(); if (isAccessible(type) && KotlinDetector.isKotlinType(type)) { return KotlinCopyMethod.findCopyMethod(type).filter(it -> it.supportsProperty(property)).isPresent(); diff --git a/src/main/java/org/springframework/data/mapping/model/ConvertingPropertyAccessor.java b/src/main/java/org/springframework/data/mapping/model/ConvertingPropertyAccessor.java index d8157a683..2d121e5ef 100644 --- a/src/main/java/org/springframework/data/mapping/model/ConvertingPropertyAccessor.java +++ b/src/main/java/org/springframework/data/mapping/model/ConvertingPropertyAccessor.java @@ -70,7 +70,7 @@ public class ConvertingPropertyAccessor extends SimplePersistentPropertyPathA @Override public void setProperty(PersistentPropertyPath> path, @Nullable Object value) { - Object converted = convertIfNecessary(value, path.getRequiredLeafProperty().getType()); + var converted = convertIfNecessary(value, path.getRequiredLeafProperty().getType()); super.setProperty(path, converted); } diff --git a/src/main/java/org/springframework/data/mapping/model/DefaultSpELExpressionEvaluator.java b/src/main/java/org/springframework/data/mapping/model/DefaultSpELExpressionEvaluator.java index 4bc62922f..61e244555 100644 --- a/src/main/java/org/springframework/data/mapping/model/DefaultSpELExpressionEvaluator.java +++ b/src/main/java/org/springframework/data/mapping/model/DefaultSpELExpressionEvaluator.java @@ -18,7 +18,6 @@ package org.springframework.data.mapping.model; import org.springframework.data.mapping.PreferredConstructor.Parameter; import org.springframework.expression.EvaluationContext; -import org.springframework.expression.Expression; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -51,7 +50,7 @@ public class DefaultSpELExpressionEvaluator implements SpELExpressionEvaluator { @SuppressWarnings("unchecked") public T evaluate(String expression) { - Expression parseExpression = factory.getParser().parseExpression(expression); + var parseExpression = factory.getParser().parseExpression(expression); return (T) parseExpression.getValue(factory.getEvaluationContext(source)); } } diff --git a/src/main/java/org/springframework/data/mapping/model/EntityInstantiators.java b/src/main/java/org/springframework/data/mapping/model/EntityInstantiators.java index 535e50181..2a2d707ed 100644 --- a/src/main/java/org/springframework/data/mapping/model/EntityInstantiators.java +++ b/src/main/java/org/springframework/data/mapping/model/EntityInstantiators.java @@ -87,13 +87,13 @@ public class EntityInstantiators { public EntityInstantiator getInstantiatorFor(PersistentEntity entity) { Assert.notNull(entity, "Entity must not be null!"); - Class type = entity.getType(); + var type = entity.getType(); if (!customInstantiators.containsKey(type)) { return fallback; } - EntityInstantiator instantiator = customInstantiators.get(entity.getType()); + var instantiator = customInstantiators.get(entity.getType()); return instantiator == null ? fallback : instantiator; } } diff --git a/src/main/java/org/springframework/data/mapping/model/InstantiationAwarePropertyAccessor.java b/src/main/java/org/springframework/data/mapping/model/InstantiationAwarePropertyAccessor.java index cd1c65ab2..dd800e185 100644 --- a/src/main/java/org/springframework/data/mapping/model/InstantiationAwarePropertyAccessor.java +++ b/src/main/java/org/springframework/data/mapping/model/InstantiationAwarePropertyAccessor.java @@ -19,10 +19,8 @@ import java.util.function.Function; import org.springframework.core.KotlinDetector; import org.springframework.data.annotation.PersistenceConstructor; -import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.PersistentPropertyAccessor; -import org.springframework.data.mapping.PreferredConstructor; import org.springframework.data.mapping.PreferredConstructor.Parameter; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -76,8 +74,8 @@ public class InstantiationAwarePropertyAccessor implements PersistentProperty @Override public void setProperty(PersistentProperty property, @Nullable Object value) { - PersistentEntity owner = property.getOwner(); - PersistentPropertyAccessor delegate = delegateFunction.apply(this.bean); + var owner = property.getOwner(); + var delegate = delegateFunction.apply(this.bean); if (!property.isImmutable() || property.getWither() != null || KotlinDetector.isKotlinType(owner.getType())) { @@ -87,7 +85,7 @@ public class InstantiationAwarePropertyAccessor implements PersistentProperty return; } - PreferredConstructor constructor = owner.getPersistenceConstructor(); + var constructor = owner.getPersistenceConstructor(); if (constructor == null) { throw new IllegalStateException(String.format(NO_SETTER_OR_CONSTRUCTOR, property.getName(), owner.getType())); @@ -106,7 +104,7 @@ public class InstantiationAwarePropertyAccessor implements PersistentProperty } }); - EntityInstantiator instantiator = instantiators.getInstantiatorFor(owner); + var instantiator = instantiators.getInstantiatorFor(owner); this.bean = (T) instantiator.createInstance(owner, new ParameterValueProvider() { diff --git a/src/main/java/org/springframework/data/mapping/model/KotlinClassGeneratingEntityInstantiator.java b/src/main/java/org/springframework/data/mapping/model/KotlinClassGeneratingEntityInstantiator.java index 3c1b4f89a..2b4ca7a2b 100644 --- a/src/main/java/org/springframework/data/mapping/model/KotlinClassGeneratingEntityInstantiator.java +++ b/src/main/java/org/springframework/data/mapping/model/KotlinClassGeneratingEntityInstantiator.java @@ -49,16 +49,16 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta @Override protected EntityInstantiator doCreateEntityInstantiator(PersistentEntity entity) { - PreferredConstructor constructor = entity.getPersistenceConstructor(); + var constructor = entity.getPersistenceConstructor(); if (KotlinReflectionUtils.isSupportedKotlinClass(entity.getType()) && constructor != null) { - PreferredConstructor defaultConstructor = new DefaultingKotlinConstructorResolver(entity) + var defaultConstructor = new DefaultingKotlinConstructorResolver(entity) .getDefaultConstructor(); if (defaultConstructor != null) { - ObjectInstantiator instantiator = createObjectInstantiator(entity, defaultConstructor); + var instantiator = createObjectInstantiator(entity, defaultConstructor); return new DefaultingKotlinClassInstantiatorAdapter(instantiator, constructor); } @@ -81,8 +81,8 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta @SuppressWarnings("unchecked") DefaultingKotlinConstructorResolver(PersistentEntity entity) { - Constructor hit = resolveDefaultConstructor(entity); - PreferredConstructor persistenceConstructor = entity.getPersistenceConstructor(); + var hit = resolveDefaultConstructor(entity); + var persistenceConstructor = entity.getPersistenceConstructor(); if (hit != null && persistenceConstructor != null) { this.defaultConstructor = new PreferredConstructor<>(hit, @@ -95,16 +95,16 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta @Nullable private static Constructor resolveDefaultConstructor(PersistentEntity entity) { - PreferredConstructor persistenceConstructor = entity.getPersistenceConstructor(); + var persistenceConstructor = entity.getPersistenceConstructor(); if (persistenceConstructor == null) { return null; } Constructor hit = null; - Constructor constructor = persistenceConstructor.getConstructor(); + var constructor = persistenceConstructor.getConstructor(); - for (Constructor candidate : entity.getType().getDeclaredConstructors()) { + for (var candidate : entity.getType().getDeclaredConstructors()) { // use only synthetic constructors if (!candidate.isSynthetic()) { @@ -113,15 +113,15 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta // candidates must contain at least two additional parameters (int, DefaultConstructorMarker). // Number of defaulting masks derives from the original constructor arg count - int syntheticParameters = KotlinDefaultMask.getMaskCount(constructor.getParameterCount()) + var syntheticParameters = KotlinDefaultMask.getMaskCount(constructor.getParameterCount()) + /* DefaultConstructorMarker */ 1; if (constructor.getParameterCount() + syntheticParameters != candidate.getParameterCount()) { continue; } - java.lang.reflect.Parameter[] constructorParameters = constructor.getParameters(); - java.lang.reflect.Parameter[] candidateParameters = candidate.getParameters(); + var constructorParameters = constructor.getParameters(); + var candidateParameters = candidate.getParameters(); if (!candidateParameters[candidateParameters.length - 1].getType().getName() .equals("kotlin.jvm.internal.DefaultConstructorMarker")) { @@ -177,7 +177,7 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta DefaultingKotlinClassInstantiatorAdapter(ObjectInstantiator instantiator, PreferredConstructor constructor) { - KFunction kotlinConstructor = ReflectJvmMapping.getKotlinFunction(constructor.getConstructor()); + var kotlinConstructor = ReflectJvmMapping.getKotlinFunction(constructor.getConstructor()); if (kotlinConstructor == null) { throw new IllegalArgumentException( @@ -199,7 +199,7 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta public , P extends PersistentProperty

> T createInstance(E entity, ParameterValueProvider

provider) { - Object[] params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); + var params = extractInvocationArguments(entity.getPersistenceConstructor(), provider); try { return (T) instantiator.newInstance(params); @@ -215,25 +215,25 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta throw new IllegalArgumentException("PreferredConstructor must not be null!"); } - Object[] params = allocateArguments(synthetic.getParameterCount() + var params = allocateArguments(synthetic.getParameterCount() + KotlinDefaultMask.getMaskCount(synthetic.getParameterCount()) + /* DefaultConstructorMarker */1); - int userParameterCount = kParameters.size(); + var userParameterCount = kParameters.size(); - List> parameters = preferredConstructor.getParameters(); + var parameters = preferredConstructor.getParameters(); // Prepare user-space arguments - for (int i = 0; i < userParameterCount; i++) { + for (var i = 0; i < userParameterCount; i++) { - Parameter parameter = parameters.get(i); + var parameter = parameters.get(i); params[i] = provider.getParameterValue(parameter); } - KotlinDefaultMask defaultMask = KotlinDefaultMask.from(constructor, it -> { + var defaultMask = KotlinDefaultMask.from(constructor, it -> { - int index = kParameters.indexOf(it); + var index = kParameters.indexOf(it); - Parameter parameter = parameters.get(index); - Class type = parameter.getType().getType(); + var parameter = parameters.get(index); + var type = parameter.getType().getType(); if (it.isOptional() && params[index] == null) { if (type.isPrimitive()) { @@ -247,9 +247,9 @@ class KotlinClassGeneratingEntityInstantiator extends ClassGeneratingEntityInsta return true; }); - int[] defaulting = defaultMask.getDefaulting(); + var defaulting = defaultMask.getDefaulting(); // append nullability masks to creation arguments - for (int i = 0; i < defaulting.length; i++) { + for (var i = 0; i < defaulting.length; i++) { params[userParameterCount + i] = defaulting[i]; } diff --git a/src/main/java/org/springframework/data/mapping/model/KotlinCopyMethod.java b/src/main/java/org/springframework/data/mapping/model/KotlinCopyMethod.java index ca1b42688..7112cc5d5 100644 --- a/src/main/java/org/springframework/data/mapping/model/KotlinCopyMethod.java +++ b/src/main/java/org/springframework/data/mapping/model/KotlinCopyMethod.java @@ -16,7 +16,6 @@ package org.springframework.data.mapping.model; import kotlin.jvm.JvmClassMappingKt; -import kotlin.reflect.KClass; import kotlin.reflect.KFunction; import kotlin.reflect.KParameter; import kotlin.reflect.KParameter.Kind; @@ -26,7 +25,6 @@ import kotlin.reflect.jvm.ReflectJvmMapping; import java.lang.reflect.Method; import java.lang.reflect.Modifier; -import java.lang.reflect.Type; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -78,13 +76,13 @@ class KotlinCopyMethod { Assert.notNull(type, "Type must not be null!"); - Optional syntheticCopyMethod = findSyntheticCopyMethod(type); + var syntheticCopyMethod = findSyntheticCopyMethod(type); if (!syntheticCopyMethod.isPresent()) { return Optional.empty(); } - Optional publicCopyMethod = syntheticCopyMethod.flatMap(KotlinCopyMethod::findPublicCopyMethod); + var publicCopyMethod = syntheticCopyMethod.flatMap(KotlinCopyMethod::findPublicCopyMethod); return publicCopyMethod.map(method -> new KotlinCopyMethod(method, syntheticCopyMethod.get())); } @@ -123,7 +121,7 @@ class KotlinCopyMethod { */ Optional forProperty(PersistentProperty property) { - int index = KotlinCopyByProperty.findIndex(copyFunction, property.getName()); + var index = KotlinCopyByProperty.findIndex(copyFunction, property.getName()); if (index == -1) { return Optional.empty(); @@ -149,9 +147,9 @@ class KotlinCopyMethod { return false; } - Class[] parameterTypes = publicCopyMethod.getParameterTypes(); + var parameterTypes = publicCopyMethod.getParameterTypes(); - for (int i = 0; i < parameterTypes.length; i++) { + for (var i = 0; i < parameterTypes.length; i++) { if (!parameterTypes[i].equals(persistentProperties.get(i).getType())) { return false; } @@ -162,16 +160,16 @@ class KotlinCopyMethod { private static Optional findPublicCopyMethod(Method defaultKotlinMethod) { - Class type = defaultKotlinMethod.getDeclaringClass(); - KClass kotlinClass = JvmClassMappingKt.getKotlinClass(type); + var type = defaultKotlinMethod.getDeclaringClass(); + var kotlinClass = JvmClassMappingKt.getKotlinClass(type); - KFunction primaryConstructor = KClasses.getPrimaryConstructor(kotlinClass); + var primaryConstructor = KClasses.getPrimaryConstructor(kotlinClass); if (primaryConstructor == null) { return Optional.empty(); } - List constructorArguments = getComponentArguments(primaryConstructor); + var constructorArguments = getComponentArguments(primaryConstructor); return Arrays.stream(type.getDeclaredMethods()).filter(it -> it.getName().equals("copy") // && !it.isSynthetic() // @@ -180,7 +178,7 @@ class KotlinCopyMethod { && it.getParameterCount() == constructorArguments.size()) // .filter(it -> { - KFunction kotlinFunction = ReflectJvmMapping.getKotlinFunction(it); + var kotlinFunction = ReflectJvmMapping.getKotlinFunction(it); if (kotlinFunction == null) { return false; @@ -192,10 +190,10 @@ class KotlinCopyMethod { private static boolean parameterMatches(List constructorArguments, KFunction kotlinFunction) { - boolean foundInstance = false; - int constructorArgIndex = 0; + var foundInstance = false; + var constructorArgIndex = 0; - for (KParameter parameter : kotlinFunction.getParameters()) { + for (var parameter : kotlinFunction.getParameters()) { if (parameter.getKind() == Kind.INSTANCE) { foundInstance = true; @@ -206,7 +204,7 @@ class KotlinCopyMethod { return false; } - KParameter constructorParameter = constructorArguments.get(constructorArgIndex); + var constructorParameter = constructorArguments.get(constructorArgIndex); if (constructorParameter.getName() == null || !constructorParameter.getName().equals(parameter.getName()) || !constructorParameter.getType().equals(parameter.getType())) { @@ -221,8 +219,8 @@ class KotlinCopyMethod { private static Optional findSyntheticCopyMethod(Class type) { - KClass kotlinClass = JvmClassMappingKt.getKotlinClass(type); - KFunction primaryConstructor = KClasses.getPrimaryConstructor(kotlinClass); + var kotlinClass = JvmClassMappingKt.getKotlinClass(type); + var primaryConstructor = KClasses.getPrimaryConstructor(kotlinClass); if (primaryConstructor == null) { return Optional.empty(); @@ -242,9 +240,9 @@ class KotlinCopyMethod { */ private static boolean matchesPrimaryConstructor(Class[] parameterTypes, KFunction primaryConstructor) { - List constructorArguments = getComponentArguments(primaryConstructor); + var constructorArguments = getComponentArguments(primaryConstructor); - int defaultingArgs = KotlinDefaultMask.from(primaryConstructor, kParameter -> false).getDefaulting().length; + var defaultingArgs = KotlinDefaultMask.from(primaryConstructor, kParameter -> false).getDefaulting().length; if (parameterTypes.length != 1 /* $this */ + constructorArguments.size() + defaultingArgs + 1 /* object marker */) { return false; @@ -255,9 +253,9 @@ class KotlinCopyMethod { return false; } - for (int i = 0; i < constructorArguments.size(); i++) { + for (var i = 0; i < constructorArguments.size(); i++) { - KParameter kParameter = constructorArguments.get(i); + var kParameter = constructorArguments.get(i); if (!isAssignableFrom(parameterTypes[i + 1], kParameter.getType())) { return false; @@ -276,9 +274,9 @@ class KotlinCopyMethod { private static boolean isAssignableFrom(Class target, KType source) { - Type parameterType = ReflectJvmMapping.getJavaType(source); + var parameterType = ReflectJvmMapping.getJavaType(source); - Class rawClass = ResolvableType.forType(parameterType).getRawClass(); + var rawClass = ResolvableType.forType(parameterType).getRawClass(); return rawClass == null || target.isAssignableFrom(rawClass); } @@ -302,7 +300,7 @@ class KotlinCopyMethod { static int findIndex(KFunction function, String parameterName) { - for (KParameter parameter : function.getParameters()) { + for (var parameter : function.getParameters()) { if (parameterName.equals(parameter.getName())) { return parameter.getIndex(); } diff --git a/src/main/java/org/springframework/data/mapping/model/KotlinDefaultMask.java b/src/main/java/org/springframework/data/mapping/model/KotlinDefaultMask.java index 7db4d2a2e..b806aa643 100644 --- a/src/main/java/org/springframework/data/mapping/model/KotlinDefaultMask.java +++ b/src/main/java/org/springframework/data/mapping/model/KotlinDefaultMask.java @@ -45,7 +45,7 @@ public class KotlinDefaultMask { */ public void forEach(IntConsumer maskCallback) { - for (int i : defaulting) { + for (var i : defaulting) { maskCallback.accept(i); } } @@ -71,12 +71,12 @@ public class KotlinDefaultMask { public static KotlinDefaultMask from(KFunction function, Predicate isPresent) { List masks = new ArrayList<>(); - int index = 0; - int mask = 0; + var index = 0; + var mask = 0; - List parameters = function.getParameters(); + var parameters = function.getParameters(); - for (KParameter parameter : parameters) { + for (var parameter : parameters) { if (index != 0 && index % Integer.SIZE == 0) { masks.add(mask); diff --git a/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java b/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java index 6ac1494d6..7cbae3037 100644 --- a/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java +++ b/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java @@ -15,7 +15,6 @@ */ package org.springframework.data.mapping.model; -import kotlin.reflect.KFunction; import kotlin.reflect.jvm.ReflectJvmMapping; import java.lang.reflect.Constructor; @@ -87,7 +86,7 @@ public class MappingInstantiationException extends RuntimeException { Optional> constructor = Optional.ofNullable(it.getPersistenceConstructor()); List toStringArgs = new ArrayList<>(arguments.size()); - for (Object o : arguments) { + for (var o : arguments) { toStringArgs.add(ObjectUtils.nullSafeToString(o)); } @@ -100,11 +99,11 @@ public class MappingInstantiationException extends RuntimeException { private static String toString(PreferredConstructor preferredConstructor) { - Constructor constructor = preferredConstructor.getConstructor(); + var constructor = preferredConstructor.getConstructor(); if (KotlinReflectionUtils.isSupportedKotlinClass(constructor.getDeclaringClass())) { - KFunction kotlinFunction = ReflectJvmMapping.getKotlinFunction(constructor); + var kotlinFunction = ReflectJvmMapping.getKotlinFunction(constructor); if (kotlinFunction != null) { return kotlinFunction.toString(); diff --git a/src/main/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategy.java b/src/main/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategy.java index 8bd4c4ea6..5345e4026 100644 --- a/src/main/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategy.java +++ b/src/main/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategy.java @@ -53,7 +53,7 @@ class PersistentEntityIsNewStrategy implements IsNewStrategy { ? entity.getRequiredVersionProperty().getType() // : entity.hasIdProperty() ? entity.getRequiredIdProperty().getType() : null; - Class type = valueType; + var type = valueType; if (type != null && type.isPrimitive()) { @@ -93,7 +93,7 @@ class PersistentEntityIsNewStrategy implements IsNewStrategy { @Override public boolean isNew(Object entity) { - Object value = valueLookup.apply(entity); + var value = valueLookup.apply(entity); if (value == null) { return true; diff --git a/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java b/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java index 8e155ae6d..a54807be1 100644 --- a/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java +++ b/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java @@ -18,7 +18,6 @@ package org.springframework.data.mapping.model; import org.springframework.data.mapping.MappingException; import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.PersistentProperty; -import org.springframework.data.mapping.PreferredConstructor; import org.springframework.data.mapping.PreferredConstructor.Parameter; import org.springframework.lang.Nullable; @@ -52,19 +51,19 @@ public class PersistentEntityParameterValueProvider

T getParameterValue(Parameter parameter) { - PreferredConstructor constructor = entity.getPersistenceConstructor(); + var constructor = entity.getPersistenceConstructor(); if (constructor != null && constructor.isEnclosingClassParameter(parameter)) { return (T) parent; } - String name = parameter.getName(); + var name = parameter.getName(); if (name == null) { throw new MappingException(String.format("Parameter %s does not have a name!", parameter)); } - P property = entity.getPersistentProperty(name); + var property = entity.getPersistentProperty(name); if (property == null) { throw new MappingException( diff --git a/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java b/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java index 09d4fa243..bf9691faf 100644 --- a/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java +++ b/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java @@ -16,11 +16,9 @@ package org.springframework.data.mapping.model; import kotlin.jvm.JvmClassMappingKt; -import kotlin.reflect.KFunction; import kotlin.reflect.full.KClasses; import kotlin.reflect.jvm.ReflectJvmMapping; -import java.lang.annotation.Annotation; import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.Arrays; @@ -113,7 +111,7 @@ public interface PreferredConstructorDiscoverer> candidates = new ArrayList<>(); Constructor noArg = null; - for (Constructor candidate : rawOwningType.getDeclaredConstructors()) { + for (var candidate : rawOwningType.getDeclaredConstructors()) { // Synthetic constructors should not be considered if (candidate.isSynthetic()) { @@ -164,14 +162,14 @@ public interface PreferredConstructorDiscoverer { - KFunction primaryConstructor = KClasses + var primaryConstructor = KClasses .getPrimaryConstructor(JvmClassMappingKt.getKotlinClass(type.getType())); if (primaryConstructor == null) { return DEFAULT.discover(type, entity); } - Constructor javaConstructor = ReflectJvmMapping.getJavaConstructor(primaryConstructor); + var javaConstructor = ReflectJvmMapping.getJavaConstructor(primaryConstructor); return javaConstructor != null ? buildPreferredConstructor(javaConstructor, type, entity) : null; }); @@ -209,17 +207,17 @@ public interface PreferredConstructorDiscoverer((Constructor) constructor); } - List> parameterTypes = typeInformation.getParameterTypes(constructor); - String[] parameterNames = PARAMETER_NAME_DISCOVERER.getParameterNames(constructor); + var parameterTypes = typeInformation.getParameterTypes(constructor); + var parameterNames = PARAMETER_NAME_DISCOVERER.getParameterNames(constructor); Parameter[] parameters = new Parameter[parameterTypes.size()]; - Annotation[][] parameterAnnotations = constructor.getParameterAnnotations(); + var parameterAnnotations = constructor.getParameterAnnotations(); - for (int i = 0; i < parameterTypes.size(); i++) { + for (var i = 0; i < parameterTypes.size(); i++) { - String name = parameterNames == null || parameterNames.length <= i ? null : parameterNames[i]; - TypeInformation type = parameterTypes.get(i); - Annotation[] annotations = parameterAnnotations[i]; + var name = parameterNames == null || parameterNames.length <= i ? null : parameterNames[i]; + var type = parameterTypes.get(i); + var annotations = parameterAnnotations[i]; parameters[i] = new Parameter(name, type, annotations, entity); } diff --git a/src/main/java/org/springframework/data/mapping/model/Property.java b/src/main/java/org/springframework/data/mapping/model/Property.java index 23d0710cb..941f2cce0 100644 --- a/src/main/java/org/springframework/data/mapping/model/Property.java +++ b/src/main/java/org/springframework/data/mapping/model/Property.java @@ -223,12 +223,10 @@ public class Property { return true; } - if (!(obj instanceof Property)) { + if (!(obj instanceof Property that)) { return false; } - Property that = (Property) obj; - return this.field.isPresent() ? this.field.equals(that.field) : this.descriptor.equals(that.descriptor); } @@ -278,8 +276,8 @@ public class Property { private static Optional findWither(TypeInformation owner, String propertyName, Class rawType) { - AtomicReference resultHolder = new AtomicReference<>(); - String methodName = String.format("with%s", StringUtils.capitalize(propertyName)); + var resultHolder = new AtomicReference(); + var methodName = String.format("with%s", StringUtils.capitalize(propertyName)); ReflectionUtils.doWithMethods(owner.getType(), it -> { @@ -288,7 +286,7 @@ public class Property { } }, it -> isMethodWithSingleParameterOfType(it, methodName, rawType)); - Method method = resultHolder.get(); + var method = resultHolder.get(); return method != null ? Optional.of(method) : Optional.empty(); } diff --git a/src/main/java/org/springframework/data/mapping/model/ReflectionEntityInstantiator.java b/src/main/java/org/springframework/data/mapping/model/ReflectionEntityInstantiator.java index e4335134a..55ecd879a 100644 --- a/src/main/java/org/springframework/data/mapping/model/ReflectionEntityInstantiator.java +++ b/src/main/java/org/springframework/data/mapping/model/ReflectionEntityInstantiator.java @@ -44,15 +44,15 @@ enum ReflectionEntityInstantiator implements EntityInstantiator { public , P extends PersistentProperty

> T createInstance(E entity, ParameterValueProvider

provider) { - PreferredConstructor constructor = entity.getPersistenceConstructor(); + var constructor = entity.getPersistenceConstructor(); if (constructor == null) { try { Class clazz = entity.getType(); if (clazz.isArray()) { - Class ctype = clazz; - int dims = 0; + var ctype = clazz; + var dims = 0; while (ctype.isArray()) { ctype = ctype.getComponentType(); dims++; @@ -65,10 +65,10 @@ enum ReflectionEntityInstantiator implements EntityInstantiator { throw new MappingInstantiationException(entity, Collections.emptyList(), e); } } - int parameterCount = constructor.getConstructor().getParameterCount(); + var parameterCount = constructor.getConstructor().getParameterCount(); - Object[] params = parameterCount == 0 ? EMPTY_ARGS : new Object[parameterCount]; - int i = 0; + var params = parameterCount == 0 ? EMPTY_ARGS : new Object[parameterCount]; + var i = 0; for (Parameter parameter : constructor.getParameters()) { params[i++] = provider.getParameterValue(parameter); } diff --git a/src/main/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessor.java b/src/main/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessor.java index bbd2ca03b..60b807164 100644 --- a/src/main/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessor.java +++ b/src/main/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessor.java @@ -24,6 +24,7 @@ import java.util.stream.Collectors; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.core.CollectionFactory; import org.springframework.data.mapping.AccessOptions; import org.springframework.data.mapping.AccessOptions.GetOptions; @@ -31,7 +32,6 @@ import org.springframework.data.mapping.AccessOptions.GetOptions.GetNulls; import org.springframework.data.mapping.AccessOptions.SetOptions; import org.springframework.data.mapping.AccessOptions.SetOptions.SetNulls; import org.springframework.data.mapping.MappingException; -import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.PersistentPropertyAccessor; import org.springframework.data.mapping.PersistentPropertyPath; @@ -97,7 +97,7 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA public Object getProperty(PersistentPropertyPath> path, GetOptions options) { Object bean = getBean(); - Object current = bean; + var current = bean; if (path.isEmpty()) { return bean; @@ -109,8 +109,8 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA return handleNull(path, options.getNullValues().toNullHandling()); } - PersistentEntity> entity = property.getOwner(); - PersistentPropertyAccessor accessor = entity.getPropertyAccessor(current); + var entity = property.getOwner(); + var accessor = entity.getPropertyAccessor(current); current = accessor.getProperty(property); } @@ -148,18 +148,18 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA Assert.notNull(path, "PersistentPropertyPath must not be null!"); Assert.isTrue(!path.isEmpty(), "PersistentPropertyPath must not be empty!"); - PersistentPropertyPath> parentPath = path.getParentPath(); - PersistentProperty leafProperty = path.getRequiredLeafProperty(); + var parentPath = path.getParentPath(); + var leafProperty = path.getRequiredLeafProperty(); if (!options.propagate(parentPath.getLeafProperty())) { return; } - GetOptions lookupOptions = options.getNullHandling() != REJECT + var lookupOptions = options.getNullHandling() != REJECT ? DEFAULT_GET_OPTIONS.withNullValues(GetNulls.EARLY_RETURN) : DEFAULT_GET_OPTIONS; - Object parent = parentPath.isEmpty() ? getBean() : getProperty(parentPath, lookupOptions); + var parent = parentPath.isEmpty() ? getBean() : getProperty(parentPath, lookupOptions); if (parent == null) { handleNull(path, options.getNullHandling()); @@ -172,7 +172,7 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA return; } - PersistentProperty parentProperty = parentPath.getRequiredLeafProperty(); + var parentProperty = parentPath.getRequiredLeafProperty(); Object newValue; @@ -196,7 +196,7 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA return; } - Map result = CollectionFactory.createApproximateMap(source, source.size()); + var result = CollectionFactory.createApproximateMap(source, source.size()); for (Entry entry : source.entrySet()) { result.put(entry.getKey(), setValue(entry.getValue(), leafProperty, value)); @@ -225,14 +225,14 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA return null; } - String nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; + var nullIntermediateMessage = "Cannot lookup property %s on null intermediate! Original path was: %s on %s."; if (SetNulls.SKIP_AND_LOG.equals(handling)) { logger.info(nullIntermediateMessage); return null; } - PersistentPropertyPath> parentPath = path.getParentPath(); + var parentPath = path.getParentPath(); throw new MappingException(String.format(nullIntermediateMessage, parentPath.getLeafProperty(), path.toDotPath(), getBean().getClass().getName())); @@ -249,7 +249,7 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA */ private static Object setValue(Object parent, PersistentProperty property, @Nullable Object newValue) { - PersistentPropertyAccessor accessor = property.getAccessorForOwner(parent); + var accessor = property.getAccessorForOwner(parent); accessor.setProperty(property, newValue); return accessor.getBean(); } @@ -269,7 +269,7 @@ class SimplePersistentPropertyPathAccessor implements PersistentPropertyPathA Assert.notNull(property, "Property must not be null!"); Assert.notNull(type, "Type must not be null!"); - Object value = getProperty(property); + var value = getProperty(property); if (value == null) { return null; diff --git a/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java b/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java index 42094fbec..cc0e53760 100644 --- a/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java +++ b/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java @@ -21,7 +21,6 @@ import java.util.Date; import java.util.HashSet; import java.util.Locale; import java.util.Map; -import java.util.Map.Entry; import java.util.Set; import java.util.WeakHashMap; @@ -123,7 +122,7 @@ public class SimpleTypeHolder { private void registerCachePositives(Map, Boolean> source) { - for (Entry, Boolean> entry : source.entrySet()) { + for (var entry : source.entrySet()) { if (!entry.getValue()) { continue; @@ -143,8 +142,8 @@ public class SimpleTypeHolder { Assert.notNull(type, "Type must not be null!"); - Map, Boolean> localSimpleTypes = this.simpleTypes; - Boolean isSimpleType = localSimpleTypes.get(type); + var localSimpleTypes = this.simpleTypes; + var isSimpleType = localSimpleTypes.get(type); if (Object.class.equals(type) || Enum.class.isAssignableFrom(type)) { return true; @@ -154,13 +153,13 @@ public class SimpleTypeHolder { return isSimpleType; } - String typeName = type.getName(); + var typeName = type.getName(); if (typeName.startsWith("java.lang") || type.getName().startsWith("java.time") || typeName.equals("kotlin.Unit")) { return true; } - for (Class simpleType : localSimpleTypes.keySet()) { + for (var simpleType : localSimpleTypes.keySet()) { if (simpleType.isAssignableFrom(type)) { diff --git a/src/main/java/org/springframework/data/mapping/model/SpELContext.java b/src/main/java/org/springframework/data/mapping/model/SpELContext.java index ea8010727..8440d6338 100644 --- a/src/main/java/org/springframework/data/mapping/model/SpELContext.java +++ b/src/main/java/org/springframework/data/mapping/model/SpELContext.java @@ -100,7 +100,7 @@ public class SpELContext { */ public EvaluationContext getEvaluationContext(Object source) { - StandardEvaluationContext evaluationContext = new StandardEvaluationContext(source); + var evaluationContext = new StandardEvaluationContext(source); evaluationContext.addPropertyAccessor(accessor); if (factory != null) { diff --git a/src/main/java/org/springframework/data/mapping/model/SpELExpressionParameterValueProvider.java b/src/main/java/org/springframework/data/mapping/model/SpELExpressionParameterValueProvider.java index 390d74951..f663288f0 100644 --- a/src/main/java/org/springframework/data/mapping/model/SpELExpressionParameterValueProvider.java +++ b/src/main/java/org/springframework/data/mapping/model/SpELExpressionParameterValueProvider.java @@ -53,7 +53,7 @@ public class SpELExpressionParameterValueProvider

interfaceClass) { - Method[] methods = ReflectionUtils.getAllDeclaredMethods(interfaceClass); + var methods = ReflectionUtils.getAllDeclaredMethods(interfaceClass); - for (Method method : methods) { + for (var method : methods) { if (method.isDefault()) { return true; } @@ -74,21 +74,21 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); + var method = invocation.getMethod(); if (!method.isDefault()) { return invocation.proceed(); } - Object[] arguments = invocation.getArguments(); - Object proxy = ((ProxyMethodInvocation) invocation).getProxy(); + var arguments = invocation.getArguments(); + var proxy = ((ProxyMethodInvocation) invocation).getProxy(); return getMethodHandle(method).bindTo(proxy).invokeWithArguments(arguments); } private MethodHandle getMethodHandle(Method method) throws Exception { - MethodHandle handle = methodHandleCache.get(method); + var handle = methodHandleCache.get(method); if (handle == null) { @@ -139,7 +139,7 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor private Lookup getLookup(Class declaringClass, Method privateLookupIn) { - Lookup lookup = MethodHandles.lookup(); + var lookup = MethodHandles.lookup(); try { return (Lookup) privateLookupIn.invoke(MethodHandles.class, declaringClass, lookup); @@ -168,7 +168,7 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor throw new IllegalStateException("Could not obtain MethodHandles.lookup constructor!"); } - Constructor constructor = this.constructor.get(); + var constructor = this.constructor.get(); return constructor.newInstance(method.getDeclaringClass()).unreflectSpecial(method, method.getDeclaringClass()); } @@ -212,7 +212,7 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor private static MethodHandle doLookup(Method method, Lookup lookup) throws NoSuchMethodException, IllegalAccessException { - MethodType methodType = MethodType.methodType(method.getReturnType(), method.getParameterTypes()); + var methodType = MethodType.methodType(method.getReturnType(), method.getParameterTypes()); if (Modifier.isStatic(method.getModifiers())) { return lookup.findStatic(method.getDeclaringClass(), method.getName(), methodType); @@ -243,7 +243,7 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor */ public static MethodHandleLookup getMethodHandleLookup() { - for (MethodHandleLookup it : MethodHandleLookup.values()) { + for (var it : MethodHandleLookup.values()) { if (it.isAvailable()) { return it; @@ -258,7 +258,7 @@ public class DefaultMethodInvokingMethodInterceptor implements MethodInterceptor try { - Constructor constructor = Lookup.class.getDeclaredConstructor(Class.class); + var constructor = Lookup.class.getDeclaredConstructor(Class.class); ReflectionUtils.makeAccessible(constructor); return constructor; diff --git a/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java b/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java index 4426f3320..b5a19bdb5 100644 --- a/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java +++ b/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java @@ -17,7 +17,6 @@ package org.springframework.data.projection; import java.beans.PropertyDescriptor; import java.io.IOException; -import java.lang.reflect.Method; import java.util.Arrays; import java.util.Comparator; import java.util.List; @@ -34,7 +33,6 @@ import org.springframework.beans.BeanUtils; import org.springframework.core.log.LogMessage; import org.springframework.core.type.MethodMetadata; import org.springframework.data.type.MethodsMetadata; -import org.springframework.data.type.classreading.MethodsMetadataReader; import org.springframework.data.type.classreading.MethodsMetadataReaderFactory; import org.springframework.data.util.StreamUtils; import org.springframework.util.Assert; @@ -117,7 +115,7 @@ class DefaultProjectionInformation implements ProjectionInformation { */ private static boolean hasDefaultGetter(PropertyDescriptor descriptor) { - Method method = descriptor.getReadMethod(); + var method = descriptor.getReadMethod(); return method != null && method.isDefault(); } @@ -167,13 +165,13 @@ class DefaultProjectionInformation implements ProjectionInformation { */ private Stream collectDescriptors() { - Stream allButDefaultGetters = Arrays.stream(BeanUtils.getPropertyDescriptors(type)) // + var allButDefaultGetters = Arrays.stream(BeanUtils.getPropertyDescriptors(type)) // .filter(it -> !hasDefaultGetter(it)); - Stream ownDescriptors = metadata.map(it -> filterAndOrder(allButDefaultGetters, it)) + var ownDescriptors = metadata.map(it -> filterAndOrder(allButDefaultGetters, it)) .orElse(allButDefaultGetters); - Stream superTypeDescriptors = metadata.map(this::fromMetadata) // + var superTypeDescriptors = metadata.map(this::fromMetadata) // .orElseGet(this::fromType) // .flatMap(it -> new PropertyDescriptorSource(it).collectDescriptors()); @@ -191,7 +189,7 @@ class DefaultProjectionInformation implements ProjectionInformation { private static Stream filterAndOrder(Stream source, MethodsMetadata metadata) { - Map orderedMethods = getMethodOrder(metadata); + var orderedMethods = getMethodOrder(metadata); if (orderedMethods.isEmpty()) { return source; @@ -232,8 +230,8 @@ class DefaultProjectionInformation implements ProjectionInformation { try { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(type.getClassLoader()); - MethodsMetadataReader metadataReader = factory.getMetadataReader(ClassUtils.getQualifiedName(type)); + var factory = new MethodsMetadataReaderFactory(type.getClassLoader()); + var metadataReader = factory.getMetadataReader(ClassUtils.getQualifiedName(type)); return Optional.of(metadataReader.getMethodsMetadata()); @@ -268,7 +266,7 @@ class DefaultProjectionInformation implements ProjectionInformation { */ private static Map getMethodOrder(MethodsMetadata metadata) { - List methods = metadata.getMethods() // + var methods = metadata.getMethods() // .stream() // .map(MethodMetadata::getMethodName) // .distinct() // diff --git a/src/main/java/org/springframework/data/projection/MapAccessingMethodInterceptor.java b/src/main/java/org/springframework/data/projection/MapAccessingMethodInterceptor.java index d86404057..126c6a9f0 100644 --- a/src/main/java/org/springframework/data/projection/MapAccessingMethodInterceptor.java +++ b/src/main/java/org/springframework/data/projection/MapAccessingMethodInterceptor.java @@ -15,7 +15,6 @@ */ package org.springframework.data.projection; -import java.lang.reflect.Method; import java.util.Map; import org.aopalliance.intercept.MethodInterceptor; @@ -50,13 +49,13 @@ class MapAccessingMethodInterceptor implements MethodInterceptor { @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); + var method = invocation.getMethod(); if (ReflectionUtils.isObjectMethod(method)) { return invocation.proceed(); } - Accessor accessor = new Accessor(method); + var accessor = new Accessor(method); if (accessor.isGetter()) { return map.get(accessor.getPropertyName()); diff --git a/src/main/java/org/springframework/data/projection/ProjectingMethodInterceptor.java b/src/main/java/org/springframework/data/projection/ProjectingMethodInterceptor.java index e0b2c8a99..f19071cb4 100644 --- a/src/main/java/org/springframework/data/projection/ProjectingMethodInterceptor.java +++ b/src/main/java/org/springframework/data/projection/ProjectingMethodInterceptor.java @@ -70,11 +70,11 @@ class ProjectingMethodInterceptor implements MethodInterceptor { public Object invoke(@SuppressWarnings("null") @NonNull MethodInvocation invocation) throws Throwable { TypeInformation type = ClassTypeInformation.fromReturnTypeOf(invocation.getMethod()); - TypeInformation resultType = type; - TypeInformation typeToReturn = type; + var resultType = type; + var typeToReturn = type; - Object result = delegate.invoke(invocation); - boolean applyWrapper = false; + var result = delegate.invoke(invocation); + var applyWrapper = false; if (NullableWrapperConverters.supports(type.getType()) && (result == null || !NullableWrapperConverters.supports(result.getClass()))) { @@ -98,7 +98,7 @@ class ProjectingMethodInterceptor implements MethodInterceptor { return null; } - Class targetType = type.getType(); + var targetType = type.getType(); if (type.isCollectionLike() && !ClassUtils.isPrimitiveArray(targetType)) { return projectCollectionElements(asCollection(result), type); @@ -127,9 +127,9 @@ class ProjectingMethodInterceptor implements MethodInterceptor { */ private Object projectCollectionElements(Collection sources, TypeInformation type) { - Class rawType = type.getType(); - TypeInformation componentType = type.getComponentType(); - Collection result = CollectionFactory.createCollection(rawType.isArray() ? List.class : rawType, + var rawType = type.getType(); + var componentType = type.getComponentType(); + var result = CollectionFactory.createCollection(rawType.isArray() ? List.class : rawType, componentType != null ? componentType.getType() : null, sources.size()); for (Object source : sources) { @@ -153,7 +153,7 @@ class ProjectingMethodInterceptor implements MethodInterceptor { */ private Map projectMapValues(Map sources, TypeInformation type) { - Map result = CollectionFactory.createMap(type.getType(), sources.size()); + var result = CollectionFactory.createMap(type.getType(), sources.size()); for (Entry source : sources.entrySet()) { result.put(source.getKey(), getProjection(source.getValue(), type.getRequiredMapValueType().getType())); diff --git a/src/main/java/org/springframework/data/projection/PropertyAccessingMethodInterceptor.java b/src/main/java/org/springframework/data/projection/PropertyAccessingMethodInterceptor.java index 7dd62085f..8e3e876cc 100644 --- a/src/main/java/org/springframework/data/projection/PropertyAccessingMethodInterceptor.java +++ b/src/main/java/org/springframework/data/projection/PropertyAccessingMethodInterceptor.java @@ -57,13 +57,13 @@ class PropertyAccessingMethodInterceptor implements MethodInterceptor { @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); + var method = invocation.getMethod(); if (ReflectionUtils.isObjectMethod(method)) { return invocation.proceed(); } - PropertyDescriptor descriptor = BeanUtils.findPropertyForMethod(method); + var descriptor = BeanUtils.findPropertyForMethod(method); if (descriptor == null) { throw new IllegalStateException("Invoked method is not a property accessor!"); diff --git a/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java b/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java index 25bbb5604..e43571bf7 100644 --- a/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java +++ b/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java @@ -111,7 +111,7 @@ class ProxyProjectionFactory implements ProjectionFactory, BeanClassLoaderAware return (T) source; } - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setTarget(source); factory.setOpaque(true); factory.setInterfaces(projectionType, TargetAware.class); @@ -178,7 +178,7 @@ class ProxyProjectionFactory implements ProjectionFactory, BeanClassLoaderAware */ private MethodInterceptor getMethodInterceptor(Object source, Class projectionType) { - MethodInterceptor propertyInvocationInterceptor = getFactoryFor(source, projectionType) + var propertyInvocationInterceptor = getFactoryFor(source, projectionType) .createMethodInterceptor(source, projectionType); return new ProjectingMethodInterceptor(this, @@ -194,7 +194,7 @@ class ProxyProjectionFactory implements ProjectionFactory, BeanClassLoaderAware */ private MethodInterceptorFactory getFactoryFor(Object source, Class projectionType) { - for (MethodInterceptorFactory factory : factories) { + for (var factory : factories) { if (factory.supports(source, projectionType)) { return factory; } diff --git a/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java b/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java index 23a86a843..e41db025f 100644 --- a/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java +++ b/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java @@ -16,11 +16,11 @@ package org.springframework.data.projection; import java.beans.PropertyDescriptor; -import java.lang.reflect.Method; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import org.aopalliance.intercept.MethodInterceptor; + import org.springframework.beans.BeansException; import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.BeanFactoryAware; @@ -95,7 +95,7 @@ public class SpelAwareProxyProjectionFactory extends ProxyProjectionFactory impl Assert.notNull(type, "Type must not be null!"); - AnnotationDetectionMethodCallback callback = new AnnotationDetectionMethodCallback<>(Value.class); + var callback = new AnnotationDetectionMethodCallback(Value.class); ReflectionUtils.doWithMethods(type, callback); return callback.hasFoundAnnotation(); @@ -118,7 +118,7 @@ public class SpelAwareProxyProjectionFactory extends ProxyProjectionFactory impl return false; } - Method readMethod = descriptor.getReadMethod(); + var readMethod = descriptor.getReadMethod(); if (readMethod == null) { return false; diff --git a/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java b/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java index d2ee3c19d..37d79dcd1 100644 --- a/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java +++ b/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java @@ -15,7 +15,6 @@ */ package org.springframework.data.projection; -import java.lang.reflect.Method; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -28,7 +27,6 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.expression.BeanFactoryResolver; import org.springframework.context.expression.MapAccessor; import org.springframework.core.annotation.AnnotationUtils; -import org.springframework.data.annotation.PersistenceConstructor; import org.springframework.expression.EvaluationContext; import org.springframework.expression.Expression; import org.springframework.expression.ParserContext; @@ -78,7 +76,7 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { Assert.notNull(parser, "SpelExpressionParser must not be null!"); Assert.notNull(targetInterface, "Target interface must not be null!"); - StandardEvaluationContext evaluationContext = new StandardEvaluationContext(); + var evaluationContext = new StandardEvaluationContext(); if (target instanceof Map) { evaluationContext.addPropertyAccessor(new MapAccessor()); @@ -109,9 +107,9 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { Map expressions = new HashMap<>(); - for (Method method : targetInterface.getMethods()) { + for (var method : targetInterface.getMethods()) { - Value value = AnnotationUtils.findAnnotation(method, Value.class); + var value = AnnotationUtils.findAnnotation(method, Value.class); if (value == null) { continue; } @@ -134,7 +132,7 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Expression expression = expressions.get(invocation.getMethod().hashCode()); + var expression = expressions.get(invocation.getMethod().hashCode()); if (expression == null) { return delegate.invoke(invocation); @@ -181,12 +179,10 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { return true; } - if (!(o instanceof TargetWrapper)) { + if (!(o instanceof TargetWrapper that)) { return false; } - TargetWrapper that = (TargetWrapper) o; - if (!ObjectUtils.nullSafeEquals(target, that.target)) { return false; } @@ -200,7 +196,7 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(target); + var result = ObjectUtils.nullSafeHashCode(target); result = 31 * result + ObjectUtils.nullSafeHashCode(args); return result; } diff --git a/src/main/java/org/springframework/data/querydsl/QSort.java b/src/main/java/org/springframework/data/querydsl/QSort.java index e64840436..236255188 100644 --- a/src/main/java/org/springframework/data/querydsl/QSort.java +++ b/src/main/java/org/springframework/data/querydsl/QSort.java @@ -165,7 +165,7 @@ public class QSort extends Sort implements Serializable { */ private static String preparePropertyPath(Path path) { - Path root = path.getRoot(); + var root = path.getRoot(); return root == null || path.equals(root) ? path.toString() : path.toString().substring(root.toString().length() + 1); diff --git a/src/main/java/org/springframework/data/querydsl/QuerydslUtils.java b/src/main/java/org/springframework/data/querydsl/QuerydslUtils.java index cad88bf47..2a4e3fb16 100644 --- a/src/main/java/org/springframework/data/querydsl/QuerydslUtils.java +++ b/src/main/java/org/springframework/data/querydsl/QuerydslUtils.java @@ -19,7 +19,6 @@ import org.springframework.lang.Nullable; import org.springframework.util.StringUtils; import com.querydsl.core.types.Path; -import com.querydsl.core.types.PathMetadata; import com.querydsl.core.types.PathType; /** @@ -58,8 +57,8 @@ public abstract class QuerydslUtils { return tail; } - PathMetadata metadata = path.getMetadata(); - Path parent = metadata.getParent(); + var metadata = path.getMetadata(); + var parent = metadata.getParent(); if (parent == null) { return tail; @@ -69,7 +68,7 @@ public abstract class QuerydslUtils { return toDotPath(parent, tail); } - Object element = metadata.getElement(); + var element = metadata.getElement(); if (element == null || !StringUtils.hasText(element.toString())) { return toDotPath(parent, tail); diff --git a/src/main/java/org/springframework/data/querydsl/SimpleEntityPathResolver.java b/src/main/java/org/springframework/data/querydsl/SimpleEntityPathResolver.java index 2daba925e..c3ba14974 100644 --- a/src/main/java/org/springframework/data/querydsl/SimpleEntityPathResolver.java +++ b/src/main/java/org/springframework/data/querydsl/SimpleEntityPathResolver.java @@ -64,11 +64,11 @@ public class SimpleEntityPathResolver implements EntityPathResolver { @SuppressWarnings("unchecked") public EntityPath createPath(Class domainClass) { - String pathClassName = getQueryClassName(domainClass); + var pathClassName = getQueryClassName(domainClass); try { - Class pathClass = ClassUtils.forName(pathClassName, domainClass.getClassLoader()); + var pathClass = ClassUtils.forName(pathClassName, domainClass.getClassLoader()); return getStaticFieldOfType(pathClass)// .map(it -> (EntityPath) ReflectionUtils.getField(it, null))// @@ -88,17 +88,17 @@ public class SimpleEntityPathResolver implements EntityPathResolver { */ private Optional getStaticFieldOfType(Class type) { - for (Field field : type.getDeclaredFields()) { + for (var field : type.getDeclaredFields()) { - boolean isStatic = Modifier.isStatic(field.getModifiers()); - boolean hasSameType = type.equals(field.getType()); + var isStatic = Modifier.isStatic(field.getModifiers()); + var hasSameType = type.equals(field.getType()); if (isStatic && hasSameType) { return Optional.of(field); } } - Class superclass = type.getSuperclass(); + var superclass = type.getSuperclass(); return Object.class.equals(superclass) ? Optional.empty() : getStaticFieldOfType(superclass); } @@ -110,8 +110,8 @@ public class SimpleEntityPathResolver implements EntityPathResolver { */ private String getQueryClassName(Class domainClass) { - String simpleClassName = ClassUtils.getShortName(domainClass); - String packageName = domainClass.getPackage().getName(); + var simpleClassName = ClassUtils.getShortName(domainClass); + var packageName = domainClass.getPackage().getName(); return String.format("%s%s.Q%s%s", packageName, querySuffix, getClassBase(simpleClassName), domainClass.getSimpleName()); @@ -125,7 +125,7 @@ public class SimpleEntityPathResolver implements EntityPathResolver { */ private String getClassBase(String shortName) { - String[] parts = shortName.split("\\."); + var parts = shortName.split("\\."); return parts.length < 2 ? "" : parts[0] + "_"; } diff --git a/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java b/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java index 2d74c8720..bde4bf397 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java +++ b/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java @@ -16,8 +16,6 @@ package org.springframework.data.querydsl.binding; import java.beans.PropertyDescriptor; -import java.lang.reflect.Field; -import java.util.Optional; import org.springframework.beans.BeanUtils; import org.springframework.data.mapping.PropertyPath; @@ -38,13 +36,7 @@ import com.querydsl.core.types.dsl.CollectionPathBase; * @author Mark Paluch * @since 1.13 */ -class PropertyPathInformation implements PathInformation { - - private final PropertyPath path; - - private PropertyPathInformation(PropertyPath path) { - this.path = path; - } +record PropertyPathInformation(PropertyPath path) implements PathInformation { /** * Creates a new {@link PropertyPathInformation} for the given path and type. @@ -133,32 +125,26 @@ class PropertyPathInformation implements PathInformation { */ @Override public Path reifyPath(EntityPathResolver resolver) { - return reifyPath(resolver, path, Optional.empty()); + return reifyPath(resolver, path, null); } - private static Path reifyPath(EntityPathResolver resolver, PropertyPath path, Optional> base) { - - Optional> map = base.filter(it -> it instanceof CollectionPathBase).map(CollectionPathBase.class::cast)// - .map(CollectionPathBase::any)// - .map(Path.class::cast)// - .map(it -> reifyPath(resolver, path, Optional.of(it))); + @SuppressWarnings("ConstantConditions") + private static Path reifyPath(EntityPathResolver resolver, PropertyPath path, @Nullable Path base) { - return map.orElseGet(() -> { - - Path entityPath = base.orElseGet(() -> resolver.createPath(path.getOwningType().getType())); + if (base instanceof CollectionPathBase) { + return reifyPath(resolver, path, (Path) ((CollectionPathBase) base).any()); + } - Field field = org.springframework.data.util.ReflectionUtils.findRequiredField(entityPath.getClass(), - path.getSegment()); - Object value = ReflectionUtils.getField(field, entityPath); + var entityPath = base != null ? base : resolver.createPath(path.getOwningType().getType()); - PropertyPath next = path.next(); + var field = ReflectionUtils.findField(entityPath.getClass(), path.getSegment()); + var value = ReflectionUtils.getField(field, entityPath); - if (next != null) { - return reifyPath(resolver, next, Optional.of((Path) value)); - } + if (path.hasNext()) { + return reifyPath(resolver, path.next(), (Path) value); + } - return (Path) value; - }); + return (Path) value; } /* @@ -172,11 +158,10 @@ class PropertyPathInformation implements PathInformation { return true; } - if (!(o instanceof PathInformation)) { + if (!(o instanceof PathInformation that)) { return false; } - PathInformation that = (PathInformation) o; return ObjectUtils.nullSafeEquals(getRootParentType(), that.getRootParentType()) && ObjectUtils.nullSafeEquals(toDotPath(), that.toDotPath()); } @@ -187,7 +172,7 @@ class PropertyPathInformation implements PathInformation { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(getRootParentType()); + var result = ObjectUtils.nullSafeHashCode(getRootParentType()); result = 31 * result + ObjectUtils.nullSafeHashCode(toDotPath()); return result; } diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java index 52aba2a9e..7dd79290f 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java @@ -128,7 +128,7 @@ public class QuerydslBindings { Assert.notEmpty(paths, "At least one path has to be provided!"); - for (Path path : paths) { + for (var path : paths) { this.denyList.add(toDotPath(Optional.of(path))); } } @@ -142,7 +142,7 @@ public class QuerydslBindings { Assert.notEmpty(paths, "At least one path has to be provided!"); - for (Path path : paths) { + for (var path : paths) { this.allowList.add(toDotPath(Optional.of(path))); } } @@ -204,11 +204,11 @@ public class QuerydslBindings { Assert.notNull(path, "PropertyPath must not be null!"); - PathAndBinding pathAndBinding = (PathAndBinding) pathSpecs.get(createKey(path)); + var pathAndBinding = (PathAndBinding) pathSpecs.get(createKey(path)); if (pathAndBinding != null) { - Optional> binding = pathAndBinding.getBinding(); + var binding = pathAndBinding.getBinding(); if (binding.isPresent()) { return binding; @@ -251,7 +251,7 @@ public class QuerydslBindings { } // fully-qualified path lookup - String key = createKey(type, path); + var key = createKey(type, path); if (pathSpecs.containsKey(key)) { return pathSpecs.get(key).getPath()// .map(QuerydslPathInformation::of)// @@ -303,9 +303,9 @@ public class QuerydslBindings { */ private boolean isPathVisible(PathInformation path) { - List segments = Arrays.asList(path.toDotPath().split("\\.")); + var segments = Arrays.asList(path.toDotPath().split("\\.")); - for (int i = 1; i <= segments.size(); i++) { + for (var i = 1; i <= segments.size(); i++) { if (!isPathVisible(StringUtils.collectionToDelimitedString(segments.subList(0, i), "."))) { @@ -354,7 +354,7 @@ public class QuerydslBindings { private static String fromRootPath(Path path) { - Path rootPath = path.getMetadata().getRootPath(); + var rootPath = path.getMetadata().getRootPath(); if (rootPath == null) { throw new IllegalStateException(String.format("Couldn't find root path on path %s!", path)); @@ -485,7 +485,7 @@ public class QuerydslBindings { super.registerBinding(binding); - String dotPath = toDotPath(binding.getPath()); + var dotPath = toDotPath(binding.getPath()); if (alias != null) { QuerydslBindings.this.pathSpecs.put(alias, binding); @@ -584,10 +584,9 @@ public class QuerydslBindings { if (this == o) { return true; } - if (!(o instanceof PathAndBinding)) { + if (!(o instanceof PathAndBinding that)) { return false; } - PathAndBinding that = (PathAndBinding) o; if (!ObjectUtils.nullSafeEquals(path, that.path)) { return false; } @@ -600,7 +599,7 @@ public class QuerydslBindings { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(path); + var result = ObjectUtils.nullSafeHashCode(path); result = 31 * result + ObjectUtils.nullSafeHashCode(binding); return result; } diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java index b936e5e8e..5ff2c4105 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java @@ -15,7 +15,6 @@ */ package org.springframework.data.querydsl.binding; -import java.util.List; import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; @@ -129,9 +128,9 @@ public class QuerydslBindingsFactory implements ApplicationContextAware { Assert.notNull(customizer, "Customizer must not be null!"); Assert.notNull(domainType, "Domain type must not be null!"); - EntityPath path = verifyEntityPathPresent(domainType); + var path = verifyEntityPathPresent(domainType); - QuerydslBindings bindings = new QuerydslBindings(); + var bindings = new QuerydslBindings(); defaultCustomizer.customize(bindings, path); findCustomizerForDomainType(customizer, domainType.getType()).customize(bindings, path); @@ -171,11 +170,11 @@ public class QuerydslBindingsFactory implements ApplicationContextAware { private QuerydslBinderCustomizer> getDefaultQuerydslBinderCustomizer( AutowireCapableBeanFactory beanFactory) { - List customizers = beanFactory + var customizers = beanFactory .getBeanProvider(QuerydslBinderCustomizerDefaults.class).stream().collect(Collectors.toList()); return (bindings, root) -> { - for (QuerydslBinderCustomizerDefaults querydslBinderCustomizerDefaults : customizers) { + for (var querydslBinderCustomizerDefaults : customizers) { querydslBinderCustomizerDefaults.customize(bindings, root); } }; diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslDefaultBinding.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslDefaultBinding.java index bd14af9c8..cb4fec491 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslDefaultBinding.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslDefaultBinding.java @@ -59,7 +59,7 @@ class QuerydslDefaultBinding implements MultiValueBinding if (path instanceof CollectionPathBase) { - BooleanBuilder builder = new BooleanBuilder(); + var builder = new BooleanBuilder(); for (Object element : value) { builder.and(((CollectionPathBase) path).contains(element)); @@ -68,15 +68,13 @@ class QuerydslDefaultBinding implements MultiValueBinding return Optional.of(builder.getValue()); } - if (path instanceof SimpleExpression) { - - SimpleExpression expression = (SimpleExpression) path; + if (path instanceof SimpleExpression expression) { if (value.size() > 1) { return Optional.of(expression.in(value)); } - Object object = value.iterator().next(); + var object = value.iterator().next(); return Optional.of(object == null // ? expression.isNull() // diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPathInformation.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPathInformation.java index 67a0f2da4..4b91ad9e0 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPathInformation.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPathInformation.java @@ -69,7 +69,7 @@ class QuerydslPathInformation implements PathInformation { @Override public Class getLeafParentType() { - Path parent = path.getMetadata().getParent(); + var parent = path.getMetadata().getParent(); if (parent == null) { throw new IllegalStateException(String.format("Could not obtain metadata for parent node of %s!", path)); @@ -125,11 +125,10 @@ class QuerydslPathInformation implements PathInformation { return true; } - if (!(o instanceof PathInformation)) { + if (!(o instanceof PathInformation that)) { return false; } - PathInformation that = (PathInformation) o; return ObjectUtils.nullSafeEquals(getRootParentType(), that.getRootParentType()) && ObjectUtils.nullSafeEquals(toDotPath(), that.toDotPath()); } @@ -140,7 +139,7 @@ class QuerydslPathInformation implements PathInformation { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(getRootParentType()); + var result = ObjectUtils.nullSafeHashCode(getRootParentType()); result = 31 * result + ObjectUtils.nullSafeHashCode(toDotPath()); return result; } diff --git a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java index 2c0182e28..0c42be570 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java @@ -15,13 +15,11 @@ */ package org.springframework.data.querydsl.binding; -import java.beans.PropertyDescriptor; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Map; -import java.util.Map.Entry; import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; @@ -86,32 +84,32 @@ public class QuerydslPredicateBuilder { Assert.notNull(bindings, "Context must not be null!"); - BooleanBuilder builder = new BooleanBuilder(); + var builder = new BooleanBuilder(); if (values.isEmpty()) { return getPredicate(builder); } - for (Entry> entry : values.entrySet()) { + for (var entry : values.entrySet()) { if (isSingleElementCollectionWithoutText(entry.getValue())) { continue; } - String path = entry.getKey(); + var path = entry.getKey(); if (!bindings.isPathAvailable(path, type)) { continue; } - PathInformation propertyPath = bindings.getPropertyPath(path, type); + var propertyPath = bindings.getPropertyPath(path, type); if (propertyPath == null) { continue; } - Collection value = convertToPropertyPathSpecificType(entry.getValue(), propertyPath); - Optional predicate = invokeBinding(propertyPath, bindings, value); + var value = convertToPropertyPathSpecificType(entry.getValue(), propertyPath); + var predicate = invokeBinding(propertyPath, bindings, value); predicate.ifPresent(builder::and); } @@ -142,7 +140,7 @@ public class QuerydslPredicateBuilder { private Optional invokeBinding(PathInformation dotPath, QuerydslBindings bindings, Collection values) { - Path path = getPath(dotPath, bindings); + var path = getPath(dotPath, bindings); return bindings.getBindingForPath(dotPath).orElse(defaultBinding).bind(path, values); } @@ -158,7 +156,7 @@ public class QuerydslPredicateBuilder { */ private Path getPath(PathInformation path, QuerydslBindings bindings) { - Optional> resolvedPath = bindings.getExistingPath(path); + var resolvedPath = bindings.getExistingPath(path); return resolvedPath.orElseGet(() -> paths.computeIfAbsent(path, it -> it.reifyPath(resolver))); } @@ -174,7 +172,7 @@ public class QuerydslPredicateBuilder { */ private Collection convertToPropertyPathSpecificType(List source, PathInformation path) { - Class targetType = path.getLeafType(); + var targetType = path.getLeafType(); if (source.isEmpty() || isSingleElementCollectionWithoutText(source)) { return Collections.emptyList(); @@ -182,7 +180,7 @@ public class QuerydslPredicateBuilder { Collection target = new ArrayList<>(source.size()); - for (String value : source) { + for (var value : source) { target.add(conversionService.canConvert(String.class, targetType) ? conversionService.convert(value, TypeDescriptor.forObject(value), getTargetTypeDescriptor(path)) @@ -201,12 +199,12 @@ public class QuerydslPredicateBuilder { */ private static TypeDescriptor getTargetTypeDescriptor(PathInformation path) { - PropertyDescriptor descriptor = path.getLeafPropertyDescriptor(); + var descriptor = path.getLeafPropertyDescriptor(); - Class owningType = path.getLeafParentType(); - String leafProperty = path.getLeafProperty(); + var owningType = path.getLeafParentType(); + var leafProperty = path.getLeafProperty(); - TypeDescriptor result = descriptor == null // + var result = descriptor == null // ? TypeDescriptor .nested(org.springframework.data.util.ReflectionUtils.findRequiredField(owningType, leafProperty), 0) : TypeDescriptor @@ -238,7 +236,7 @@ public class QuerydslPredicateBuilder { */ private static Predicate getPredicate(BooleanBuilder builder) { - Predicate predicate = builder.getValue(); + var predicate = builder.getValue(); return predicate == null ? new BooleanBuilder() : predicate; } } diff --git a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java index 0a9c26960..1ca901e31 100644 --- a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java +++ b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java @@ -35,7 +35,6 @@ import java.util.Optional; import java.util.Set; import java.util.function.Supplier; import java.util.stream.Collectors; -import java.util.stream.Stream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -43,7 +42,6 @@ import org.apache.commons.logging.LogFactory; import org.springframework.core.annotation.AnnotationUtils; import org.springframework.core.log.LogMessage; import org.springframework.data.repository.config.CustomRepositoryImplementationDetector; -import org.springframework.data.repository.config.RepositoryFragmentConfiguration; import org.springframework.data.repository.core.support.RepositoryComposition.RepositoryFragments; import org.springframework.data.repository.core.support.RepositoryFactorySupport; import org.springframework.data.repository.core.support.RepositoryFragment; @@ -147,7 +145,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl List qualifierNames = new ArrayList<>(qualifiers.size()); - for (Annotation qualifier : qualifiers) { + for (var qualifier : qualifiers) { qualifierNames.add(qualifier.annotationType().getName()); } @@ -193,7 +191,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl */ @SuppressWarnings("unchecked") protected S getDependencyInstance(Bean bean, Class type) { - CreationalContext creationalContext = beanManager.createCreationalContext(bean); + var creationalContext = beanManager.createCreationalContext(bean); return (S) beanManager.getReference(bean, type, creationalContext); } @@ -210,7 +208,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl */ public final T create(@SuppressWarnings("null") CreationalContext creationalContext) { - T repoInstance = this.repoInstance; + var repoInstance = this.repoInstance; if (repoInstance != null) { logger.debug(LogMessage.format("Returning eagerly created CDI repository instance for %s.", repositoryType.getName())); @@ -336,10 +334,10 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl */ protected T create(Supplier factorySupplier, Class repositoryType) { - CdiRepositoryConfiguration configuration = lookupConfiguration(beanManager, qualifiers); - RepositoryFragments repositoryFragments = getRepositoryFragments(repositoryType, configuration); + var configuration = lookupConfiguration(beanManager, qualifiers); + var repositoryFragments = getRepositoryFragments(repositoryType, configuration); - RepositoryFactorySupport factory = factorySupplier.get(); + var factory = factorySupplier.get(); applyConfiguration(factory, configuration); @@ -357,7 +355,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl Assert.notNull(repositoryType, "Repository type must not be null!"); - CdiRepositoryConfiguration cdiRepositoryConfiguration = lookupConfiguration(beanManager, qualifiers); + var cdiRepositoryConfiguration = lookupConfiguration(beanManager, qualifiers); return getRepositoryFragments(repositoryType, cdiRepositoryConfiguration); } @@ -365,14 +363,14 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl private RepositoryFragments getRepositoryFragments(Class repositoryType, CdiRepositoryConfiguration cdiRepositoryConfiguration) { - Optional> customImplementationBean = getCustomImplementationBean(repositoryType, + var customImplementationBean = getCustomImplementationBean(repositoryType, cdiRepositoryConfiguration); Optional customImplementation = customImplementationBean.map(this::getDependencyInstance); - List> repositoryFragments = findRepositoryFragments(repositoryType, + var repositoryFragments = findRepositoryFragments(repositoryType, cdiRepositoryConfiguration); - RepositoryFragments customImplementationFragment = customImplementation // + var customImplementationFragment = customImplementation // .map(RepositoryFragments::just) // .orElseGet(RepositoryFragments::empty); @@ -384,14 +382,14 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl private List> findRepositoryFragments(Class repositoryType, CdiRepositoryConfiguration cdiRepositoryConfiguration) { - Stream fragmentConfigurations = context + var fragmentConfigurations = context .getRepositoryFragments(cdiRepositoryConfiguration, repositoryType); return fragmentConfigurations.flatMap(it -> { - Class interfaceClass = (Class) lookupFragmentInterface(repositoryType, it.getInterfaceName()); - Class implementationClass = context.loadClass(it.getClassName()); - Optional> bean = getBean(implementationClass, beanManager, qualifiers); + var interfaceClass = (Class) lookupFragmentInterface(repositoryType, it.getInterfaceName()); + var implementationClass = context.loadClass(it.getClassName()); + var bean = getBean(implementationClass, beanManager, qualifiers); return Optionals.toStream(bean.map(this::getDependencyInstance) // .map(implementation -> RepositoryFragment.implemented(interfaceClass, implementation))); // @@ -483,7 +481,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl } private static Annotation[] getQualifiersArray(Set qualifiers) { - return qualifiers.toArray(new Annotation[qualifiers.size()]); + return qualifiers.toArray(new Annotation[0]); } /* diff --git a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryContext.java b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryContext.java index 84c8ee20f..9d8b5ea92 100644 --- a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryContext.java +++ b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryContext.java @@ -30,7 +30,6 @@ import org.springframework.core.type.filter.TypeFilter; import org.springframework.data.repository.config.CustomRepositoryImplementationDetector; import org.springframework.data.repository.config.FragmentMetadata; import org.springframework.data.repository.config.ImplementationDetectionConfiguration; -import org.springframework.data.repository.config.ImplementationLookupConfiguration; import org.springframework.data.repository.config.RepositoryFragmentConfiguration; import org.springframework.data.util.Optionals; import org.springframework.data.util.Streamable; @@ -114,7 +113,7 @@ public class CdiRepositoryContext { Stream getRepositoryFragments(CdiRepositoryConfiguration configuration, Class repositoryInterface) { - CdiImplementationDetectionConfiguration config = new CdiImplementationDetectionConfiguration(configuration, + var config = new CdiImplementationDetectionConfiguration(configuration, metadataReaderFactory); return metdata.getFragmentInterfaces(repositoryInterface.getName()) // @@ -135,9 +134,9 @@ public class CdiRepositoryContext { ImplementationDetectionConfiguration configuration = new CdiImplementationDetectionConfiguration( cdiRepositoryConfiguration, metadataReaderFactory); - ImplementationLookupConfiguration lookup = configuration.forFragment(repositoryType.getName()); + var lookup = configuration.forFragment(repositoryType.getName()); - Optional beanDefinition = detector.detectCustomImplementation(lookup); + var beanDefinition = detector.detectCustomImplementation(lookup); return beanDefinition.map(this::loadBeanClass); } @@ -145,8 +144,8 @@ public class CdiRepositoryContext { private Optional detectRepositoryFragmentConfiguration(String fragmentInterfaceName, CdiImplementationDetectionConfiguration config) { - ImplementationLookupConfiguration lookup = config.forFragment(fragmentInterfaceName); - Optional beanDefinition = detector.detectCustomImplementation(lookup); + var lookup = config.forFragment(fragmentInterfaceName); + var beanDefinition = detector.detectCustomImplementation(lookup); return beanDefinition.map(bd -> new RepositoryFragmentConfiguration(fragmentInterfaceName, bd)); } @@ -154,7 +153,7 @@ public class CdiRepositoryContext { @Nullable private Class loadBeanClass(AbstractBeanDefinition definition) { - String beanClassName = definition.getBeanClassName(); + var beanClassName = definition.getBeanClassName(); return beanClassName == null ? null : loadClass(beanClassName); } diff --git a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java index 32c90c2f8..de7bef30e 100644 --- a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java +++ b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java @@ -19,7 +19,6 @@ import jakarta.enterprise.event.Observes; import jakarta.enterprise.inject.Any; import jakarta.enterprise.inject.Default; import jakarta.enterprise.inject.spi.AfterDeploymentValidation; -import jakarta.enterprise.inject.spi.AnnotatedType; import jakarta.enterprise.inject.spi.BeanManager; import jakarta.enterprise.inject.spi.Extension; import jakarta.enterprise.inject.spi.ProcessAnnotatedType; @@ -73,13 +72,13 @@ public abstract class CdiRepositoryExtensionSupport implements Extension { */ protected void processAnnotatedType(@Observes ProcessAnnotatedType processAnnotatedType) { - AnnotatedType annotatedType = processAnnotatedType.getAnnotatedType(); - Class repositoryType = annotatedType.getJavaClass(); + var annotatedType = processAnnotatedType.getAnnotatedType(); + var repositoryType = annotatedType.getJavaClass(); if (isRepository(repositoryType)) { // Determine the qualifiers of the repository type. - Set qualifiers = getQualifiers(repositoryType); + var qualifiers = getQualifiers(repositoryType); if (logger.isDebugEnabled()) { logger.debug( @@ -98,10 +97,10 @@ public abstract class CdiRepositoryExtensionSupport implements Extension { */ private boolean isRepository(Class type) { - boolean isInterface = type.isInterface(); - boolean extendsRepository = Repository.class.isAssignableFrom(type); - boolean isAnnotated = isAnnotatedWith(type, RepositoryDefinition.class); - boolean excludedByAnnotation = isAnnotatedDirectlyWith(type, NoRepositoryBean.class); + var isInterface = type.isInterface(); + var extendsRepository = Repository.class.isAssignableFrom(type); + var isAnnotated = isAnnotatedWith(type, RepositoryDefinition.class); + var excludedByAnnotation = isAnnotatedDirectlyWith(type, NoRepositoryBean.class); return isInterface && (extendsRepository || isAnnotated) && !excludedByAnnotation; } @@ -112,9 +111,9 @@ public abstract class CdiRepositoryExtensionSupport implements Extension { private Set getQualifiers(final Class type) { Set qualifiers = new HashSet<>(); - Annotation[] annotations = type.getAnnotations(); - for (Annotation annotation : annotations) { - Class annotationType = annotation.annotationType(); + var annotations = type.getAnnotations(); + for (var annotation : annotations) { + var annotationType = annotation.annotationType(); if (isAnnotatedWith(annotationType, Qualifier.class)) { qualifiers.add(annotation); } @@ -139,7 +138,7 @@ public abstract class CdiRepositoryExtensionSupport implements Extension { */ void afterDeploymentValidation(@Observes AfterDeploymentValidation event, BeanManager manager) { - for (CdiRepositoryBean bean : eagerRepositories) { + for (var bean : eagerRepositories) { logger.debug(LogMessage.format("Eagerly instantiating CDI repository bean for %s.", bean.getBeanClass())); bean.initialize(); @@ -164,7 +163,7 @@ public abstract class CdiRepositoryExtensionSupport implements Extension { */ protected void registerBean(CdiRepositoryBean bean) { - Class repositoryInterface = bean.getBeanClass(); + var repositoryInterface = bean.getBeanClass(); if (isAnnotatedWith(repositoryInterface, Eager.class)) { this.eagerRepositories.add(bean); diff --git a/src/main/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSource.java b/src/main/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSource.java index 839035a36..171912c91 100644 --- a/src/main/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSource.java +++ b/src/main/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSource.java @@ -20,7 +20,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.List; -import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.regex.Pattern; @@ -115,7 +114,7 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura Assert.notNull(annotation, "Annotation must not be null!"); Assert.notNull(resourceLoader, "ResourceLoader must not be null!"); - Map annotationAttributes = metadata.getAnnotationAttributes(annotation.getName()); + var annotationAttributes = metadata.getAnnotationAttributes(annotation.getName()); if (annotationAttributes == null) { throw new IllegalStateException(String.format("Unable to obtain annotation attributes for %s!", annotation)); @@ -134,14 +133,14 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura */ public Streamable getBasePackages() { - String[] value = attributes.getStringArray("value"); - String[] basePackages = attributes.getStringArray(BASE_PACKAGES); - Class[] basePackageClasses = attributes.getClassArray(BASE_PACKAGE_CLASSES); + var value = attributes.getStringArray("value"); + var basePackages = attributes.getStringArray(BASE_PACKAGES); + var basePackageClasses = attributes.getClassArray(BASE_PACKAGE_CLASSES); // Default configuration - return package of annotated class if (value.length == 0 && basePackages.length == 0 && basePackageClasses.length == 0) { - String className = configMetadata.getClassName(); + var className = configMetadata.getClassName(); return Streamable.of(ClassUtils.getPackageName(className)); } @@ -149,9 +148,9 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura packages.addAll(Arrays.asList(value)); packages.addAll(Arrays.asList(basePackages)); - Arrays.stream(basePackageClasses)// - .map(ClassUtils::getPackageName)// - .forEach(it -> packages.add(it)); + for (var c : basePackageClasses) { + packages.add(ClassUtils.getPackageName(c)); + } return Streamable.of(packages); } @@ -227,7 +226,7 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura return Optional.empty(); } - Class repositoryBaseClass = attributes.getClass(REPOSITORY_BASE_CLASS); + var repositoryBaseClass = attributes.getClass(REPOSITORY_BASE_CLASS); return DefaultRepositoryBaseClass.class.equals(repositoryBaseClass) ? Optional.empty() : Optional.of(repositoryBaseClass.getName()); } @@ -279,7 +278,7 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura throw new IllegalArgumentException(String.format("No attribute named %s found!", name)); } - Object value = attributes.get(name); + var value = attributes.get(name); if (value == null) { return Optional.empty(); @@ -289,7 +288,7 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura () -> String.format("Attribute value for %s is of type %s but was expected to be of type %s!", name, value.getClass(), type)); - Object result = String.class.isInstance(value) // + var result = value instanceof String // ? StringUtils.hasText((String) value) ? value : null // : value; @@ -326,15 +325,15 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura @Override public String getResourceDescription() { - String simpleClassName = ClassUtils.getShortName(configMetadata.getClassName()); - String annoationClassName = ClassUtils.getShortName(enableAnnotationMetadata.getClassName()); + var simpleClassName = ClassUtils.getShortName(configMetadata.getClassName()); + var annoationClassName = ClassUtils.getShortName(enableAnnotationMetadata.getClassName()); return String.format("@%s declared on %s", annoationClassName, simpleClassName); } private Streamable parseFilters(String attributeName) { - AnnotationAttributes[] filters = attributes.getAnnotationArray(attributeName); + var filters = attributes.getAnnotationArray(attributeName); return Streamable.of(() -> Arrays.stream(filters).flatMap(it -> typeFiltersFor(it).stream())); } @@ -348,7 +347,7 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura */ private Optional getNullDefaultedAttribute(String attributeName) { - String attribute = attributes.getString(attributeName); + var attribute = attributes.getString(attributeName); return StringUtils.hasText(attribute) ? Optional.of(attribute) : Optional.empty(); } @@ -364,13 +363,13 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura List typeFilters = new ArrayList<>(); FilterType filterType = filterAttributes.getEnum("type"); - for (Class filterClass : filterAttributes.getClassArray("value")) { + for (var filterClass : filterAttributes.getClassArray("value")) { switch (filterType) { case ANNOTATION: Assert.isAssignable(Annotation.class, filterClass, "An error occured when processing a @ComponentScan " + "ANNOTATION type filter: "); @SuppressWarnings("unchecked") - Class annoClass = (Class) filterClass; + var annoClass = (Class) filterClass; typeFilters.add(new AnnotationTypeFilter(annoClass)); break; case ASSIGNABLE_TYPE: @@ -386,9 +385,9 @@ public class AnnotationRepositoryConfigurationSource extends RepositoryConfigura } } - for (String expression : getPatterns(filterAttributes)) { + for (var expression : getPatterns(filterAttributes)) { - String rawName = filterType.toString(); + var rawName = filterType.toString(); if ("REGEX".equals(rawName)) { typeFilters.add(new RegexPatternTypeFilter(Pattern.compile(expression))); diff --git a/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java b/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java index 118bce701..e27a9d5c9 100644 --- a/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java +++ b/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java @@ -102,7 +102,7 @@ public class CustomRepositoryImplementationDetector { Assert.notNull(lookup, "ImplementationLookupConfiguration must not be null!"); - Set definitions = implementationCandidates.getOptional() + var definitions = implementationCandidates.getOptional() .orElseGet(() -> findCandidateBeanDefinitions(lookup)).stream() // .filter(lookup::matches) // .collect(StreamUtils.toUnmodifiableSet()); @@ -116,9 +116,9 @@ public class CustomRepositoryImplementationDetector { private Set findCandidateBeanDefinitions(ImplementationDetectionConfiguration config) { - String postfix = config.getImplementationPostfix(); + var postfix = config.getImplementationPostfix(); - ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider(false, + var provider = new ClassPathScanningCandidateComponentProvider(false, environment); provider.setResourceLoader(resourceLoader); provider.setResourcePattern(String.format(CUSTOM_IMPLEMENTATION_RESOURCE_PATTERN, postfix)); @@ -135,7 +135,7 @@ public class CustomRepositoryImplementationDetector { private static Optional throwAmbiguousCustomImplementationException( Collection definitions) { - String implementationNames = definitions.stream()// + var implementationNames = definitions.stream()// .map(BeanDefinition::getBeanClassName)// .collect(Collectors.joining(", ")); diff --git a/src/main/java/org/springframework/data/repository/config/DefaultImplementationLookupConfiguration.java b/src/main/java/org/springframework/data/repository/config/DefaultImplementationLookupConfiguration.java index 410169116..75b1627bb 100644 --- a/src/main/java/org/springframework/data/repository/config/DefaultImplementationLookupConfiguration.java +++ b/src/main/java/org/springframework/data/repository/config/DefaultImplementationLookupConfiguration.java @@ -135,14 +135,14 @@ class DefaultImplementationLookupConfiguration implements ImplementationLookupCo Assert.notNull(definition, "BeanDefinition must not be null!"); - String beanClassName = definition.getBeanClassName(); + var beanClassName = definition.getBeanClassName(); if (beanClassName == null || isExcluded(beanClassName, getExcludeFilters())) { return false; } - String beanPackage = ClassUtils.getPackageName(beanClassName); - String localName = getLocalName(beanClassName); + var beanPackage = ClassUtils.getPackageName(beanClassName); + var localName = getLocalName(beanClassName); return localName.equals(getImplementationClassName()) // && getBasePackages().stream().anyMatch(beanPackage::startsWith); @@ -150,7 +150,7 @@ class DefaultImplementationLookupConfiguration implements ImplementationLookupCo private String getLocalName(String className) { - String shortName = ClassUtils.getShortName(className); + var shortName = ClassUtils.getShortName(className); return shortName.substring(shortName.lastIndexOf('.') + 1); } @@ -158,7 +158,7 @@ class DefaultImplementationLookupConfiguration implements ImplementationLookupCo try { - MetadataReader reader = getMetadataReaderFactory().getMetadataReader(beanClassName); + var reader = getMetadataReaderFactory().getMetadataReader(beanClassName); return filters.stream().anyMatch(it -> matches(it, reader)); } catch (IOException o_O) { return true; diff --git a/src/main/java/org/springframework/data/repository/config/FragmentMetadata.java b/src/main/java/org/springframework/data/repository/config/FragmentMetadata.java index 7d5ca67f1..b11fe27fe 100644 --- a/src/main/java/org/springframework/data/repository/config/FragmentMetadata.java +++ b/src/main/java/org/springframework/data/repository/config/FragmentMetadata.java @@ -66,7 +66,7 @@ public class FragmentMetadata { Assert.hasText(interfaceName, "Interface name must not be null or empty!"); - AnnotationMetadata metadata = getAnnotationMetadata(interfaceName); + var metadata = getAnnotationMetadata(interfaceName); return !metadata.hasAnnotation(NoRepositoryBean.class.getName()); } diff --git a/src/main/java/org/springframework/data/repository/config/ImplementationDetectionConfiguration.java b/src/main/java/org/springframework/data/repository/config/ImplementationDetectionConfiguration.java index 96b908329..d52e2f62e 100644 --- a/src/main/java/org/springframework/data/repository/config/ImplementationDetectionConfiguration.java +++ b/src/main/java/org/springframework/data/repository/config/ImplementationDetectionConfiguration.java @@ -70,7 +70,7 @@ public interface ImplementationDetectionConfiguration { Assert.notNull(definition, "BeanDefinition must not be null!"); - String beanName = definition.getBeanClassName(); + var beanName = definition.getBeanClassName(); if (beanName == null) { throw new IllegalStateException("Cannot generate bean name for BeanDefinition without bean class name!"); diff --git a/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionBuilder.java b/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionBuilder.java index dcd572cd9..d8c297bb8 100644 --- a/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionBuilder.java +++ b/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionBuilder.java @@ -17,7 +17,6 @@ package org.springframework.data.repository.config; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.PropertiesFactoryBean; -import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.data.repository.core.NamedQueries; import org.springframework.data.repository.core.support.PropertiesBasedNamedQueries; @@ -67,22 +66,22 @@ public class NamedQueriesBeanDefinitionBuilder { */ public BeanDefinition build(@Nullable Object source) { - BeanDefinitionBuilder properties = BeanDefinitionBuilder.rootBeanDefinition(PropertiesFactoryBean.class); + var properties = BeanDefinitionBuilder.rootBeanDefinition(PropertiesFactoryBean.class); - String locationsToUse = StringUtils.hasText(locations) ? locations : defaultLocation; + var locationsToUse = StringUtils.hasText(locations) ? locations : defaultLocation; properties.addPropertyValue("locations", locationsToUse); if (!StringUtils.hasText(locations)) { properties.addPropertyValue("ignoreResourceNotFound", true); } - AbstractBeanDefinition propertiesDefinition = properties.getBeanDefinition(); + var propertiesDefinition = properties.getBeanDefinition(); propertiesDefinition.setSource(source); - BeanDefinitionBuilder namedQueries = BeanDefinitionBuilder.rootBeanDefinition(PropertiesBasedNamedQueries.class); + var namedQueries = BeanDefinitionBuilder.rootBeanDefinition(PropertiesBasedNamedQueries.class); namedQueries.addConstructorArgValue(propertiesDefinition); - AbstractBeanDefinition namedQueriesDefinition = namedQueries.getBeanDefinition(); + var namedQueriesDefinition = namedQueries.getBeanDefinition(); namedQueriesDefinition.setSource(source); return namedQueriesDefinition; diff --git a/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionParser.java b/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionParser.java index 7a4aa6838..a22acb112 100644 --- a/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionParser.java +++ b/src/main/java/org/springframework/data/repository/config/NamedQueriesBeanDefinitionParser.java @@ -19,7 +19,6 @@ import java.util.Properties; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.config.PropertiesFactoryBean; -import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.xml.BeanDefinitionParser; import org.springframework.beans.factory.xml.ParserContext; @@ -59,20 +58,20 @@ public class NamedQueriesBeanDefinitionParser implements BeanDefinitionParser { @NonNull public BeanDefinition parse(Element element, ParserContext parserContext) { - BeanDefinitionBuilder properties = BeanDefinitionBuilder.rootBeanDefinition(PropertiesFactoryBean.class); + var properties = BeanDefinitionBuilder.rootBeanDefinition(PropertiesFactoryBean.class); properties.addPropertyValue("locations", getDefaultedLocation(element)); if (isDefaultLocation(element)) { properties.addPropertyValue("ignoreResourceNotFound", true); } - AbstractBeanDefinition propertiesDefinition = properties.getBeanDefinition(); + var propertiesDefinition = properties.getBeanDefinition(); propertiesDefinition.setSource(parserContext.extractSource(element)); - BeanDefinitionBuilder namedQueries = BeanDefinitionBuilder.rootBeanDefinition(PropertiesBasedNamedQueries.class); + var namedQueries = BeanDefinitionBuilder.rootBeanDefinition(PropertiesBasedNamedQueries.class); namedQueries.addConstructorArgValue(propertiesDefinition); - AbstractBeanDefinition namedQueriesDefinition = namedQueries.getBeanDefinition(); + var namedQueriesDefinition = namedQueries.getBeanDefinition(); namedQueriesDefinition.setSource(parserContext.extractSource(element)); return namedQueriesDefinition; @@ -96,7 +95,7 @@ public class NamedQueriesBeanDefinitionParser implements BeanDefinitionParser { */ private String getDefaultedLocation(Element element) { - String locations = element.getAttribute(ATTRIBUTE); + var locations = element.getAttribute(ATTRIBUTE); return StringUtils.hasText(locations) ? locations : defaultLocation; } } diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java index 1a86b29d2..a87f6231e 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java @@ -15,14 +15,13 @@ */ package org.springframework.data.repository.config; -import java.util.List; import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.springframework.beans.factory.support.AbstractBeanDefinition; + import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.core.env.Environment; @@ -94,7 +93,7 @@ class RepositoryBeanDefinitionBuilder { Assert.notNull(registry, "BeanDefinitionRegistry must not be null!"); Assert.notNull(resourceLoader, "ResourceLoader must not be null!"); - BeanDefinitionBuilder builder = BeanDefinitionBuilder + var builder = BeanDefinitionBuilder .rootBeanDefinition(configuration.getRepositoryFactoryBeanClassName()); builder.getRawBeanDefinition().setSource(configuration.getSource()); @@ -107,7 +106,7 @@ class RepositoryBeanDefinitionBuilder { configuration.getRepositoryBaseClassName()// .ifPresent(it -> builder.addPropertyValue("repositoryBaseClass", it)); - NamedQueriesBeanDefinitionBuilder definitionBuilder = new NamedQueriesBeanDefinitionBuilder( + var definitionBuilder = new NamedQueriesBeanDefinitionBuilder( extension.getDefaultNamedQueryLocation()); configuration.getNamedQueriesLocation().ifPresent(definitionBuilder::setLocations); @@ -118,10 +117,10 @@ class RepositoryBeanDefinitionBuilder { builder.addDependsOn(it); }); - BeanDefinitionBuilder fragmentsBuilder = BeanDefinitionBuilder + var fragmentsBuilder = BeanDefinitionBuilder .rootBeanDefinition(RepositoryFragmentsFactoryBean.class); - List fragmentBeanNames = registerRepositoryFragmentsImplementation(configuration) // + var fragmentBeanNames = registerRepositoryFragmentsImplementation(configuration) // .map(RepositoryFragmentConfiguration::getFragmentBeanName) // .collect(Collectors.toList()); @@ -135,16 +134,16 @@ class RepositoryBeanDefinitionBuilder { private Optional registerCustomImplementation(RepositoryConfiguration configuration) { - ImplementationLookupConfiguration lookup = configuration.toLookupConfiguration(metadataReaderFactory); + var lookup = configuration.toLookupConfiguration(metadataReaderFactory); - String beanName = lookup.getImplementationBeanName(); + var beanName = lookup.getImplementationBeanName(); // Already a bean configured? if (registry.containsBeanDefinition(beanName)) { return Optional.of(beanName); } - Optional beanDefinition = implementationDetector.detectCustomImplementation(lookup); + var beanDefinition = implementationDetector.detectCustomImplementation(lookup); return beanDefinition.map(it -> { @@ -163,7 +162,7 @@ class RepositoryBeanDefinitionBuilder { private Stream registerRepositoryFragmentsImplementation( RepositoryConfiguration configuration) { - ImplementationDetectionConfiguration config = configuration + var config = configuration .toImplementationDetectionConfiguration(metadataReaderFactory); return fragmentMetadata.getFragmentInterfaces(configuration.getRepositoryInterface()) // @@ -176,8 +175,8 @@ class RepositoryBeanDefinitionBuilder { private Optional detectRepositoryFragmentConfiguration(String fragmentInterface, ImplementationDetectionConfiguration config) { - ImplementationLookupConfiguration lookup = config.forFragment(fragmentInterface); - Optional beanDefinition = implementationDetector.detectCustomImplementation(lookup); + var lookup = config.forFragment(fragmentInterface); + var beanDefinition = implementationDetector.detectCustomImplementation(lookup); return beanDefinition.map(bd -> new RepositoryFragmentConfiguration(fragmentInterface, bd)); } @@ -185,7 +184,7 @@ class RepositoryBeanDefinitionBuilder { private void potentiallyRegisterFragmentImplementation(RepositoryConfiguration repositoryConfiguration, RepositoryFragmentConfiguration fragmentConfiguration) { - String beanName = fragmentConfiguration.getImplementationBeanName(); + var beanName = fragmentConfiguration.getImplementationBeanName(); // Already a bean configured? if (registry.containsBeanDefinition(beanName)) { @@ -207,7 +206,7 @@ class RepositoryBeanDefinitionBuilder { private void potentiallyRegisterRepositoryFragment(RepositoryConfiguration configuration, RepositoryFragmentConfiguration fragmentConfiguration) { - String beanName = fragmentConfiguration.getFragmentBeanName(); + var beanName = fragmentConfiguration.getFragmentBeanName(); // Already a bean configured? if (registry.containsBeanDefinition(beanName)) { @@ -218,7 +217,7 @@ class RepositoryBeanDefinitionBuilder { logger.debug("Registering repository fragment: " + beanName); } - BeanDefinitionBuilder fragmentBuilder = BeanDefinitionBuilder.rootBeanDefinition(RepositoryFragment.class, + var fragmentBuilder = BeanDefinitionBuilder.rootBeanDefinition(RepositoryFragment.class, "implemented"); fragmentBuilder.addConstructorArgValue(fragmentConfiguration.getInterfaceName()); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionParser.java b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionParser.java index 355df2cc9..4f3b55b31 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionParser.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionParser.java @@ -18,17 +18,14 @@ package org.springframework.data.repository.config; import static org.springframework.beans.factory.support.BeanDefinitionReaderUtils.*; import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.parsing.BeanComponentDefinition; import org.springframework.beans.factory.parsing.ReaderContext; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.xml.BeanDefinitionParser; import org.springframework.beans.factory.xml.ParserContext; -import org.springframework.beans.factory.xml.XmlReaderContext; -import org.springframework.core.env.Environment; -import org.springframework.core.io.ResourceLoader; import org.springframework.data.config.ConfigurationUtils; import org.springframework.lang.Nullable; import org.springframework.util.Assert; + import org.w3c.dom.Element; /** @@ -60,22 +57,22 @@ public class RepositoryBeanDefinitionParser implements BeanDefinitionParser { @Nullable public BeanDefinition parse(Element element, ParserContext parser) { - XmlReaderContext readerContext = parser.getReaderContext(); + var readerContext = parser.getReaderContext(); try { - ResourceLoader resourceLoader = ConfigurationUtils.getRequiredResourceLoader(readerContext); - Environment environment = readerContext.getEnvironment(); - BeanDefinitionRegistry registry = parser.getRegistry(); + var resourceLoader = ConfigurationUtils.getRequiredResourceLoader(readerContext); + var environment = readerContext.getEnvironment(); + var registry = parser.getRegistry(); - XmlRepositoryConfigurationSource configSource = new XmlRepositoryConfigurationSource(element, parser, + var configSource = new XmlRepositoryConfigurationSource(element, parser, environment); - RepositoryConfigurationDelegate delegate = new RepositoryConfigurationDelegate(configSource, resourceLoader, + var delegate = new RepositoryConfigurationDelegate(configSource, resourceLoader, environment); RepositoryConfigurationUtils.exposeRegistration(extension, registry, configSource); - for (BeanComponentDefinition definition : delegate.registerRepositoriesIn(registry, extension)) { + for (var definition : delegate.registerRepositoriesIn(registry, extension)) { readerContext.fireComponentRegistered(definition); } @@ -100,7 +97,7 @@ public class RepositoryBeanDefinitionParser implements BeanDefinitionParser { */ protected static boolean hasBean(Class type, BeanDefinitionRegistry registry) { - String name = String.format("%s%s0", type.getName(), GENERATED_BEAN_NAME_SEPARATOR); + var name = String.format("%s%s0", type.getName(), GENERATED_BEAN_NAME_SEPARATOR); return registry.containsBeanDefinition(name); } } diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupport.java b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupport.java index d07cd303c..722f7dfae 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupport.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupport.java @@ -94,13 +94,13 @@ public abstract class RepositoryBeanDefinitionRegistrarSupport return; } - AnnotationRepositoryConfigurationSource configurationSource = new AnnotationRepositoryConfigurationSource(metadata, + var configurationSource = new AnnotationRepositoryConfigurationSource(metadata, getAnnotation(), resourceLoader, environment, registry, generator); - RepositoryConfigurationExtension extension = getExtension(); + var extension = getExtension(); RepositoryConfigurationUtils.exposeRegistration(extension, registry, configurationSource); - RepositoryConfigurationDelegate delegate = new RepositoryConfigurationDelegate(configurationSource, resourceLoader, + var delegate = new RepositoryConfigurationDelegate(configurationSource, resourceLoader, environment); delegate.registerRepositoriesIn(registry, extension); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryBeanNameGenerator.java b/src/main/java/org/springframework/data/repository/config/RepositoryBeanNameGenerator.java index eeebe0ea1..4b0fb5521 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryBeanNameGenerator.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryBeanNameGenerator.java @@ -18,7 +18,6 @@ package org.springframework.data.repository.config; import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition; import org.springframework.beans.factory.annotation.AnnotatedGenericBeanDefinition; import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.BeanNameGenerator; import org.springframework.context.annotation.AnnotationBeanNameGenerator; @@ -69,7 +68,7 @@ class RepositoryBeanNameGenerator { */ public String generateBeanName(BeanDefinition definition) { - AnnotatedBeanDefinition beanDefinition = definition instanceof AnnotatedBeanDefinition // + var beanDefinition = definition instanceof AnnotatedBeanDefinition // ? (AnnotatedBeanDefinition) definition // : new AnnotatedGenericBeanDefinition(getRepositoryInterfaceFrom(definition)); @@ -86,14 +85,14 @@ class RepositoryBeanNameGenerator { */ private Class getRepositoryInterfaceFrom(BeanDefinition beanDefinition) { - ValueHolder argumentValue = beanDefinition.getConstructorArgumentValues().getArgumentValue(0, Class.class); + var argumentValue = beanDefinition.getConstructorArgumentValues().getArgumentValue(0, Class.class); if (argumentValue == null) { throw new IllegalStateException( String.format("Failed to obtain first constructor parameter value of BeanDefinition %s!", beanDefinition)); } - Object value = argumentValue.getValue(); + var value = argumentValue.getValue(); if (value == null) { diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryComponentProvider.java b/src/main/java/org/springframework/data/repository/config/RepositoryComponentProvider.java index 2f3ca9a2d..9f6ba3f28 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryComponentProvider.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryComponentProvider.java @@ -107,9 +107,9 @@ class RepositoryComponentProvider extends ClassPathScanningCandidateComponentPro @Override protected boolean isCandidateComponent(AnnotatedBeanDefinition beanDefinition) { - boolean isNonRepositoryInterface = !ClassUtils.isGenericRepositoryInterface(beanDefinition.getBeanClassName()); - boolean isTopLevelType = !beanDefinition.getMetadata().hasEnclosingClass(); - boolean isConsiderNestedRepositories = isConsiderNestedRepositoryInterfaces(); + var isNonRepositoryInterface = !ClassUtils.isGenericRepositoryInterface(beanDefinition.getBeanClassName()); + var isTopLevelType = !beanDefinition.getMetadata().hasEnclosingClass(); + var isConsiderNestedRepositories = isConsiderNestedRepositoryInterfaces(); return isNonRepositoryInterface && (isTopLevelType || isConsiderNestedRepositories); } @@ -120,9 +120,9 @@ class RepositoryComponentProvider extends ClassPathScanningCandidateComponentPro @Override public Set findCandidateComponents(String basePackage) { - Set candidates = super.findCandidateComponents(basePackage); + var candidates = super.findCandidateComponents(basePackage); - for (BeanDefinition candidate : candidates) { + for (var candidate : candidates) { if (candidate instanceof AnnotatedBeanDefinition) { AnnotationConfigUtils.processCommonDefinitionAnnotations((AnnotatedBeanDefinition) candidate); } @@ -214,7 +214,7 @@ class RepositoryComponentProvider extends ClassPathScanningCandidateComponentPro public boolean match(MetadataReader metadataReader, MetadataReaderFactory metadataReaderFactory) throws IOException { - for (TypeFilter filter : delegates) { + for (var filter : delegates) { if (!filter.match(metadataReader, metadataReaderFactory)) { return false; } diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationDelegate.java b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationDelegate.java index 28f1501e4..039c8dc7e 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationDelegate.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationDelegate.java @@ -17,7 +17,6 @@ package org.springframework.data.repository.config; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -25,12 +24,11 @@ import java.util.stream.Collectors; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.beans.factory.config.ConfigurableBeanFactory; import org.springframework.beans.factory.config.DependencyDescriptor; import org.springframework.beans.factory.parsing.BeanComponentDefinition; -import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.AutowireCandidateResolver; -import org.springframework.beans.factory.support.BeanDefinitionBuilder; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.context.annotation.ContextAnnotationAutowireCandidateResolver; @@ -42,7 +40,6 @@ import org.springframework.core.io.ResourceLoader; import org.springframework.core.io.support.SpringFactoriesLoader; import org.springframework.core.log.LogMessage; import org.springframework.core.metrics.ApplicationStartup; -import org.springframework.core.metrics.StartupStep; import org.springframework.data.repository.core.support.RepositoryFactorySupport; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -87,7 +84,7 @@ public class RepositoryConfigurationDelegate { ResourceLoader resourceLoader, Environment environment) { this.isXml = configurationSource instanceof XmlRepositoryConfigurationSource; - boolean isAnnotation = configurationSource instanceof AnnotationRepositoryConfigurationSource; + var isAnnotation = configurationSource instanceof AnnotationRepositoryConfigurationSource; Assert.isTrue(isXml || isAnnotation, "Configuration source must either be an Xml- or an AnnotationBasedConfigurationSource!"); @@ -135,11 +132,11 @@ public class RepositoryConfigurationDelegate { extension.registerBeansForRoot(registry, configurationSource); - RepositoryBeanDefinitionBuilder builder = new RepositoryBeanDefinitionBuilder(registry, extension, + var builder = new RepositoryBeanDefinitionBuilder(registry, extension, configurationSource, resourceLoader, environment); List definitions = new ArrayList<>(); - StopWatch watch = new StopWatch(); + var watch = new StopWatch(); if (logger.isDebugEnabled()) { logger.debug(LogMessage.format("Scanning for %s repositories in packages %s.", // @@ -147,15 +144,15 @@ public class RepositoryConfigurationDelegate { configurationSource.getBasePackages().stream().collect(Collectors.joining(", ")))); } - ApplicationStartup startup = getStartup(registry); - StartupStep repoScan = startup.start("spring.data.repository.scanning"); + var startup = getStartup(registry); + var repoScan = startup.start("spring.data.repository.scanning"); repoScan.tag("dataModule", extension.getModuleName()); repoScan.tag("basePackages", () -> configurationSource.getBasePackages().stream().collect(Collectors.joining(", "))); watch.start(); - Collection> configurations = extension + var configurations = extension .getRepositoryConfigurations(configurationSource, resourceLoader, inMultiStoreMode); Map> configurationsByRepositoryName = new HashMap<>(configurations.size()); @@ -164,7 +161,7 @@ public class RepositoryConfigurationDelegate { configurationsByRepositoryName.put(configuration.getRepositoryInterface(), configuration); - BeanDefinitionBuilder definitionBuilder = builder.build(configuration); + var definitionBuilder = builder.build(configuration); extension.postProcess(definitionBuilder, configurationSource); @@ -174,10 +171,10 @@ public class RepositoryConfigurationDelegate { extension.postProcess(definitionBuilder, (AnnotationRepositoryConfigurationSource) configurationSource); } - AbstractBeanDefinition beanDefinition = definitionBuilder.getBeanDefinition(); + var beanDefinition = definitionBuilder.getBeanDefinition(); beanDefinition.setResourceDescription(configuration.getResourceDescription()); - String beanName = configurationSource.generateBeanName(beanDefinition); + var beanName = configurationSource.generateBeanName(beanDefinition); if (logger.isTraceEnabled()) { logger.trace(LogMessage.format(REPOSITORY_REGISTRATION, extension.getModuleName(), beanName, configuration.getRepositoryInterface(), @@ -220,8 +217,8 @@ public class RepositoryConfigurationDelegate { return; } - DefaultListableBeanFactory beanFactory = DefaultListableBeanFactory.class.cast(registry); - AutowireCandidateResolver resolver = beanFactory.getAutowireCandidateResolver(); + var beanFactory = DefaultListableBeanFactory.class.cast(registry); + var resolver = beanFactory.getAutowireCandidateResolver(); if (!Arrays.asList(ContextAnnotationAutowireCandidateResolver.class, LazyRepositoryInjectionPointResolver.class) .contains(resolver.getClass())) { @@ -255,7 +252,7 @@ public class RepositoryConfigurationDelegate { */ private boolean multipleStoresDetected() { - boolean multipleModulesFound = SpringFactoriesLoader + var multipleModulesFound = SpringFactoriesLoader .loadFactoryNames(RepositoryFactorySupport.class, resourceLoader.getClassLoader()).size() > 1; if (multipleModulesFound) { @@ -318,15 +315,15 @@ public class RepositoryConfigurationDelegate { @Override protected boolean isLazy(DependencyDescriptor descriptor) { - Class type = descriptor.getDependencyType(); + var type = descriptor.getDependencyType(); - RepositoryConfiguration configuration = configurations.get(type.getName()); + var configuration = configurations.get(type.getName()); if (configuration == null) { return super.isLazy(descriptor); } - boolean lazyInit = configuration.isLazyInit(); + var lazyInit = configuration.isLazyInit(); if (lazyInit) { logger.debug(LogMessage.format("Creating lazy injection proxy for %s…", configuration.getRepositoryInterface())); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java index 1b633b652..6a6ab8be1 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java @@ -89,10 +89,10 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit Set> result = new HashSet<>(); - for (BeanDefinition candidate : configSource.getCandidates(loader)) { + for (var candidate : configSource.getCandidates(loader)) { - RepositoryConfiguration configuration = getRepositoryConfiguration(candidate, configSource); - Class repositoryInterface = loadRepositoryInterface(configuration, + var configuration = getRepositoryConfiguration(candidate, configSource); + var repositoryInterface = loadRepositoryInterface(configuration, getConfigurationInspectionClassLoader(loader)); if (repositoryInterface == null) { @@ -100,9 +100,9 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit continue; } - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(repositoryInterface); + var metadata = AbstractRepositoryMetadata.getMetadata(repositoryInterface); - boolean qualifiedForImplementation = !strictMatchesOnly || configSource.usesExplicitFilters() + var qualifiedForImplementation = !strictMatchesOnly || configSource.usesExplicitFilters() || isStrictRepositoryCandidate(metadata); if (qualifiedForImplementation && useRepositoryConfiguration(metadata)) { @@ -204,7 +204,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit bean.setSource(source); - String beanName = generateBeanName(bean, registry); + var beanName = generateBeanName(bean, registry); registry.registerBeanDefinition(beanName, bean); return beanName; @@ -227,7 +227,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit return; } - AbstractBeanDefinition bean = supplier.get(); + var bean = supplier.get(); bean.setSource(source); registry.registerBeanDefinition(beanName, bean); @@ -250,7 +250,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit return; } - AbstractBeanDefinition definition = supplier.get(); + var definition = supplier.get(); definition.setSource(source); definition.setLazyInit(true); @@ -267,7 +267,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit */ public static boolean hasBean(Class type, BeanDefinitionRegistry registry) { - String name = String.format("%s%s0", type.getName(), GENERATED_BEAN_NAME_SEPARATOR); + var name = String.format("%s%s0", type.getName(), GENERATED_BEAN_NAME_SEPARATOR); return registry.containsBeanDefinition(name); } @@ -302,9 +302,9 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit return false; } - Collection> types = getIdentifyingTypes(); - Collection> annotations = getIdentifyingAnnotations(); - String moduleName = getModuleName(); + var types = getIdentifyingTypes(); + var annotations = getIdentifyingAnnotations(); + var moduleName = getModuleName(); if (types.isEmpty() && annotations.isEmpty()) { if (!noMultiStoreSupport) { @@ -314,23 +314,23 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit } } - Class repositoryInterface = metadata.getRepositoryInterface(); + var repositoryInterface = metadata.getRepositoryInterface(); - for (Class type : types) { + for (var type : types) { if (type.isAssignableFrom(repositoryInterface)) { return true; } } - Class domainType = metadata.getDomainType(); + var domainType = metadata.getDomainType(); - for (Class annotationType : annotations) { + for (var annotationType : annotations) { if (AnnotationUtils.findAnnotation(domainType, annotationType) != null) { return true; } } - String message = String.format(MULTI_STORE_DROPPED, moduleName, repositoryInterface, moduleName); + var message = String.format(MULTI_STORE_DROPPED, moduleName, repositoryInterface, moduleName); if (!annotations.isEmpty()) { message = message.concat(" consider annotating your entities with one of these annotations: ") // @@ -384,7 +384,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit private Class loadRepositoryInterface(RepositoryConfiguration configuration, @Nullable ClassLoader classLoader) { - String repositoryInterface = configuration.getRepositoryInterface(); + var repositoryInterface = configuration.getRepositoryInterface(); try { return org.springframework.util.ClassUtils.forName(repositoryInterface, classLoader); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationSourceSupport.java b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationSourceSupport.java index d70819cad..efb963cbc 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationSourceSupport.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationSourceSupport.java @@ -69,12 +69,12 @@ public abstract class RepositoryConfigurationSourceSupport implements Repository @Override public Streamable getCandidates(ResourceLoader loader) { - RepositoryComponentProvider scanner = new RepositoryComponentProvider(getIncludeFilters(), registry); + var scanner = new RepositoryComponentProvider(getIncludeFilters(), registry); scanner.setConsiderNestedRepositoryInterfaces(shouldConsiderNestedRepositories()); scanner.setEnvironment(environment); scanner.setResourceLoader(loader); - getExcludeFilters().forEach(it -> scanner.addExcludeFilter(it)); + getExcludeFilters().forEach(scanner::addExcludeFilter); return Streamable.of(() -> getBasePackages().stream()// .flatMap(it -> scanner.findCandidateComponents(it).stream())); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationUtils.java b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationUtils.java index 98c33e6a5..661f6e464 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationUtils.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationUtils.java @@ -47,15 +47,15 @@ public interface RepositoryConfigurationUtils { Assert.notNull(registry, "BeanDefinitionRegistry must not be null!"); Assert.notNull(configurationSource, "RepositoryConfigurationSource must not be null!"); - Class extensionType = extension.getClass(); - String beanName = extensionType.getName().concat(GENERATED_BEAN_NAME_SEPARATOR).concat("0"); + var extensionType = extension.getClass(); + var beanName = extensionType.getName().concat(GENERATED_BEAN_NAME_SEPARATOR).concat("0"); if (registry.containsBeanDefinition(beanName)) { return; } // Register extension as bean to indicate repository parsing and registration has happened - RootBeanDefinition definition = new RootBeanDefinition(extensionType); + var definition = new RootBeanDefinition(extensionType); definition.setSource(configurationSource.getSource()); definition.setRole(AbstractBeanDefinition.ROLE_INFRASTRUCTURE); definition.setLazyInit(true); diff --git a/src/main/java/org/springframework/data/repository/config/RepositoryFragmentConfiguration.java b/src/main/java/org/springframework/data/repository/config/RepositoryFragmentConfiguration.java index 40f8f36eb..655f6193c 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryFragmentConfiguration.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryFragmentConfiguration.java @@ -115,11 +115,10 @@ public final class RepositoryFragmentConfiguration { return true; } - if (!(o instanceof RepositoryFragmentConfiguration)) { + if (!(o instanceof RepositoryFragmentConfiguration that)) { return false; } - RepositoryFragmentConfiguration that = (RepositoryFragmentConfiguration) o; if (!ObjectUtils.nullSafeEquals(interfaceName, that.interfaceName)) { return false; } @@ -137,7 +136,7 @@ public final class RepositoryFragmentConfiguration { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(interfaceName); + var result = ObjectUtils.nullSafeHashCode(interfaceName); result = 31 * result + ObjectUtils.nullSafeHashCode(className); result = 31 * result + ObjectUtils.nullSafeHashCode(beanDefinition); return result; diff --git a/src/main/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParser.java b/src/main/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParser.java index 249a6992d..8cb7f443b 100644 --- a/src/main/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParser.java +++ b/src/main/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParser.java @@ -42,7 +42,7 @@ public class ResourceReaderRepositoryPopulatorBeanDefinitionParser extends Abstr @Override protected String getBeanClassName(Element element) { - String name = element.getLocalName(); + var name = element.getLocalName(); if ("unmarshaller-populator".equals(name)) { return UnmarshallerRepositoryPopulatorFactoryBean.class.getName(); @@ -60,7 +60,7 @@ public class ResourceReaderRepositoryPopulatorBeanDefinitionParser extends Abstr @Override protected void doParse(Element element, BeanDefinitionBuilder builder) { - String localName = element.getLocalName(); + var localName = element.getLocalName(); builder.addPropertyValue("resources", element.getAttribute("locations")); @@ -79,7 +79,7 @@ public class ResourceReaderRepositoryPopulatorBeanDefinitionParser extends Abstr */ private static void parseJsonPopulator(Element element, BeanDefinitionBuilder builder) { - String objectMapperRef = element.getAttribute("object-mapper-ref"); + var objectMapperRef = element.getAttribute("object-mapper-ref"); if (StringUtils.hasText(objectMapperRef)) { builder.addPropertyReference("mapper", objectMapperRef); @@ -94,7 +94,7 @@ public class ResourceReaderRepositoryPopulatorBeanDefinitionParser extends Abstr */ private static void parseXmlPopulator(Element element, BeanDefinitionBuilder builder) { - String unmarshallerRefName = element.getAttribute("unmarshaller-ref"); + var unmarshallerRefName = element.getAttribute("unmarshaller-ref"); if (StringUtils.hasText(unmarshallerRefName)) { builder.addPropertyReference("unmarshaller", unmarshallerRefName); diff --git a/src/main/java/org/springframework/data/repository/config/SelectionSet.java b/src/main/java/org/springframework/data/repository/config/SelectionSet.java index 68fd8cb86..0667dc94b 100644 --- a/src/main/java/org/springframework/data/repository/config/SelectionSet.java +++ b/src/main/java/org/springframework/data/repository/config/SelectionSet.java @@ -60,7 +60,7 @@ class SelectionSet { */ Optional uniqueResult() { - Optional uniqueResult = findUniqueResult(); + var uniqueResult = findUniqueResult(); return uniqueResult.isPresent() ? uniqueResult : fallback.apply(collection); } diff --git a/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java b/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java index c999b00d3..b76236519 100644 --- a/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java +++ b/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java @@ -80,7 +80,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou this.element = element; this.context = context; - TypeFilterParser parser = new TypeFilterParser(context.getReaderContext()); + var parser = new TypeFilterParser(context.getReaderContext()); this.includeFilters = parser.parseTypeFilters(element, Type.INCLUDE); this.excludeFilters = parser.parseTypeFilters(element, Type.EXCLUDE); } @@ -100,7 +100,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou */ public Streamable getBasePackages() { - String attribute = element.getAttribute(BASE_PACKAGE); + var attribute = element.getAttribute(BASE_PACKAGE); return Streamable.of(StringUtils.delimitedListToStringArray(attribute, ",", " ")); } @@ -183,7 +183,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou private Optional getNullDefaultedAttribute(Element element, String attributeName) { - String attribute = element.getAttribute(attributeName); + var attribute = element.getAttribute(attributeName); return StringUtils.hasText(attribute) ? Optional.of(attribute) : Optional.empty(); } @@ -203,8 +203,8 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou @Override public Optional getAttribute(String name) { - String xmlAttributeName = ParsingUtils.reconcatenateCamelCase(name, "-"); - String attribute = element.getAttribute(xmlAttributeName); + var xmlAttributeName = ParsingUtils.reconcatenateCamelCase(name, "-"); + var attribute = element.getAttribute(xmlAttributeName); return StringUtils.hasText(attribute) ? Optional.of(attribute) : Optional.empty(); } @@ -238,7 +238,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou @Override public BootstrapMode getBootstrapMode() { - String attribute = element.getAttribute(BOOTSTRAP_MODE); + var attribute = element.getAttribute(BOOTSTRAP_MODE); return StringUtils.hasText(attribute) // ? BootstrapMode.valueOf(attribute.toUpperCase(Locale.US)) // @@ -253,7 +253,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou @NonNull public String getResourceDescription() { - Object source = getSource(); + var source = getSource(); return source == null ? "" : source.toString(); } diff --git a/src/main/java/org/springframework/data/repository/core/EntityInformation.java b/src/main/java/org/springframework/data/repository/core/EntityInformation.java index 53c236326..7762a23a3 100644 --- a/src/main/java/org/springframework/data/repository/core/EntityInformation.java +++ b/src/main/java/org/springframework/data/repository/core/EntityInformation.java @@ -56,7 +56,7 @@ public interface EntityInformation extends EntityMetadata { Assert.notNull(entity, "Entity must not be null!"); - ID id = getId(entity); + var id = getId(entity); if (id != null) { return id; diff --git a/src/main/java/org/springframework/data/repository/core/support/AbstractEntityInformation.java b/src/main/java/org/springframework/data/repository/core/support/AbstractEntityInformation.java index 7ada9d16a..68df66e13 100644 --- a/src/main/java/org/springframework/data/repository/core/support/AbstractEntityInformation.java +++ b/src/main/java/org/springframework/data/repository/core/support/AbstractEntityInformation.java @@ -43,8 +43,8 @@ public abstract class AbstractEntityInformation implements EntityInformat */ public boolean isNew(T entity) { - ID id = getId(entity); - Class idType = getIdType(); + var id = getId(entity); + var idType = getIdType(); if (!idType.isPrimitive()) { return id == null; diff --git a/src/main/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadata.java b/src/main/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadata.java index 23d806cc5..367bda4f1 100644 --- a/src/main/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadata.java +++ b/src/main/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadata.java @@ -18,7 +18,6 @@ package org.springframework.data.repository.core.support; import java.lang.reflect.Method; import java.util.Arrays; import java.util.Collections; -import java.util.List; import java.util.Set; import org.springframework.core.KotlinDetector; @@ -90,7 +89,7 @@ public abstract class AbstractRepositoryMetadata implements RepositoryMetadata { if (KotlinDetector.isKotlinType(method.getDeclaringClass()) && KotlinReflectionUtils.isSuspend(method)) { // the last parameter is Continuation or Continuation> - List> types = typeInformation.getParameterTypes(method); + var types = typeInformation.getParameterTypes(method); returnType = types.get(types.size() - 1).getComponentType(); } @@ -107,7 +106,7 @@ public abstract class AbstractRepositoryMetadata implements RepositoryMetadata { */ public Class getReturnedDomainClass(Method method) { - TypeInformation returnType = getReturnType(method); + var returnType = getReturnType(method); return QueryExecutionConverters.unwrapWrapperTypes(ReactiveWrapperConverters.unwrapWrapperTypes(returnType)) .getType(); diff --git a/src/main/java/org/springframework/data/repository/core/support/AnnotationRepositoryMetadata.java b/src/main/java/org/springframework/data/repository/core/support/AnnotationRepositoryMetadata.java index e7b5cf426..0a450f26d 100644 --- a/src/main/java/org/springframework/data/repository/core/support/AnnotationRepositoryMetadata.java +++ b/src/main/java/org/springframework/data/repository/core/support/AnnotationRepositoryMetadata.java @@ -73,7 +73,7 @@ public class AnnotationRepositoryMetadata extends AbstractRepositoryMetadata { private Class resolveIdType(Class repositoryInterface) { - RepositoryDefinition annotation = AnnotationUtils.findAnnotation(repositoryInterface, RepositoryDefinition.class); + var annotation = AnnotationUtils.findAnnotation(repositoryInterface, RepositoryDefinition.class); if (annotation == null || annotation.idClass() == null) { throw new IllegalArgumentException(String.format("Could not resolve id type of %s!", repositoryInterface)); @@ -84,7 +84,7 @@ public class AnnotationRepositoryMetadata extends AbstractRepositoryMetadata { private Class resolveDomainType(Class repositoryInterface) { - RepositoryDefinition annotation = AnnotationUtils.findAnnotation(repositoryInterface, RepositoryDefinition.class); + var annotation = AnnotationUtils.findAnnotation(repositoryInterface, RepositoryDefinition.class); if (annotation == null || annotation.domainClass() == null) { throw new IllegalArgumentException(String.format("Could not resolve domain type of %s!", repositoryInterface)); diff --git a/src/main/java/org/springframework/data/repository/core/support/DefaultCrudMethods.java b/src/main/java/org/springframework/data/repository/core/support/DefaultCrudMethods.java index 87e609c20..85c26f233 100644 --- a/src/main/java/org/springframework/data/repository/core/support/DefaultCrudMethods.java +++ b/src/main/java/org/springframework/data/repository/core/support/DefaultCrudMethods.java @@ -112,7 +112,7 @@ public class DefaultCrudMethods implements CrudMethods { Pair.of(DELETE_BY_ID, Object.class), // Pair.of(DELETE, Iterable.class)); - Class repositoryInterface = metadata.getRepositoryInterface(); + var repositoryInterface = metadata.getRepositoryInterface(); return source// .flatMap(it -> toStream(findMethod(repositoryInterface, it.getFirst(), it.getSecond())))// @@ -133,14 +133,14 @@ public class DefaultCrudMethods implements CrudMethods { */ private static Optional selectMostSuitableFindAllMethod(RepositoryMetadata metadata) { - Class repositoryInterface = metadata.getRepositoryInterface(); + var repositoryInterface = metadata.getRepositoryInterface(); - Supplier> withPageableOrSort = () -> Stream.of(Pageable.class, Sort.class)// + var withPageableOrSort = (Supplier>) () -> Stream.of(Pageable.class, Sort.class)// .flatMap(it -> toStream(findMethod(repositoryInterface, FIND_ALL, it)))// .flatMap(it -> toStream(getMostSpecificMethod(it, repositoryInterface)))// .findFirst(); - Supplier> withoutParameter = () -> findMethod(repositoryInterface, FIND_ALL)// + var withoutParameter = (Supplier>) () -> findMethod(repositoryInterface, FIND_ALL)// .flatMap(it -> getMostSpecificMethod(it, repositoryInterface)); return firstNonEmpty(withPageableOrSort, withoutParameter); diff --git a/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryInformation.java b/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryInformation.java index 9527cdd8a..38f78b016 100644 --- a/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryInformation.java +++ b/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryInformation.java @@ -113,7 +113,7 @@ class DefaultRepositoryInformation implements RepositoryInformation { return methodCache.get(method); } - Method result = composition.findMethod(method).orElse(method); + var result = composition.findMethod(method).orElse(method); if (!result.equals(method)) { return cacheAndReturn(method, result); @@ -141,7 +141,7 @@ class DefaultRepositoryInformation implements RepositoryInformation { Set result = new HashSet<>(); - for (Method method : getRepositoryInterface().getMethods()) { + for (var method : getRepositoryInterface().getMethods()) { method = ClassUtils.getMostSpecificMethod(method, getRepositoryInterface()); if (isQueryMethodCandidate(method)) { result.add(method); @@ -211,14 +211,14 @@ class DefaultRepositoryInformation implements RepositoryInformation { @Override public boolean hasCustomMethod() { - Class repositoryInterface = getRepositoryInterface(); + var repositoryInterface = getRepositoryInterface(); // No detection required if no typing interface was configured if (isGenericRepositoryInterface(repositoryInterface)) { return false; } - for (Method method : repositoryInterface.getMethods()) { + for (var method : repositoryInterface.getMethods()) { if (isCustomMethod(method) && !isBaseClassMethod(method)) { return true; } diff --git a/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadata.java b/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadata.java index f0855ee3f..c75c42eb8 100644 --- a/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadata.java +++ b/src/main/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadata.java @@ -49,7 +49,7 @@ public class DefaultRepositoryMetadata extends AbstractRepositoryMetadata { super(repositoryInterface); Assert.isTrue(Repository.class.isAssignableFrom(repositoryInterface), MUST_BE_A_REPOSITORY); - List> arguments = ClassTypeInformation.from(repositoryInterface) // + var arguments = ClassTypeInformation.from(repositoryInterface) // .getRequiredSuperTypeInformation(Repository.class)// .getTypeArguments(); diff --git a/src/main/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessor.java b/src/main/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessor.java index 433839310..cdda0f916 100644 --- a/src/main/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessor.java +++ b/src/main/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessor.java @@ -65,7 +65,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr @Override public void postProcess(ProxyFactory factory, RepositoryInformation repositoryInformation) { - EventPublishingMethod method = EventPublishingMethod.of(repositoryInformation.getDomainType()); + var method = EventPublishingMethod.of(repositoryInformation.getDomainType()); if (method == null) { return; @@ -105,13 +105,13 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr @Nullable public Object invoke(MethodInvocation invocation) throws Throwable { - Object result = invocation.proceed(); + var result = invocation.proceed(); if (!isEventPublishingMethod(invocation.getMethod())) { return result; } - Object[] arguments = invocation.getArguments(); + var arguments = invocation.getArguments(); eventMethod.publishEventsFrom(arguments[0], publisher); @@ -168,13 +168,13 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr Assert.notNull(type, "Type must not be null!"); - EventPublishingMethod eventPublishingMethod = cache.get(type); + var eventPublishingMethod = cache.get(type); if (eventPublishingMethod != null) { return eventPublishingMethod.orNull(); } - EventPublishingMethod result = from(type, getDetector(type, DomainEvents.class), + var result = from(type, getDetector(type, DomainEvents.class), () -> getDetector(type, AfterDomainEventPublication.class)); cache.put(type, result); @@ -194,13 +194,13 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr return; } - for (Object aggregateRoot : asCollection(object)) { + for (var aggregateRoot : asCollection(object)) { if (!type.isInstance(aggregateRoot)) { continue; } - for (Object event : asCollection(ReflectionUtils.invokeMethod(publishingMethod, aggregateRoot))) { + for (var event : asCollection(ReflectionUtils.invokeMethod(publishingMethod, aggregateRoot))) { publisher.publishEvent(event); } @@ -223,7 +223,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr private static AnnotationDetectionMethodCallback getDetector(Class type, Class annotation) { - AnnotationDetectionMethodCallback callback = new AnnotationDetectionMethodCallback<>(annotation); + var callback = new AnnotationDetectionMethodCallback(annotation); ReflectionUtils.doWithMethods(type, callback); return callback; @@ -244,7 +244,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr return EventPublishingMethod.NONE; } - Method eventMethod = publishing.getRequiredMethod(); + var eventMethod = publishing.getRequiredMethod(); ReflectionUtils.makeAccessible(eventMethod); return new EventPublishingMethod(type, eventMethod, getClearingMethod(clearing.get())); @@ -263,7 +263,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr return null; } - Method method = clearing.getRequiredMethod(); + var method = clearing.getRequiredMethod(); ReflectionUtils.makeAccessible(method); return method; diff --git a/src/main/java/org/springframework/data/repository/core/support/MethodInvocationValidator.java b/src/main/java/org/springframework/data/repository/core/support/MethodInvocationValidator.java index ec261ef4a..76204a269 100644 --- a/src/main/java/org/springframework/data/repository/core/support/MethodInvocationValidator.java +++ b/src/main/java/org/springframework/data/repository/core/support/MethodInvocationValidator.java @@ -71,8 +71,8 @@ public class MethodInvocationValidator implements MethodInterceptor { @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); - Nullability nullability = nullabilityCache.get(method); + var method = invocation.getMethod(); + var nullability = nullabilityCache.get(method); if (nullability == null) { @@ -80,9 +80,9 @@ public class MethodInvocationValidator implements MethodInterceptor { nullabilityCache.put(method, nullability); } - Object[] arguments = invocation.getArguments(); + var arguments = invocation.getArguments(); - for (int i = 0; i < method.getParameterCount(); i++) { + for (var i = 0; i < method.getParameterCount(); i++) { if (nullability.isNullableParameter(i)) { continue; @@ -95,7 +95,7 @@ public class MethodInvocationValidator implements MethodInterceptor { } } - Object result = invocation.proceed(); + var result = invocation.proceed(); if (result == null && !nullability.isNullableReturn()) { throw new EmptyResultDataAccessException("Result must not be null!", 1); @@ -118,13 +118,13 @@ public class MethodInvocationValidator implements MethodInterceptor { static Nullability of(Method method, ParameterNameDiscoverer discoverer) { - boolean nullableReturn = isNullableParameter(new MethodParameter(method, -1)); - boolean[] nullableParameters = new boolean[method.getParameterCount()]; - MethodParameter[] methodParameters = new MethodParameter[method.getParameterCount()]; + var nullableReturn = isNullableParameter(new MethodParameter(method, -1)); + var nullableParameters = new boolean[method.getParameterCount()]; + var methodParameters = new MethodParameter[method.getParameterCount()]; - for (int i = 0; i < method.getParameterCount(); i++) { + for (var i = 0; i < method.getParameterCount(); i++) { - MethodParameter parameter = new MethodParameter(method, i); + var parameter = new MethodParameter(method, i); parameter.initParameterNameDiscovery(discoverer); nullableParameters[i] = isNullableParameter(parameter); methodParameters[i] = parameter; @@ -135,7 +135,7 @@ public class MethodInvocationValidator implements MethodInterceptor { String getMethodParameterName(int index) { - String parameterName = methodParameters[index].getParameterName(); + var parameterName = methodParameters[index].getParameterName(); if (parameterName == null) { parameterName = String.format("of type %s at index %d", @@ -183,12 +183,10 @@ public class MethodInvocationValidator implements MethodInterceptor { return true; } - if (!(o instanceof Nullability)) { + if (!(o instanceof Nullability that)) { return false; } - Nullability that = (Nullability) o; - if (nullableReturn != that.nullableReturn) { return false; } @@ -206,7 +204,7 @@ public class MethodInvocationValidator implements MethodInterceptor { */ @Override public int hashCode() { - int result = (nullableReturn ? 1 : 0); + var result = (nullableReturn ? 1 : 0); result = 31 * result + ObjectUtils.nullSafeHashCode(nullableParameters); result = 31 * result + ObjectUtils.nullSafeHashCode(methodParameters); return result; diff --git a/src/main/java/org/springframework/data/repository/core/support/MethodLookup.java b/src/main/java/org/springframework/data/repository/core/support/MethodLookup.java index 58b175357..21c283eab 100644 --- a/src/main/java/org/springframework/data/repository/core/support/MethodLookup.java +++ b/src/main/java/org/springframework/data/repository/core/support/MethodLookup.java @@ -119,11 +119,10 @@ public interface MethodLookup { return true; } - if (!(o instanceof InvokedMethod)) { + if (!(o instanceof InvokedMethod that)) { return false; } - InvokedMethod that = (InvokedMethod) o; return ObjectUtils.nullSafeEquals(method, that.method); } diff --git a/src/main/java/org/springframework/data/repository/core/support/MethodLookups.java b/src/main/java/org/springframework/data/repository/core/support/MethodLookups.java index 595252d88..198329a7e 100644 --- a/src/main/java/org/springframework/data/repository/core/support/MethodLookups.java +++ b/src/main/java/org/springframework/data/repository/core/support/MethodLookups.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.core.support; -import java.lang.reflect.GenericDeclaration; import java.lang.reflect.Method; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; @@ -56,7 +55,7 @@ interface MethodLookups { */ static MethodLookup direct() { - MethodPredicate direct = (invoked, candidate) -> candidate.getName().equals(invoked.getName()) + var direct = (MethodPredicate) (invoked, candidate) -> candidate.getName().equals(invoked.getName()) && candidate.getParameterCount() == invoked.getParameterCount() && Arrays.equals(candidate.getParameterTypes(), invoked.getParameterTypes()); @@ -132,7 +131,7 @@ interface MethodLookups { @Override public List getLookups() { - MethodPredicate detailedComparison = (invoked, candidate) -> Optional.of(candidate) + var detailedComparison = (MethodPredicate) (invoked, candidate) -> Optional.of(candidate) .filter(baseClassMethod -> baseClassMethod.getName().equals(invoked.getName()))// Right name .filter(baseClassMethod -> baseClassMethod.getParameterCount() == invoked.getParameterCount()) .filter(baseClassMethod -> parametersMatch(invoked.getMethod(), baseClassMethod))// All parameters match @@ -152,7 +151,7 @@ interface MethodLookups { */ protected boolean matchesGenericType(TypeVariable variable, ResolvableType parameterType) { - GenericDeclaration declaration = variable.getGenericDeclaration(); + var declaration = variable.getGenericDeclaration(); if (declaration instanceof Class) { @@ -160,13 +159,13 @@ interface MethodLookups { return true; } - Type boundType = variable.getBounds()[0]; - String referenceName = boundType instanceof TypeVariable ? boundType.toString() : variable.toString(); + var boundType = variable.getBounds()[0]; + var referenceName = boundType instanceof TypeVariable ? boundType.toString() : variable.toString(); return DOMAIN_TYPE_NAME.equals(referenceName) && parameterType.isAssignableFrom(entityType); } - for (Type type : variable.getBounds()) { + for (var type : variable.getBounds()) { if (ResolvableType.forType(type).isAssignableFrom(parameterType)) { return true; } @@ -185,16 +184,16 @@ interface MethodLookups { */ private boolean parametersMatch(Method invokedMethod, Method candidate) { - Class[] methodParameterTypes = invokedMethod.getParameterTypes(); - Type[] genericTypes = candidate.getGenericParameterTypes(); - Class[] types = candidate.getParameterTypes(); + var methodParameterTypes = invokedMethod.getParameterTypes(); + var genericTypes = candidate.getGenericParameterTypes(); + var types = candidate.getParameterTypes(); - for (int i = 0; i < genericTypes.length; i++) { + for (var i = 0; i < genericTypes.length; i++) { - Type genericType = genericTypes[i]; - Class type = types[i]; - MethodParameter parameter = new MethodParameter(invokedMethod, i).withContainingClass(repositoryInterface); - Class parameterType = parameter.getParameterType(); + var genericType = genericTypes[i]; + var type = types[i]; + var parameter = new MethodParameter(invokedMethod, i).withContainingClass(repositoryInterface); + var parameterType = parameter.getParameterType(); if (genericType instanceof TypeVariable) { @@ -241,7 +240,7 @@ interface MethodLookups { @Override public List getLookups() { - MethodPredicate convertibleComparison = (invokedMethod, candidate) -> { + var convertibleComparison = (MethodPredicate) (invokedMethod, candidate) -> { List>> suppliers = new ArrayList<>(); @@ -253,7 +252,8 @@ interface MethodLookups { return suppliers.stream().anyMatch(supplier -> supplier.get().isPresent()); }; - MethodPredicate detailedComparison = (invokedMethod, candidate) -> getMethodCandidate(invokedMethod, candidate, + var detailedComparison = (MethodPredicate) (invokedMethod, candidate) -> getMethodCandidate(invokedMethod, + candidate, matchParameterOrComponentType(repositoryMetadata.getRepositoryInterface())).isPresent(); return Arrays.asList(convertibleComparison, detailedComparison); @@ -272,9 +272,9 @@ interface MethodLookups { return (parameterCriteria) -> { - Class parameterType = parameterCriteria.getDeclared().withContainingClass(repositoryInterface) + var parameterType = parameterCriteria.getDeclared().withContainingClass(repositoryInterface) .getParameterType(); - Type genericType = parameterCriteria.getGenericBaseType(); + var genericType = parameterCriteria.getGenericBaseType(); if (genericType instanceof TypeVariable) { @@ -449,12 +449,10 @@ interface MethodLookups { return true; } - if (!(o instanceof ParameterOverrideCriteria)) { + if (!(o instanceof ParameterOverrideCriteria that)) { return false; } - ParameterOverrideCriteria that = (ParameterOverrideCriteria) o; - if (!ObjectUtils.nullSafeEquals(declared, that.declared)) { return false; } @@ -468,7 +466,7 @@ interface MethodLookups { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(declared); + var result = ObjectUtils.nullSafeHashCode(declared); result = 31 * result + ObjectUtils.nullSafeHashCode(base); return result; } diff --git a/src/main/java/org/springframework/data/repository/core/support/PropertiesBasedNamedQueries.java b/src/main/java/org/springframework/data/repository/core/support/PropertiesBasedNamedQueries.java index 6af3bf08b..d93e6ba29 100644 --- a/src/main/java/org/springframework/data/repository/core/support/PropertiesBasedNamedQueries.java +++ b/src/main/java/org/springframework/data/repository/core/support/PropertiesBasedNamedQueries.java @@ -56,7 +56,7 @@ public class PropertiesBasedNamedQueries implements NamedQueries { Assert.hasText(queryName, "Query name must not be null or empty!"); - String query = properties.getProperty(queryName); + var query = properties.getProperty(queryName); if (query == null) { throw new IllegalArgumentException(String.format(NO_QUERY_FOUND, queryName)); diff --git a/src/main/java/org/springframework/data/repository/core/support/QueryExecutionResultHandler.java b/src/main/java/org/springframework/data/repository/core/support/QueryExecutionResultHandler.java index 874d6d418..096af834b 100644 --- a/src/main/java/org/springframework/data/repository/core/support/QueryExecutionResultHandler.java +++ b/src/main/java/org/springframework/data/repository/core/support/QueryExecutionResultHandler.java @@ -72,15 +72,15 @@ class QueryExecutionResultHandler { return result; } - ReturnTypeDescriptor descriptor = getOrCreateReturnTypeDescriptor(method); + var descriptor = getOrCreateReturnTypeDescriptor(method); return postProcessInvocationResult(result, 0, descriptor); } private ReturnTypeDescriptor getOrCreateReturnTypeDescriptor(Method method) { - Map descriptorCache = this.descriptorCache; - ReturnTypeDescriptor descriptor = descriptorCache.get(method); + var descriptorCache = this.descriptorCache; + var descriptor = descriptorCache.get(method); if (descriptor == null) { @@ -116,13 +116,13 @@ class QueryExecutionResultHandler { @Nullable Object postProcessInvocationResult(@Nullable Object result, int nestingLevel, ReturnTypeDescriptor descriptor) { - TypeDescriptor returnTypeDescriptor = descriptor.getReturnTypeDescriptor(nestingLevel); + var returnTypeDescriptor = descriptor.getReturnTypeDescriptor(nestingLevel); if (returnTypeDescriptor == null) { return result; } - Class expectedReturnType = returnTypeDescriptor.getType(); + var expectedReturnType = returnTypeDescriptor.getType(); result = unwrapOptional(result); @@ -138,7 +138,7 @@ class QueryExecutionResultHandler { if (result != null) { - TypeDescriptor source = TypeDescriptor.valueOf(result.getClass()); + var source = TypeDescriptor.valueOf(result.getClass()); if (conversionRequired(source, returnTypeDescriptor)) { return conversionService.convert(result, returnTypeDescriptor); @@ -154,15 +154,15 @@ class QueryExecutionResultHandler { if (result instanceof Collection) { - TypeDescriptor elementDescriptor = descriptor.getReturnTypeDescriptor(nestingLevel + 1); - boolean requiresConversion = requiresConversion((Collection) result, expectedReturnType, elementDescriptor); + var elementDescriptor = descriptor.getReturnTypeDescriptor(nestingLevel + 1); + var requiresConversion = requiresConversion((Collection) result, expectedReturnType, elementDescriptor); if (!requiresConversion) { return result; } } - TypeDescriptor resultDescriptor = TypeDescriptor.forObject(result); + var resultDescriptor = TypeDescriptor.forObject(result); return conversionService.canConvert(resultDescriptor, returnTypeDescriptor) ? conversionService.convert(result, returnTypeDescriptor) : result; @@ -185,7 +185,7 @@ class QueryExecutionResultHandler { return false; } - Class type = elementDescriptor.getType(); + var type = elementDescriptor.getType(); for (Object o : collection) { diff --git a/src/main/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptor.java b/src/main/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptor.java index c06a5e565..b55ca02d5 100644 --- a/src/main/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptor.java +++ b/src/main/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptor.java @@ -112,7 +112,7 @@ class QueryExecutorMethodInterceptor implements MethodInterceptor { for (QueryCreationListener listener : queryPostProcessors) { - ResolvableType typeArgument = ResolvableType.forClass(QueryCreationListener.class, listener.getClass()) + var typeArgument = ResolvableType.forClass(QueryCreationListener.class, listener.getClass()) .getGeneric(0); if (typeArgument != null && typeArgument.isAssignableFrom(ResolvableType.forClass(query.getClass()))) { @@ -129,9 +129,9 @@ class QueryExecutorMethodInterceptor implements MethodInterceptor { @Nullable public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); + var method = invocation.getMethod(); - QueryExecutionConverters.ExecutionAdapter executionAdapter = QueryExecutionConverters // + var executionAdapter = QueryExecutionConverters // .getExecutionAdapter(method.getReturnType()); if (executionAdapter == null) { @@ -145,11 +145,11 @@ class QueryExecutorMethodInterceptor implements MethodInterceptor { @Nullable private Object doInvoke(MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); + var method = invocation.getMethod(); if (hasQueryFor(method)) { - RepositoryMethodInvoker invocationMetadata = invocationMetadataCache.get(method); + var invocationMetadata = invocationMetadataCache.get(method); if (invocationMetadata == null) { invocationMetadata = RepositoryMethodInvoker.forRepositoryQuery(method, queries.get(method)); diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryComposition.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryComposition.java index c64ed0e6d..3d19291ff 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryComposition.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryComposition.java @@ -31,7 +31,6 @@ import java.util.stream.Stream; import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.MethodLookup.InvokedMethod; -import org.springframework.data.repository.core.support.MethodLookup.MethodPredicate; import org.springframework.data.repository.core.support.RepositoryInvocationMulticaster.NoOpRepositoryInvocationMulticaster; import org.springframework.data.repository.util.ReactiveWrapperConverters; import org.springframework.data.repository.util.ReactiveWrappers; @@ -71,15 +70,15 @@ public class RepositoryComposition { if (ReactiveWrappers.isAvailable()) { - Class[] parameterTypes = method.getParameterTypes(); + var parameterTypes = method.getParameterTypes(); - Object[] converted = new Object[args.length]; - for (int i = 0; i < args.length; i++) { + var converted = new Object[args.length]; + for (var i = 0; i < args.length; i++) { - Object value = args[i]; - Object convertedArg = value; + var value = args[i]; + var convertedArg = value; - Class parameterType = parameterTypes.length > i ? parameterTypes[i] : null; + var parameterType = parameterTypes.length > i ? parameterTypes[i] : null; if (value != null && parameterType != null) { if (!parameterType.isAssignableFrom(value.getClass()) @@ -274,7 +273,7 @@ public class RepositoryComposition { */ Object invoke(RepositoryInvocationMulticaster listener, Method method, Object[] args) throws Throwable { - Method methodToCall = getMethod(method); + var methodToCall = getMethod(method); if (methodToCall == null) { throw new IllegalArgumentException(String.format("No fragment found for method %s", method)); @@ -317,7 +316,7 @@ public class RepositoryComposition { fragments.stream().forEach(it -> it.getImplementation() // .orElseThrow(() -> { - Class repositoryInterface = metadata != null ? metadata.getRepositoryInterface() : Object.class; + var repositoryInterface = metadata != null ? metadata.getRepositoryInterface() : Object.class; return new FragmentNotImplementedException(String.format("Fragment %s used in %s has no implementation.", ClassUtils.getQualifiedName(it.getSignatureContributor()), ClassUtils.getQualifiedName(repositoryInterface)), repositoryInterface, it); @@ -335,11 +334,10 @@ public class RepositoryComposition { return true; } - if (!(o instanceof RepositoryComposition)) { + if (!(o instanceof RepositoryComposition that)) { return false; } - RepositoryComposition that = (RepositoryComposition) o; return ObjectUtils.nullSafeEquals(fragments, that.fragments); } @@ -510,14 +508,14 @@ public class RepositoryComposition { Object invoke(Class repositoryInterface, RepositoryInvocationMulticaster listener, Method invokedMethod, Method methodToCall, Object[] args) throws Throwable { - RepositoryFragment fragment = fragmentCache.computeIfAbsent(methodToCall, this::findImplementationFragment); - Optional optional = fragment.getImplementation(); + var fragment = fragmentCache.computeIfAbsent(methodToCall, this::findImplementationFragment); + var optional = fragment.getImplementation(); if (!optional.isPresent()) { throw new IllegalArgumentException(String.format("No implementation found for method %s", methodToCall)); } - RepositoryMethodInvoker repositoryMethodInvoker = invocationMetadataCache.get(invokedMethod); + var repositoryMethodInvoker = invocationMetadataCache.get(invokedMethod); if (repositoryMethodInvoker == null) { @@ -541,9 +539,9 @@ public class RepositoryComposition { private static Method findMethod(InvokedMethod invokedMethod, MethodLookup lookup, Supplier> methodStreamSupplier) { - for (MethodPredicate methodPredicate : lookup.getLookups()) { + for (var methodPredicate : lookup.getLookups()) { - Optional resolvedMethod = methodStreamSupplier.get() + var resolvedMethod = methodStreamSupplier.get() .filter(it -> methodPredicate.test(invokedMethod, it)) // .findFirst(); @@ -585,12 +583,10 @@ public class RepositoryComposition { return true; } - if (!(o instanceof RepositoryFragments)) { + if (!(o instanceof RepositoryFragments that)) { return false; } - RepositoryFragments that = (RepositoryFragments) o; - if (!ObjectUtils.nullSafeEquals(fragmentCache, that.fragmentCache)) { return false; } @@ -608,7 +604,7 @@ public class RepositoryComposition { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(fragmentCache); + var result = ObjectUtils.nullSafeHashCode(fragmentCache); result = 31 * result + ObjectUtils.nullSafeHashCode(invocationMetadataCache); result = 31 * result + ObjectUtils.nullSafeHashCode(fragments); return result; diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupport.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupport.java index 16972a642..c4dade15f 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupport.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupport.java @@ -237,7 +237,7 @@ public abstract class RepositoryFactoryBeanSupport, */ public RepositoryInformation getRepositoryInformation() { - RepositoryFragments fragments = customImplementation.map(RepositoryFragments::just)// + var fragments = customImplementation.map(RepositoryFragments::just)// .orElse(RepositoryFragments.empty()); return factory.getRepositoryInformation(repositoryMetadata, fragments); @@ -309,11 +309,11 @@ public abstract class RepositoryFactoryBeanSupport, this.repositoryFactoryCustomizers.forEach(customizer -> customizer.customize(this.factory)); - RepositoryFragments customImplementationFragment = customImplementation // + var customImplementationFragment = customImplementation // .map(RepositoryFragments::just) // .orElseGet(RepositoryFragments::empty); - RepositoryFragments repositoryFragmentsToUse = this.repositoryFragments // + var repositoryFragmentsToUse = this.repositoryFragments // .orElseGet(RepositoryFragments::empty) // .append(customImplementationFragment); diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryFactorySupport.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryFactorySupport.java index 744d7db1a..758bc973b 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryFactorySupport.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryFactorySupport.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.core.support; -import java.lang.reflect.Constructor; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; @@ -282,29 +281,29 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, Assert.notNull(repositoryInterface, "Repository interface must not be null!"); Assert.notNull(fragments, "RepositoryFragments must not be null!"); - ApplicationStartup applicationStartup = getStartup(); + var applicationStartup = getStartup(); - StartupStep repositoryInit = onEvent(applicationStartup, "spring.data.repository.init", repositoryInterface); + var repositoryInit = onEvent(applicationStartup, "spring.data.repository.init", repositoryInterface); repositoryBaseClass.ifPresent(it -> repositoryInit.tag("baseClass", it.getName())); - StartupStep repositoryMetadataStep = onEvent(applicationStartup, "spring.data.repository.metadata", + var repositoryMetadataStep = onEvent(applicationStartup, "spring.data.repository.metadata", repositoryInterface); - RepositoryMetadata metadata = getRepositoryMetadata(repositoryInterface); + var metadata = getRepositoryMetadata(repositoryInterface); repositoryMetadataStep.end(); - StartupStep repositoryCompositionStep = onEvent(applicationStartup, "spring.data.repository.composition", + var repositoryCompositionStep = onEvent(applicationStartup, "spring.data.repository.composition", repositoryInterface); repositoryCompositionStep.tag("fragment.count", String.valueOf(fragments.size())); - RepositoryComposition composition = getRepositoryComposition(metadata, fragments); - RepositoryInformation information = getRepositoryInformation(metadata, composition); + var composition = getRepositoryComposition(metadata, fragments); + var information = getRepositoryInformation(metadata, composition); repositoryCompositionStep.tag("fragments", () -> { - StringBuilder fragmentsTag = new StringBuilder(); + var fragmentsTag = new StringBuilder(); - for (RepositoryFragment fragment : composition.getFragments()) { + for (var fragment : composition.getFragments()) { if (fragmentsTag.length() > 0) { fragmentsTag.append(";"); @@ -319,19 +318,19 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, repositoryCompositionStep.end(); - StartupStep repositoryTargetStep = onEvent(applicationStartup, "spring.data.repository.target", + var repositoryTargetStep = onEvent(applicationStartup, "spring.data.repository.target", repositoryInterface); - Object target = getTargetRepository(information); + var target = getTargetRepository(information); repositoryTargetStep.tag("target", target.getClass().getName()); repositoryTargetStep.end(); - RepositoryComposition compositionToUse = composition.append(RepositoryFragment.implemented(target)); + var compositionToUse = composition.append(RepositoryFragment.implemented(target)); validate(information, compositionToUse); // Create proxy - StartupStep repositoryProxyStep = onEvent(applicationStartup, "spring.data.repository.proxy", repositoryInterface); - ProxyFactory result = new ProxyFactory(); + var repositoryProxyStep = onEvent(applicationStartup, "spring.data.repository.proxy", repositoryInterface); + var result = new ProxyFactory(); result.setTarget(target); result.setInterfaces(repositoryInterface, Repository.class, TransactionalProxy.class); @@ -342,11 +341,11 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, result.addAdvisor(ExposeInvocationInterceptor.ADVISOR); if (!postProcessors.isEmpty()) { - StartupStep repositoryPostprocessorsStep = onEvent(applicationStartup, "spring.data.repository.postprocessors", + var repositoryPostprocessorsStep = onEvent(applicationStartup, "spring.data.repository.postprocessors", repositoryInterface); postProcessors.forEach(processor -> { - StartupStep singlePostProcessor = onEvent(applicationStartup, "spring.data.repository.postprocessor", + var singlePostProcessor = onEvent(applicationStartup, "spring.data.repository.postprocessor", repositoryInterface); singlePostProcessor.tag("type", processor.getClass().getName()); processor.postProcess(result, information); @@ -367,7 +366,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, result.addAdvice( new ImplementationMethodExecutionInterceptor(information, compositionToUse, methodInvocationListeners)); - T repository = (T) result.getProxy(classLoader); + var repository = (T) result.getProxy(classLoader); repositoryProxyStep.end(); repositoryInit.end(); @@ -389,7 +388,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, */ protected ProjectionFactory getProjectionFactory(ClassLoader classLoader, BeanFactory beanFactory) { - SpelAwareProxyProjectionFactory factory = new SpelAwareProxyProjectionFactory(); + var factory = new SpelAwareProxyProjectionFactory(); factory.setBeanClassLoader(classLoader); factory.setBeanFactory(beanFactory); @@ -431,8 +430,8 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, Assert.notNull(metadata, "RepositoryMetadata must not be null!"); Assert.notNull(fragments, "RepositoryFragments must not be null!"); - RepositoryComposition composition = getRepositoryComposition(metadata); - RepositoryFragments repositoryAspects = getRepositoryFragments(metadata); + var composition = getRepositoryComposition(metadata); + var repositoryAspects = getRepositoryFragments(metadata); return composition.append(fragments).append(repositoryAspects); } @@ -447,11 +446,11 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, private RepositoryInformation getRepositoryInformation(RepositoryMetadata metadata, RepositoryComposition composition) { - RepositoryInformationCacheKey cacheKey = new RepositoryInformationCacheKey(metadata, composition); + var cacheKey = new RepositoryInformationCacheKey(metadata, composition); return repositoryInformationCache.computeIfAbsent(cacheKey, key -> { - Class baseClass = repositoryBaseClass.orElse(getRepositoryBaseClass(metadata)); + var baseClass = repositoryBaseClass.orElse(getRepositoryBaseClass(metadata)); return new DefaultRepositoryInformation(metadata, baseClass, composition); }); @@ -539,7 +538,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, protected final R getTargetRepositoryViaReflection(RepositoryInformation information, Object... constructorArguments) { - Class baseClass = information.getRepositoryBaseClass(); + var baseClass = information.getRepositoryBaseClass(); return instantiateClass(baseClass, constructorArguments); } @@ -573,7 +572,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, @SuppressWarnings("unchecked") protected final R instantiateClass(Class baseClass, Object... constructorArguments) { - Optional> constructor = ReflectionUtils.findConstructor(baseClass, constructorArguments); + var constructor = ReflectionUtils.findConstructor(baseClass, constructorArguments); return constructor.map(it -> (R) BeanUtils.instantiateClass(it, constructorArguments)) .orElseThrow(() -> new IllegalStateException(String.format( @@ -586,7 +585,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, try { - ApplicationStartup applicationStartup = beanFactory != null ? beanFactory.getBean(ApplicationStartup.class) + var applicationStartup = beanFactory != null ? beanFactory.getBean(ApplicationStartup.class) : ApplicationStartup.DEFAULT; return applicationStartup != null ? applicationStartup : ApplicationStartup.DEFAULT; @@ -597,7 +596,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, private StartupStep onEvent(ApplicationStartup applicationStartup, String name, Class repositoryInterface) { - StartupStep step = applicationStartup.start(name); + var step = applicationStartup.start(name); return step.tag("repository", repositoryInterface.getName()); } @@ -632,8 +631,8 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, @Override public Object invoke(@SuppressWarnings("null") MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); - Object[] arguments = invocation.getArguments(); + var method = invocation.getMethod(); + var arguments = invocation.getArguments(); try { return composition.invoke(invocationMulticaster, method, arguments); @@ -716,10 +715,9 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, if (this == o) { return true; } - if (!(o instanceof RepositoryInformationCacheKey)) { + if (!(o instanceof RepositoryInformationCacheKey that)) { return false; } - RepositoryInformationCacheKey that = (RepositoryInformationCacheKey) o; if (compositionHash != that.compositionHash) { return false; } @@ -732,7 +730,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(repositoryInterfaceName); + var result = ObjectUtils.nullSafeHashCode(repositoryInterfaceName); result = 31 * result + (int) (compositionHash ^ (compositionHash >>> 32)); return result; } @@ -793,7 +791,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, public static void validate(RepositoryComposition composition, Class source, RepositoryInformation repositoryInformation) { - Class repositoryInterface = repositoryInformation.getRepositoryInterface(); + var repositoryInterface = repositoryInformation.getRepositoryInterface(); if (repositoryInformation.hasCustomMethod()) { if (composition.isEmpty()) { @@ -807,9 +805,9 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, composition.validateImplementation(); } - for (Map.Entry, String> entry : WELL_KNOWN_EXECUTORS.entrySet()) { + for (var entry : WELL_KNOWN_EXECUTORS.entrySet()) { - Class executorInterface = entry.getKey(); + var executorInterface = entry.getKey(); if (!executorInterface.isAssignableFrom(repositoryInterface)) { continue; } @@ -827,7 +825,7 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, private static boolean containsFragmentImplementation(RepositoryComposition composition, Class executorInterface) { - for (RepositoryFragment fragment : composition.getFragments()) { + for (var fragment : composition.getFragments()) { if (fragment.getImplementation().filter(executorInterface::isInstance).isPresent()) { return true; diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryFragment.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryFragment.java index e47044743..1cdf0f61d 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryFragment.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryFragment.java @@ -165,11 +165,10 @@ public interface RepositoryFragment { return true; } - if (!(o instanceof StructuralRepositoryFragment)) { + if (!(o instanceof StructuralRepositoryFragment that)) { return false; } - StructuralRepositoryFragment that = (StructuralRepositoryFragment) o; return ObjectUtils.nullSafeEquals(interfaceOrImplementation, that.interfaceOrImplementation); } @@ -262,12 +261,10 @@ public interface RepositoryFragment { return true; } - if (!(o instanceof ImplementedRepositoryFragment)) { + if (!(o instanceof ImplementedRepositoryFragment that)) { return false; } - ImplementedRepositoryFragment that = (ImplementedRepositoryFragment) o; - if (!ObjectUtils.nullSafeEquals(interfaceClass, that.interfaceClass)) { return false; } @@ -285,7 +282,7 @@ public interface RepositoryFragment { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(interfaceClass); + var result = ObjectUtils.nullSafeHashCode(interfaceClass); result = 31 * result + ObjectUtils.nullSafeHashCode(implementation); result = 31 * result + ObjectUtils.nullSafeHashCode(optionalImplementation); return result; diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryInvocationMulticaster.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryInvocationMulticaster.java index 0ceab8f2b..47cb13e66 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryInvocationMulticaster.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryInvocationMulticaster.java @@ -72,7 +72,7 @@ interface RepositoryInvocationMulticaster { @Override public void notifyListeners(Method method, Object[] args, RepositoryMethodInvocation result) { - for (RepositoryMethodInvocationListener methodInvocationListener : methodInvocationListeners) { + for (var methodInvocationListener : methodInvocationListeners) { methodInvocationListener.afterInvocation(result); } } diff --git a/src/main/java/org/springframework/data/repository/core/support/RepositoryMethodInvoker.java b/src/main/java/org/springframework/data/repository/core/support/RepositoryMethodInvoker.java index 1474c1258..2cb044ae0 100644 --- a/src/main/java/org/springframework/data/repository/core/support/RepositoryMethodInvoker.java +++ b/src/main/java/org/springframework/data/repository/core/support/RepositoryMethodInvoker.java @@ -16,7 +16,6 @@ package org.springframework.data.repository.core.support; import kotlin.coroutines.Continuation; -import kotlin.reflect.KFunction; import kotlinx.coroutines.reactive.AwaitKt; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; @@ -129,12 +128,12 @@ abstract class RepositoryMethodInvoker { private Object doInvoke(Class repositoryInterface, RepositoryInvocationMulticaster multicaster, Object[] args) throws Exception { - RepositoryMethodInvocationCaptor invocationResultCaptor = RepositoryMethodInvocationCaptor + var invocationResultCaptor = RepositoryMethodInvocationCaptor .captureInvocationOn(repositoryInterface); try { - Object result = invokable.invoke(args); + var result = invokable.invoke(args); if (result != null && ReactiveWrappers.supports(result.getClass())) { return new ReactiveInvocationListenerDecorator().decorate(repositoryInterface, multicaster, args, result); @@ -167,7 +166,7 @@ abstract class RepositoryMethodInvoker { Continuation continuation = (Continuation) args[args.length - 1]; args[args.length - 1] = null; - RepositoryMethodInvocationCaptor invocationResultCaptor = RepositoryMethodInvocationCaptor + var invocationResultCaptor = RepositoryMethodInvocationCaptor .captureInvocationOn(repositoryInterface); try { @@ -280,7 +279,7 @@ abstract class RepositoryMethodInvoker { * We're invoking a method without Continuation as we expect the method to return any sort of reactive type, * therefore we need to strip the Continuation parameter. */ - Object[] invocationArguments = new Object[args.length - 1]; + var invocationArguments = new Object[args.length - 1]; System.arraycopy(args, 0, invocationArguments, 0, invocationArguments.length); return baseClassMethod.invoke(instance, invocationArguments); @@ -331,16 +330,16 @@ abstract class RepositoryMethodInvoker { baseClassMethod.getParameterCount()); } - KFunction declaredFunction = KotlinDetector.isKotlinType(declaredMethod.getDeclaringClass()) + var declaredFunction = KotlinDetector.isKotlinType(declaredMethod.getDeclaringClass()) ? KotlinReflectionUtils.findKotlinFunction(declaredMethod) : null; - KFunction baseClassFunction = KotlinDetector.isKotlinType(baseClassMethod.getDeclaringClass()) + var baseClassFunction = KotlinDetector.isKotlinType(baseClassMethod.getDeclaringClass()) ? KotlinReflectionUtils.findKotlinFunction(baseClassMethod) : null; - boolean suspendedDeclaredMethod = declaredFunction != null && declaredFunction.isSuspend(); - boolean suspendedBaseClassMethod = baseClassFunction != null && baseClassFunction.isSuspend(); - boolean reactiveBaseClassMethod = !suspendedBaseClassMethod + var suspendedDeclaredMethod = declaredFunction != null && declaredFunction.isSuspend(); + var suspendedBaseClassMethod = baseClassFunction != null && baseClassFunction.isSuspend(); + var reactiveBaseClassMethod = !suspendedBaseClassMethod && ReactiveWrapperConverters.supports(baseClassMethod.getReturnType()); return new CoroutineAdapterInformation(suspendedDeclaredMethod, suspendedBaseClassMethod, diff --git a/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryFactoryBeanSupport.java b/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryFactoryBeanSupport.java index d875a5200..ca3b8a4c6 100644 --- a/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryFactoryBeanSupport.java +++ b/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryFactoryBeanSupport.java @@ -77,15 +77,15 @@ public abstract class TransactionalRepositoryFactoryBeanSupport userClass = targetClass == null ? targetClass : ProxyUtils.getUserClass(targetClass); + var userClass = targetClass == null ? targetClass : ProxyUtils.getUserClass(targetClass); // The method may be on an interface, but we need attributes from the target class. // If the target class is null, the method will be unchanged. - Method specificMethod = ClassUtils.getMostSpecificMethod(method, userClass); + var specificMethod = ClassUtils.getMostSpecificMethod(method, userClass); // If we are dealing with method with generic parameters, find the original method. specificMethod = BridgeMethodResolver.findBridgedMethod(specificMethod); @@ -178,7 +178,7 @@ class TransactionalRepositoryProxyPostProcessor implements RepositoryProxyPostPr // Fallback to implementation class transaction settings of nothing found // return findTransactionAttribute(method); - Method targetClassMethod = repositoryInformation.getTargetClassMethod(method); + var targetClassMethod = repositoryInformation.getTargetClassMethod(method); if (targetClassMethod.equals(method)) { return null; diff --git a/src/main/java/org/springframework/data/repository/init/AbstractRepositoryPopulatorFactoryBean.java b/src/main/java/org/springframework/data/repository/init/AbstractRepositoryPopulatorFactoryBean.java index d03710224..39508466e 100644 --- a/src/main/java/org/springframework/data/repository/init/AbstractRepositoryPopulatorFactoryBean.java +++ b/src/main/java/org/springframework/data/repository/init/AbstractRepositoryPopulatorFactoryBean.java @@ -78,7 +78,7 @@ public abstract class AbstractRepositoryPopulatorFactoryBean @Override protected ResourceReaderRepositoryPopulator createInstance() { - ResourceReaderRepositoryPopulator initializer = new ResourceReaderRepositoryPopulator(getResourceReader()); + var initializer = new ResourceReaderRepositoryPopulator(getResourceReader()); initializer.setResources(resources); if (context != null) { @@ -96,7 +96,7 @@ public abstract class AbstractRepositoryPopulatorFactoryBean */ public void onApplicationEvent(ContextRefreshedEvent event) { - RepositoryPopulator populator = this.populator; + var populator = this.populator; if (populator == null) { throw new IllegalStateException("RepositoryPopulator was not properly initialized!"); @@ -104,7 +104,7 @@ public abstract class AbstractRepositoryPopulatorFactoryBean if (event.getApplicationContext().equals(context)) { - Repositories repositories = new Repositories(event.getApplicationContext()); + var repositories = new Repositories(event.getApplicationContext()); populator.populate(repositories); } } diff --git a/src/main/java/org/springframework/data/repository/init/Jackson2ResourceReader.java b/src/main/java/org/springframework/data/repository/init/Jackson2ResourceReader.java index 588b89c0f..4f3e1ea56 100644 --- a/src/main/java/org/springframework/data/repository/init/Jackson2ResourceReader.java +++ b/src/main/java/org/springframework/data/repository/init/Jackson2ResourceReader.java @@ -18,9 +18,7 @@ package org.springframework.data.repository.init; import static com.fasterxml.jackson.databind.DeserializationFeature.*; import java.io.IOException; -import java.io.InputStream; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import org.springframework.core.io.Resource; @@ -85,16 +83,16 @@ public class Jackson2ResourceReader implements ResourceReader { Assert.notNull(resource, "Resource must not be null!"); - InputStream stream = resource.getInputStream(); - JsonNode node = mapper.readerFor(JsonNode.class).readTree(stream); + var stream = resource.getInputStream(); + var node = mapper.readerFor(JsonNode.class).readTree(stream); if (node.isArray()) { - Iterator elements = node.elements(); + var elements = node.elements(); List result = new ArrayList<>(); while (elements.hasNext()) { - JsonNode element = elements.next(); + var element = elements.next(); result.add(readSingle(element, classLoader)); } @@ -113,14 +111,14 @@ public class Jackson2ResourceReader implements ResourceReader { */ private Object readSingle(JsonNode node, @Nullable ClassLoader classLoader) throws IOException { - JsonNode typeNode = node.findValue(typeKey); + var typeNode = node.findValue(typeKey); if (typeNode == null) { throw new IllegalArgumentException(String.format("Could not find type for type key '%s'!", typeKey)); } - String typeName = typeNode.asText(); - Class type = ClassUtils.resolveClassName(typeName, classLoader); + var typeName = typeNode.asText(); + var type = ClassUtils.resolveClassName(typeName, classLoader); return mapper.readerFor(type).readValue(node); } diff --git a/src/main/java/org/springframework/data/repository/init/RepositoriesPopulatedEvent.java b/src/main/java/org/springframework/data/repository/init/RepositoriesPopulatedEvent.java index 4aa1b1c1e..6694957c8 100644 --- a/src/main/java/org/springframework/data/repository/init/RepositoriesPopulatedEvent.java +++ b/src/main/java/org/springframework/data/repository/init/RepositoriesPopulatedEvent.java @@ -83,7 +83,7 @@ public class RepositoriesPopulatedEvent extends ApplicationEvent { return false; } - RepositoriesPopulatedEvent that = (RepositoriesPopulatedEvent) obj; + var that = (RepositoriesPopulatedEvent) obj; return this.source.equals(that.source) && this.repositories.equals(that.repositories); } @@ -94,7 +94,7 @@ public class RepositoriesPopulatedEvent extends ApplicationEvent { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * source.hashCode(); result += 31 * repositories.hashCode(); diff --git a/src/main/java/org/springframework/data/repository/init/ResourceReaderRepositoryPopulator.java b/src/main/java/org/springframework/data/repository/init/ResourceReaderRepositoryPopulator.java index a07511bbe..54e3e1408 100644 --- a/src/main/java/org/springframework/data/repository/init/ResourceReaderRepositoryPopulator.java +++ b/src/main/java/org/springframework/data/repository/init/ResourceReaderRepositoryPopulator.java @@ -22,6 +22,7 @@ import java.util.Collections; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.context.ApplicationEventPublisher; import org.springframework.context.ApplicationEventPublisherAware; import org.springframework.core.io.Resource; @@ -29,7 +30,6 @@ import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.ResourcePatternResolver; import org.springframework.data.repository.support.DefaultRepositoryInvokerFactory; import org.springframework.data.repository.support.Repositories; -import org.springframework.data.repository.support.RepositoryInvoker; import org.springframework.data.repository.support.RepositoryInvokerFactory; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -116,11 +116,11 @@ public class ResourceReaderRepositoryPopulator implements RepositoryPopulator, A RepositoryInvokerFactory invokerFactory = new DefaultRepositoryInvokerFactory(repositories); - for (Resource resource : resources) { + for (var resource : resources) { logger.info(String.format("Reading resource: %s", resource)); - Object result = readObjectFrom(resource); + var result = readObjectFrom(resource); if (result instanceof Collection) { for (Object element : (Collection) result) { @@ -162,7 +162,7 @@ public class ResourceReaderRepositoryPopulator implements RepositoryPopulator, A */ private void persist(Object object, RepositoryInvokerFactory invokerFactory) { - RepositoryInvoker invoker = invokerFactory.getInvokerFor(object.getClass()); + var invoker = invokerFactory.getInvokerFor(object.getClass()); logger.debug(String.format("Persisting %s using repository %s", object, invoker)); invoker.invokeSave(object); } diff --git a/src/main/java/org/springframework/data/repository/init/UnmarshallerRepositoryPopulatorFactoryBean.java b/src/main/java/org/springframework/data/repository/init/UnmarshallerRepositoryPopulatorFactoryBean.java index 5483df8bf..8af1aaaeb 100644 --- a/src/main/java/org/springframework/data/repository/init/UnmarshallerRepositoryPopulatorFactoryBean.java +++ b/src/main/java/org/springframework/data/repository/init/UnmarshallerRepositoryPopulatorFactoryBean.java @@ -45,7 +45,7 @@ public class UnmarshallerRepositoryPopulatorFactoryBean extends AbstractReposito @Override protected ResourceReader getResourceReader() { - Unmarshaller unmarshaller = this.unmarshaller; + var unmarshaller = this.unmarshaller; if (unmarshaller == null) { throw new IllegalStateException("No Unmarshaller configured!"); diff --git a/src/main/java/org/springframework/data/repository/init/UnmarshallingResourceReader.java b/src/main/java/org/springframework/data/repository/init/UnmarshallingResourceReader.java index 1b45b2e82..ecb284b19 100644 --- a/src/main/java/org/springframework/data/repository/init/UnmarshallingResourceReader.java +++ b/src/main/java/org/springframework/data/repository/init/UnmarshallingResourceReader.java @@ -47,7 +47,7 @@ public class UnmarshallingResourceReader implements ResourceReader { Assert.notNull(resource, "Resource must not be null!"); - StreamSource source = new StreamSource(resource.getInputStream()); + var source = new StreamSource(resource.getInputStream()); return unmarshaller.unmarshal(source); } } diff --git a/src/main/java/org/springframework/data/repository/query/ExtensionAwareQueryMethodEvaluationContextProvider.java b/src/main/java/org/springframework/data/repository/query/ExtensionAwareQueryMethodEvaluationContextProvider.java index c31640386..8c1227196 100644 --- a/src/main/java/org/springframework/data/repository/query/ExtensionAwareQueryMethodEvaluationContextProvider.java +++ b/src/main/java/org/springframework/data/repository/query/ExtensionAwareQueryMethodEvaluationContextProvider.java @@ -24,7 +24,6 @@ import org.springframework.data.spel.ExpressionDependencies; import org.springframework.data.spel.ExtensionAwareEvaluationContextProvider; import org.springframework.data.spel.spi.EvaluationContextExtension; import org.springframework.expression.EvaluationContext; -import org.springframework.expression.spel.support.StandardEvaluationContext; import org.springframework.util.Assert; import org.springframework.util.StringUtils; @@ -75,7 +74,7 @@ public class ExtensionAwareQueryMethodEvaluationContextProvider implements Query @Override public > EvaluationContext getEvaluationContext(T parameters, Object[] parameterValues) { - StandardEvaluationContext evaluationContext = delegate.getEvaluationContext(parameterValues); + var evaluationContext = delegate.getEvaluationContext(parameterValues); evaluationContext.setVariables(collectVariables(parameters, parameterValues)); @@ -90,7 +89,7 @@ public class ExtensionAwareQueryMethodEvaluationContextProvider implements Query public > EvaluationContext getEvaluationContext(T parameters, Object[] parameterValues, ExpressionDependencies dependencies) { - StandardEvaluationContext evaluationContext = delegate.getEvaluationContext(parameterValues, dependencies); + var evaluationContext = delegate.getEvaluationContext(parameterValues, dependencies); evaluationContext.setVariables(collectVariables(parameters, parameterValues)); diff --git a/src/main/java/org/springframework/data/repository/query/Parameter.java b/src/main/java/org/springframework/data/repository/query/Parameter.java index fc21c9073..2d30e354a 100644 --- a/src/main/java/org/springframework/data/repository/query/Parameter.java +++ b/src/main/java/org/springframework/data/repository/query/Parameter.java @@ -17,7 +17,6 @@ package org.springframework.data.repository.query; import static java.lang.String.*; -import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -33,7 +32,6 @@ import org.springframework.data.repository.util.QueryExecutionConverters; import org.springframework.data.repository.util.ReactiveWrapperConverters; import org.springframework.data.util.ClassTypeInformation; import org.springframework.data.util.Lazy; -import org.springframework.data.util.TypeInformation; import org.springframework.util.Assert; /** @@ -80,7 +78,7 @@ public class Parameter { this.parameterType = potentiallyUnwrapParameterType(parameter); this.isDynamicProjectionParameter = isDynamicProjectionParameter(parameter); this.name = TYPES.contains(parameter.getParameterType()) ? Lazy.of(Optional.empty()) : Lazy.of(() -> { - Param annotation = parameter.getParameterAnnotation(Param.class); + var annotation = parameter.getParameterAnnotation(Param.class); return Optional.ofNullable(annotation == null ? parameter.getParameterName() : annotation.value()); }); } @@ -213,21 +211,21 @@ public class Parameter { */ private static boolean isDynamicProjectionParameter(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); if (method == null) { throw new IllegalStateException(String.format("Method parameter %s is not backed by a method!", parameter)); } - ClassTypeInformation ownerType = ClassTypeInformation.from(parameter.getDeclaringClass()); - TypeInformation parameterTypes = ownerType.getParameterTypes(method).get(parameter.getParameterIndex()); + var ownerType = ClassTypeInformation.from(parameter.getDeclaringClass()); + var parameterTypes = ownerType.getParameterTypes(method).get(parameter.getParameterIndex()); if (!parameterTypes.getType().equals(Class.class)) { return false; } - TypeInformation bound = parameterTypes.getTypeArguments().get(0); - TypeInformation returnType = ClassTypeInformation.fromReturnTypeOf(method); + var bound = parameterTypes.getTypeArguments().get(0); + var returnType = ClassTypeInformation.fromReturnTypeOf(method); return bound .equals(QueryExecutionConverters.unwrapWrapperTypes(ReactiveWrapperConverters.unwrapWrapperTypes(returnType))); @@ -265,7 +263,7 @@ public class Parameter { */ private static Class potentiallyUnwrapParameterType(MethodParameter parameter) { - Class originalType = parameter.getParameterType(); + var originalType = parameter.getParameterType(); if (isWrapped(parameter) && shouldUnwrap(parameter)) { return ResolvableType.forMethodParameter(parameter).getGeneric(0).resolve(Object.class); diff --git a/src/main/java/org/springframework/data/repository/query/Parameters.java b/src/main/java/org/springframework/data/repository/query/Parameters.java index ca121e0a2..e3467e163 100644 --- a/src/main/java/org/springframework/data/repository/query/Parameters.java +++ b/src/main/java/org/springframework/data/repository/query/Parameters.java @@ -66,20 +66,20 @@ public abstract class Parameters, T extends Parameter Assert.notNull(method, "Method must not be null!"); - int parameterCount = method.getParameterCount(); + var parameterCount = method.getParameterCount(); this.parameters = new ArrayList<>(parameterCount); this.dynamicProjectionIndex = -1; - int pageableIndex = -1; - int sortIndex = -1; + var pageableIndex = -1; + var sortIndex = -1; - for (int i = 0; i < parameterCount; i++) { + for (var i = 0; i < parameterCount; i++) { - MethodParameter methodParameter = new MethodParameter(method, i); + var methodParameter = new MethodParameter(method, i); methodParameter.initParameterNameDiscovery(PARAMETER_NAME_DISCOVERER); - T parameter = createParameter(methodParameter); + var parameter = createParameter(methodParameter); if (parameter.isSpecialParameter() && parameter.isNamedParameter()) { throw new IllegalArgumentException(PARAM_ON_SPECIAL); @@ -116,13 +116,13 @@ public abstract class Parameters, T extends Parameter this.parameters = new ArrayList<>(originals.size()); - int pageableIndexTemp = -1; - int sortIndexTemp = -1; - int dynamicProjectionTemp = -1; + var pageableIndexTemp = -1; + var sortIndexTemp = -1; + var dynamicProjectionTemp = -1; - for (int i = 0; i < originals.size(); i++) { + for (var i = 0; i < originals.size(); i++) { - T original = originals.get(i); + var original = originals.get(i); this.parameters.add(original); pageableIndexTemp = original.isPageable() ? i : -1; @@ -140,7 +140,7 @@ public abstract class Parameters, T extends Parameter List bindables = new ArrayList<>(); - for (T candidate : this) { + for (var candidate : this) { if (candidate.isBindable()) { bindables.add(candidate); @@ -306,10 +306,10 @@ public abstract class Parameters, T extends Parameter */ private void assertEitherAllParamAnnotatedOrNone() { - boolean nameFound = false; - int index = 0; + var nameFound = false; + var index = 0; - for (T parameter : this.getBindableParameters()) { + for (var parameter : this.getBindableParameters()) { if (parameter.isNamedParameter()) { Assert.isTrue(nameFound || index == 0, ALL_OR_NOTHING); diff --git a/src/main/java/org/springframework/data/repository/query/ParametersParameterAccessor.java b/src/main/java/org/springframework/data/repository/query/ParametersParameterAccessor.java index c1ccbe5c6..4daa69131 100644 --- a/src/main/java/org/springframework/data/repository/query/ParametersParameterAccessor.java +++ b/src/main/java/org/springframework/data/repository/query/ParametersParameterAccessor.java @@ -53,7 +53,7 @@ public class ParametersParameterAccessor implements ParameterAccessor { if (requiresUnwrapping(values)) { this.values = new Object[values.length]; - for (int i = 0; i < values.length; i++) { + for (var i = 0; i < values.length; i++) { this.values[i] = QueryExecutionConverters.unwrap(values[i]); } } else { @@ -63,7 +63,7 @@ public class ParametersParameterAccessor implements ParameterAccessor { private static boolean requiresUnwrapping(Object[] values) { - for (Object value : values) { + for (var value : values) { if (value != null && (QueryExecutionConverters.supports(value.getClass()) || ReactiveWrapperConverters.supports(value.getClass()))) { return true; @@ -102,7 +102,7 @@ public class ParametersParameterAccessor implements ParameterAccessor { return Pageable.unpaged(); } - Pageable pageable = (Pageable) values[parameters.getPageableIndex()]; + var pageable = (Pageable) values[parameters.getPageableIndex()]; return pageable == null ? Pageable.unpaged() : pageable; } @@ -116,7 +116,7 @@ public class ParametersParameterAccessor implements ParameterAccessor { if (parameters.hasSortParameter()) { - Sort sort = (Sort) values[parameters.getSortIndex()]; + var sort = (Sort) values[parameters.getSortIndex()]; return sort == null ? Sort.unsorted() : sort; } diff --git a/src/main/java/org/springframework/data/repository/query/QueryMethod.java b/src/main/java/org/springframework/data/repository/query/QueryMethod.java index 4ce0d2528..4b2711c27 100644 --- a/src/main/java/org/springframework/data/repository/query/QueryMethod.java +++ b/src/main/java/org/springframework/data/repository/query/QueryMethod.java @@ -104,8 +104,8 @@ public class QueryMethod { this.domainClass = Lazy.of(() -> { - Class repositoryDomainClass = metadata.getDomainType(); - Class methodDomainClass = metadata.getReturnedDomainClass(method); + var repositoryDomainClass = metadata.getDomainType(); + var methodDomainClass = metadata.getReturnedDomainClass(method); return repositoryDomainClass == null || repositoryDomainClass.isAssignableFrom(methodDomainClass) ? methodDomainClass @@ -264,7 +264,7 @@ public class QueryMethod { return false; } - Class returnType = metadata.getReturnType(method).getType(); + var returnType = metadata.getReturnType(method).getType(); if (QueryExecutionConverters.supports(returnType) && !QueryExecutionConverters.isSingleValue(returnType)) { return true; @@ -279,13 +279,13 @@ public class QueryMethod { private static Class potentiallyUnwrapReturnTypeFor(RepositoryMetadata metadata, Method method) { - TypeInformation returnType = metadata.getReturnType(method); + var returnType = metadata.getReturnType(method); if (QueryExecutionConverters.supports(returnType.getType()) || ReactiveWrapperConverters.supports(returnType.getType())) { // unwrap only one level to handle cases like Future> correctly. - TypeInformation componentType = returnType.getComponentType(); + var componentType = returnType.getComponentType(); if (componentType == null) { throw new IllegalStateException( @@ -309,7 +309,7 @@ public class QueryMethod { ? returnType.getRequiredComponentType() // : returnType; - for (Class type : types) { + for (var type : types) { if (type.isAssignableFrom(returnType.getType())) { return; } diff --git a/src/main/java/org/springframework/data/repository/query/ReactiveExtensionAwareQueryMethodEvaluationContextProvider.java b/src/main/java/org/springframework/data/repository/query/ReactiveExtensionAwareQueryMethodEvaluationContextProvider.java index b679792e2..c99bf47d3 100644 --- a/src/main/java/org/springframework/data/repository/query/ReactiveExtensionAwareQueryMethodEvaluationContextProvider.java +++ b/src/main/java/org/springframework/data/repository/query/ReactiveExtensionAwareQueryMethodEvaluationContextProvider.java @@ -75,7 +75,7 @@ public class ReactiveExtensionAwareQueryMethodEvaluationContextProvider @Override public > EvaluationContext getEvaluationContext(T parameters, Object[] parameterValues) { - EvaluationContext evaluationContext = delegate.getEvaluationContext(parameterValues); + var evaluationContext = delegate.getEvaluationContext(parameterValues); if (evaluationContext instanceof StandardEvaluationContext) { ((StandardEvaluationContext) evaluationContext).setVariables( @@ -93,7 +93,7 @@ public class ReactiveExtensionAwareQueryMethodEvaluationContextProvider public > EvaluationContext getEvaluationContext(T parameters, Object[] parameterValues, ExpressionDependencies dependencies) { - EvaluationContext evaluationContext = delegate.getEvaluationContext(parameterValues, dependencies); + var evaluationContext = delegate.getEvaluationContext(parameterValues, dependencies); if (evaluationContext instanceof StandardEvaluationContext) { ((StandardEvaluationContext) evaluationContext).setVariables( @@ -111,7 +111,7 @@ public class ReactiveExtensionAwareQueryMethodEvaluationContextProvider public > Mono getEvaluationContextLater(T parameters, Object[] parameterValues) { - Mono evaluationContext = delegate.getEvaluationContextLater(parameterValues); + var evaluationContext = delegate.getEvaluationContextLater(parameterValues); return evaluationContext .doOnNext(it -> it.setVariables( @@ -127,7 +127,7 @@ public class ReactiveExtensionAwareQueryMethodEvaluationContextProvider public > Mono getEvaluationContextLater(T parameters, Object[] parameterValues, ExpressionDependencies dependencies) { - Mono evaluationContext = delegate.getEvaluationContextLater(parameterValues, + var evaluationContext = delegate.getEvaluationContextLater(parameterValues, dependencies); return evaluationContext diff --git a/src/main/java/org/springframework/data/repository/query/ResultProcessor.java b/src/main/java/org/springframework/data/repository/query/ResultProcessor.java index 12419c02b..6e7142790 100644 --- a/src/main/java/org/springframework/data/repository/query/ResultProcessor.java +++ b/src/main/java/org/springframework/data/repository/query/ResultProcessor.java @@ -96,7 +96,7 @@ public class ResultProcessor { Assert.notNull(accessor, "Parameter accessor must not be null!"); - Class projection = accessor.findDynamicProjection(); + var projection = accessor.findDynamicProjection(); return projection == null // ? this // @@ -141,16 +141,15 @@ public class ResultProcessor { Assert.notNull(preparingConverter, "Preparing converter must not be null!"); - ChainingConverter converter = ChainingConverter.of(type.getReturnedType(), preparingConverter).and(this.converter); + var converter = ChainingConverter.of(type.getReturnedType(), preparingConverter).and(this.converter); if (source instanceof Slice && (method.isPageQuery() || method.isSliceQuery())) { return (T) ((Slice) source).map(converter::convert); } - if (source instanceof Collection && method.isCollectionQuery()) { + if (source instanceof Collection collection && method.isCollectionQuery()) { - Collection collection = (Collection) source; - Collection target = createCollectionFor(collection); + var target = createCollectionFor(collection); for (Object columns : collection) { target.add(type.isInstance(columns) ? columns : converter.convert(columns)); @@ -172,7 +171,7 @@ public class ResultProcessor { private ResultProcessor withType(Class type) { - ReturnedType returnedType = ReturnedType.of(type, method.getDomainClass(), factory); + var returnedType = ReturnedType.of(type, method.getDomainClass(), factory); return new ResultProcessor(method, converter.withType(returnedType), factory, returnedType); } @@ -223,7 +222,7 @@ public class ResultProcessor { return source; } - Object intermediate = ChainingConverter.this.convert(source); + var intermediate = ChainingConverter.this.convert(source); return intermediate == null || targetType.isInstance(intermediate) ? intermediate : converter.convert(intermediate); @@ -304,7 +303,7 @@ public class ResultProcessor { @Override public Object convert(Object source) { - Class targetType = type.getReturnedType(); + var targetType = type.getReturnedType(); if (targetType.isInterface()) { return factory.createProjection(targetType, getProjectionTarget(source)); @@ -328,7 +327,7 @@ public class ResultProcessor { private static Map toMap(Collection values, List names) { - int i = 0; + var i = 0; Map result = new HashMap<>(values.size()); for (Object element : values) { diff --git a/src/main/java/org/springframework/data/repository/query/ReturnedType.java b/src/main/java/org/springframework/data/repository/query/ReturnedType.java index af93e97a7..1c6dda0fb 100644 --- a/src/main/java/org/springframework/data/repository/query/ReturnedType.java +++ b/src/main/java/org/springframework/data/repository/query/ReturnedType.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.query; -import java.beans.PropertyDescriptor; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; @@ -203,7 +202,7 @@ public abstract class ReturnedType { List properties = new ArrayList<>(); - for (PropertyDescriptor descriptor : information.getInputProperties()) { + for (var descriptor : information.getInputProperties()) { if (!properties.contains(descriptor.getName())) { properties.add(descriptor.getName()); } @@ -368,12 +367,10 @@ public abstract class ReturnedType { return true; } - if (!(o instanceof CacheKey)) { + if (!(o instanceof CacheKey cacheKey)) { return false; } - CacheKey cacheKey = (CacheKey) o; - if (projectionFactoryHashCode != cacheKey.projectionFactoryHashCode) { return false; } @@ -391,7 +388,7 @@ public abstract class ReturnedType { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(returnedType); + var result = ObjectUtils.nullSafeHashCode(returnedType); result = 31 * result + ObjectUtils.nullSafeHashCode(domainType); result = 31 * result + projectionFactoryHashCode; return result; diff --git a/src/main/java/org/springframework/data/repository/query/SpelEvaluator.java b/src/main/java/org/springframework/data/repository/query/SpelEvaluator.java index 4e1a034ef..e613c8660 100644 --- a/src/main/java/org/springframework/data/repository/query/SpelEvaluator.java +++ b/src/main/java/org/springframework/data/repository/query/SpelEvaluator.java @@ -21,8 +21,6 @@ import java.util.stream.Collectors; import org.springframework.data.repository.query.SpelQueryContext.SpelExtractor; import org.springframework.data.spel.ExpressionDependencies; -import org.springframework.expression.EvaluationContext; -import org.springframework.expression.Expression; import org.springframework.expression.spel.standard.SpelExpressionParser; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -81,8 +79,8 @@ public class SpelEvaluator { @Nullable private Object getSpElValue(String expressionString, Object[] values) { - Expression expression = PARSER.parseExpression(expressionString); - EvaluationContext evaluationContext = evaluationContextProvider.getEvaluationContext(parameters, values, + var expression = PARSER.parseExpression(expressionString); + var evaluationContext = evaluationContextProvider.getEvaluationContext(parameters, values, ExpressionDependencies.discover(expression)); return expression.getValue(evaluationContext); diff --git a/src/main/java/org/springframework/data/repository/query/SpelQueryContext.java b/src/main/java/org/springframework/data/repository/query/SpelQueryContext.java index ac2bec03b..da600be68 100644 --- a/src/main/java/org/springframework/data/repository/query/SpelQueryContext.java +++ b/src/main/java/org/springframework/data/repository/query/SpelQueryContext.java @@ -24,7 +24,6 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.function.BiFunction; -import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Stream; @@ -185,12 +184,12 @@ public class SpelQueryContext { Assert.notNull(query, "Query must not be null"); Map expressions = new HashMap<>(); - Matcher matcher = SPEL_PATTERN.matcher(query); - StringBuilder resultQuery = new StringBuilder(); - QuotationMap quotedAreas = new QuotationMap(query); + var matcher = SPEL_PATTERN.matcher(query); + var resultQuery = new StringBuilder(); + var quotedAreas = new QuotationMap(query); - int expressionCounter = 0; - int matchedUntil = 0; + var expressionCounter = 0; + var matchedUntil = 0; while (matcher.find()) { @@ -200,11 +199,11 @@ public class SpelQueryContext { } else { - String spelExpression = matcher.group(EXPRESSION_GROUP_INDEX); - String prefix = matcher.group(PREFIX_GROUP_INDEX); + var spelExpression = matcher.group(EXPRESSION_GROUP_INDEX); + var prefix = matcher.group(PREFIX_GROUP_INDEX); - String parameterName = parameterNameSource.apply(expressionCounter, spelExpression); - String replacement = replacementSource.apply(prefix, parameterName); + var parameterName = parameterNameSource.apply(expressionCounter, spelExpression); + var replacement = replacementSource.apply(prefix, parameterName); resultQuery.append(query, matchedUntil, matcher.start()); resultQuery.append(replacement); @@ -288,11 +287,11 @@ public class SpelQueryContext { } Character inQuotation = null; - int start = 0; + var start = 0; - for (int i = 0; i < query.length(); i++) { + for (var i = 0; i < query.length(); i++) { - char currentChar = query.charAt(i); + var currentChar = query.charAt(i); if (QUOTING_CHARACTERS.contains(currentChar)) { diff --git a/src/main/java/org/springframework/data/repository/query/parser/AbstractQueryCreator.java b/src/main/java/org/springframework/data/repository/query/parser/AbstractQueryCreator.java index 346a8a36e..1807fd652 100644 --- a/src/main/java/org/springframework/data/repository/query/parser/AbstractQueryCreator.java +++ b/src/main/java/org/springframework/data/repository/query/parser/AbstractQueryCreator.java @@ -22,7 +22,6 @@ import java.util.Optional; import org.springframework.data.domain.Sort; import org.springframework.data.repository.query.ParameterAccessor; import org.springframework.data.repository.query.ParametersParameterAccessor; -import org.springframework.data.repository.query.parser.PartTree.OrPart; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -106,17 +105,17 @@ public abstract class AbstractQueryCreator { private S createCriteria(PartTree tree) { S base = null; - Iterator iterator = parameters.map(ParameterAccessor::iterator).orElse(Collections.emptyIterator()); + var iterator = parameters.map(ParameterAccessor::iterator).orElse(Collections.emptyIterator()); - for (OrPart node : tree) { + for (var node : tree) { - Iterator parts = node.iterator(); + var parts = node.iterator(); if (!parts.hasNext()) { throw new IllegalStateException(String.format("No part found in PartTree %s!", tree)); } - S criteria = create(parts.next(), iterator); + var criteria = create(parts.next(), iterator); while (parts.hasNext()) { criteria = and(parts.next(), criteria, iterator); diff --git a/src/main/java/org/springframework/data/repository/query/parser/OrderBySource.java b/src/main/java/org/springframework/data/repository/query/parser/OrderBySource.java index a47f78415..85eaa5c36 100644 --- a/src/main/java/org/springframework/data/repository/query/parser/OrderBySource.java +++ b/src/main/java/org/springframework/data/repository/query/parser/OrderBySource.java @@ -21,7 +21,6 @@ import java.util.HashSet; import java.util.List; import java.util.Optional; import java.util.Set; -import java.util.regex.Matcher; import java.util.regex.Pattern; import org.springframework.data.domain.Sort; @@ -75,16 +74,16 @@ class OrderBySource { return; } - for (String part : clause.split(BLOCK_SPLIT)) { + for (var part : clause.split(BLOCK_SPLIT)) { - Matcher matcher = DIRECTION_SPLIT.matcher(part); + var matcher = DIRECTION_SPLIT.matcher(part); if (!matcher.find()) { throw new IllegalArgumentException(String.format(INVALID_ORDER_SYNTAX, part)); } - String propertyString = matcher.group(1); - String directionString = matcher.group(2); + var propertyString = matcher.group(1); + var directionString = matcher.group(2); // No property, but only a direction keyword if (DIRECTION_KEYWORDS.contains(propertyString) && directionString == null) { @@ -109,7 +108,7 @@ class OrderBySource { return domainClass.map(type -> { - PropertyPath propertyPath = PropertyPath.from(propertySource, type); + var propertyPath = PropertyPath.from(propertySource, type); return direction.map(it -> new Order(it, propertyPath.toDotPath())) .orElseGet(() -> Order.by(propertyPath.toDotPath())); diff --git a/src/main/java/org/springframework/data/repository/query/parser/Part.java b/src/main/java/org/springframework/data/repository/query/parser/Part.java index dd9933cce..199f2a6e9 100644 --- a/src/main/java/org/springframework/data/repository/query/parser/Part.java +++ b/src/main/java/org/springframework/data/repository/query/parser/Part.java @@ -22,7 +22,6 @@ import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.List; -import java.util.regex.Matcher; import java.util.regex.Pattern; import org.springframework.data.mapping.PropertyPath; @@ -71,7 +70,7 @@ public class Part { Assert.hasText(source, "Part source must not be null or empty!"); Assert.notNull(clazz, "Type must not be null!"); - String partToUse = detectAndSetIgnoreCase(source); + var partToUse = detectAndSetIgnoreCase(source); if (alwaysIgnoreCase && ignoreCase != IgnoreCaseType.ALWAYS) { this.ignoreCase = IgnoreCaseType.WHEN_POSSIBLE; @@ -83,8 +82,8 @@ public class Part { private String detectAndSetIgnoreCase(String part) { - Matcher matcher = IGNORE_CASE.matcher(part); - String result = part; + var matcher = IGNORE_CASE.matcher(part); + var result = part; if (matcher.find()) { ignoreCase = IgnoreCaseType.ALWAYS; @@ -141,12 +140,10 @@ public class Part { return true; } - if (!(o instanceof Part)) { + if (!(o instanceof Part part)) { return false; } - Part part = (Part) o; - if (!ObjectUtils.nullSafeEquals(propertyPath, part.propertyPath)) { return false; } @@ -164,7 +161,7 @@ public class Part { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(propertyPath); + var result = ObjectUtils.nullSafeHashCode(propertyPath); result = 31 * result + ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(ignoreCase); return result; @@ -212,7 +209,7 @@ public class Part { static { List allKeywords = new ArrayList<>(); - for (Type type : ALL) { + for (var type : ALL) { allKeywords.addAll(type.keywords); } ALL_KEYWORDS = Collections.unmodifiableList(allKeywords); @@ -248,7 +245,7 @@ public class Part { */ public static Part.Type fromProperty(String rawProperty) { - for (Part.Type type : ALL) { + for (var type : ALL) { if (type.supports(rawProperty)) { return type; } @@ -275,7 +272,7 @@ public class Part { */ protected boolean supports(String property) { - for (String keyword : keywords) { + for (var keyword : keywords) { if (property.endsWith(keyword)) { return true; } @@ -302,9 +299,9 @@ public class Part { */ public String extractProperty(String part) { - String candidate = Introspector.decapitalize(part); + var candidate = Introspector.decapitalize(part); - for (String keyword : keywords) { + for (var keyword : keywords) { if (candidate.endsWith(keyword)) { return candidate.substring(0, candidate.length() - keyword.length()); } diff --git a/src/main/java/org/springframework/data/repository/query/parser/PartTree.java b/src/main/java/org/springframework/data/repository/query/parser/PartTree.java index 3112d806e..0ba1890ef 100644 --- a/src/main/java/org/springframework/data/repository/query/parser/PartTree.java +++ b/src/main/java/org/springframework/data/repository/query/parser/PartTree.java @@ -19,7 +19,6 @@ import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.Optional; -import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.stream.Collectors; @@ -85,7 +84,7 @@ public class PartTree implements Streamable { Assert.notNull(source, "Source must not be null"); Assert.notNull(domainClass, "Domain class must not be null"); - Matcher matcher = PREFIX_TEMPLATE.matcher(source); + var matcher = PREFIX_TEMPLATE.matcher(source); if (!matcher.find()) { this.subject = new Subject(Optional.empty()); @@ -221,7 +220,7 @@ public class PartTree implements Streamable { */ private static String[] split(String text, String keyword) { - Pattern pattern = Pattern.compile(String.format(KEYWORD_TEMPLATE, keyword)); + var pattern = Pattern.compile(String.format(KEYWORD_TEMPLATE, keyword)); return pattern.split(text); } @@ -242,7 +241,7 @@ public class PartTree implements Streamable { */ OrPart(String source, Class domainClass, boolean alwaysIgnoreCase) { - String[] split = split(source, "And"); + var split = split(source, "And"); this.children = Arrays.stream(split)// .filter(StringUtils::hasText)// @@ -307,7 +306,7 @@ public class PartTree implements Streamable { return subject.map(it -> { - Matcher grp = LIMITED_QUERY_TEMPLATE.matcher(it); + var grp = LIMITED_QUERY_TEMPLATE.matcher(it); if (!grp.find()) { return null; @@ -372,7 +371,7 @@ public class PartTree implements Streamable { public Predicate(String predicate, Class domainClass) { - String[] parts = split(detectAndSetAllIgnoreCase(predicate), ORDER_BY); + var parts = split(detectAndSetAllIgnoreCase(predicate), ORDER_BY); if (parts.length > 2) { throw new IllegalArgumentException("OrderBy must not be used more than once in a method name!"); @@ -389,7 +388,7 @@ public class PartTree implements Streamable { private String detectAndSetAllIgnoreCase(String predicate) { - Matcher matcher = ALL_IGNORE_CASE.matcher(predicate); + var matcher = ALL_IGNORE_CASE.matcher(predicate); if (matcher.find()) { alwaysIgnoreCase = true; diff --git a/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java b/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java index 4267630a5..d23e058e6 100644 --- a/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java +++ b/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java @@ -71,7 +71,7 @@ class AnnotationAttribute { public Optional getValueFrom(MethodParameter parameter) { Assert.notNull(parameter, "MethodParameter must not be null!"); - Annotation annotation = parameter.getParameterAnnotation(annotationType); + var annotation = parameter.getParameterAnnotation(annotationType); return Optional.ofNullable(annotation).map(this::getValueFrom); } @@ -85,7 +85,7 @@ class AnnotationAttribute { public Optional getValueFrom(AnnotatedElement annotatedElement) { Assert.notNull(annotatedElement, "Annotated element must not be null!"); - Annotation annotation = annotatedElement.getAnnotation(annotationType); + var annotation = annotatedElement.getAnnotation(annotationType); return Optional.ofNullable(annotation).map(it -> getValueFrom(annotation)); } diff --git a/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java b/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java index 0fcd13c87..afe2d15c3 100644 --- a/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java +++ b/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java @@ -22,7 +22,6 @@ import org.springframework.core.convert.ConversionService; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.data.repository.CrudRepository; -import org.springframework.data.repository.core.CrudMethods; import org.springframework.data.repository.core.RepositoryMetadata; /** @@ -55,7 +54,7 @@ class CrudRepositoryInvoker extends ReflectionRepositoryInvoker { super(repository, metadata, conversionService); - CrudMethods crudMethods = metadata.getCrudMethods(); + var crudMethods = metadata.getCrudMethods(); this.customSaveMethod = isRedeclaredMethod(crudMethods.getSaveMethod()); this.customFindOneMethod = isRedeclaredMethod(crudMethods.getFindOneMethod()); diff --git a/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java b/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java index 68b7b49cd..5c43f19ce 100644 --- a/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java +++ b/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java @@ -18,7 +18,6 @@ package org.springframework.data.repository.support; import static org.springframework.data.util.Optionals.*; import java.util.Map; -import java.util.Optional; import java.util.concurrent.ConcurrentHashMap; import org.springframework.core.convert.ConversionService; @@ -87,8 +86,8 @@ public class DefaultRepositoryInvokerFactory implements RepositoryInvokerFactory */ private RepositoryInvoker prepareInvokers(Class domainType) { - Optional information = repositories.getRepositoryInformationFor(domainType); - Optional repository = repositories.getRepositoryFor(domainType); + var information = repositories.getRepositoryInformationFor(domainType); + var repository = repositories.getRepositoryFor(domainType); return mapIfAllPresent(information, repository, this::createInvoker)// .orElseThrow( diff --git a/src/main/java/org/springframework/data/repository/support/DomainClassConverter.java b/src/main/java/org/springframework/data/repository/support/DomainClassConverter.java index ad14afd0f..97bbba40b 100644 --- a/src/main/java/org/springframework/data/repository/support/DomainClassConverter.java +++ b/src/main/java/org/springframework/data/repository/support/DomainClassConverter.java @@ -27,7 +27,6 @@ import org.springframework.core.convert.converter.ConditionalGenericConverter; import org.springframework.core.convert.converter.ConverterRegistry; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.core.EntityInformation; -import org.springframework.data.repository.core.RepositoryInformation; import org.springframework.data.util.Lazy; import org.springframework.lang.NonNull; import org.springframework.lang.Nullable; @@ -109,7 +108,7 @@ public class DomainClassConverter { - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); this.toEntityConverter = Optional.of(new ToEntityConverter(repositories, conversionService)); this.toIdConverter = Optional.of(new ToIdConverter(repositories, conversionService)); @@ -169,11 +168,11 @@ public class DomainClassConverter domainType = targetType.getType(); - RepositoryInvoker invoker = repositoryInvokerFactory.getInvokerFor(domainType); - RepositoryInformation information = repositories.getRequiredRepositoryInformation(domainType); + var domainType = targetType.getType(); + var invoker = repositoryInvokerFactory.getInvokerFor(domainType); + var information = repositories.getRequiredRepositoryInformation(domainType); - Object id = conversionService.convert(source, information.getIdType()); + var id = conversionService.convert(source, information.getIdType()); return id == null ? null : invoker.invokeFindById(id).orElse(null); } @@ -189,17 +188,17 @@ public class DomainClassConverter domainType = targetType.getType(); + var domainType = targetType.getType(); if (!repositories.hasRepositoryFor(domainType)) { return false; } - Optional repositoryInformation = repositories.getRepositoryInformationFor(domainType); + var repositoryInformation = repositories.getRepositoryInformationFor(domainType); return repositoryInformation.map(it -> { - Class rawIdType = it.getIdType(); + var rawIdType = it.getIdType(); return sourceType.equals(TypeDescriptor.valueOf(rawIdType)) || conversionService.canConvert(sourceType.getType(), rawIdType); @@ -251,7 +250,7 @@ public class DomainClassConverter domainType = sourceType.getType(); + var domainType = sourceType.getType(); EntityInformation entityInformation = repositories.getEntityInformationFor(domainType); @@ -269,17 +268,17 @@ public class DomainClassConverter domainType = sourceType.getType(); + var domainType = sourceType.getType(); if (!repositories.hasRepositoryFor(domainType)) { return false; } - Optional information = repositories.getRepositoryInformationFor(domainType); + var information = repositories.getRepositoryInformationFor(domainType); return information.map(it -> { - Class rawIdType = it.getIdType(); + var rawIdType = it.getIdType(); return targetType.equals(TypeDescriptor.valueOf(rawIdType)) || conversionService.canConvert(rawIdType, targetType.getType()); diff --git a/src/main/java/org/springframework/data/repository/support/MethodParameters.java b/src/main/java/org/springframework/data/repository/support/MethodParameters.java index 4b6e6039a..6f32c893a 100644 --- a/src/main/java/org/springframework/data/repository/support/MethodParameters.java +++ b/src/main/java/org/springframework/data/repository/support/MethodParameters.java @@ -62,7 +62,7 @@ class MethodParameters { Assert.notNull(method, "Method must not be null!"); this.parameters = new ArrayList<>(); - for (int i = 0; i < method.getParameterCount(); i++) { + for (var i = 0; i < method.getParameterCount(); i++) { MethodParameter parameter = new AnnotationNamingMethodParameter(method, i, namingAnnotation); parameter.initParameterNameDiscovery(discoverer); diff --git a/src/main/java/org/springframework/data/repository/support/PagingAndSortingRepositoryInvoker.java b/src/main/java/org/springframework/data/repository/support/PagingAndSortingRepositoryInvoker.java index 1c606acb9..b5cf7eb65 100644 --- a/src/main/java/org/springframework/data/repository/support/PagingAndSortingRepositoryInvoker.java +++ b/src/main/java/org/springframework/data/repository/support/PagingAndSortingRepositoryInvoker.java @@ -22,7 +22,6 @@ import org.springframework.core.convert.ConversionService; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.data.repository.PagingAndSortingRepository; -import org.springframework.data.repository.core.CrudMethods; import org.springframework.data.repository.core.RepositoryMetadata; /** @@ -50,7 +49,7 @@ class PagingAndSortingRepositoryInvoker extends CrudRepositoryInvoker { super(repository, metadata, conversionService); - CrudMethods crudMethods = metadata.getCrudMethods(); + var crudMethods = metadata.getCrudMethods(); this.repository = repository; this.customFindAll = isRedeclaredMethod(crudMethods.getFindAllMethod()); diff --git a/src/main/java/org/springframework/data/repository/support/ReflectionRepositoryInvoker.java b/src/main/java/org/springframework/data/repository/support/ReflectionRepositoryInvoker.java index fa64c2fe7..1f0715c18 100644 --- a/src/main/java/org/springframework/data/repository/support/ReflectionRepositoryInvoker.java +++ b/src/main/java/org/springframework/data/repository/support/ReflectionRepositoryInvoker.java @@ -117,7 +117,7 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { @Override public T invokeSave(T object) { - Method method = methods.getSaveMethod()// + var method = methods.getSaveMethod()// .orElseThrow(() -> new IllegalStateException("Repository doesn't have a save-method declared!")); return invokeForNonNullResult(method, object); @@ -139,7 +139,7 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { @Override public Optional invokeFindById(Object id) { - Method method = methods.getFindOneMethod()// + var method = methods.getFindOneMethod()// .orElseThrow(() -> new IllegalStateException("Repository doesn't have a find-one-method declared!")); return returnAsOptional(invoke(method, convertId(id))); @@ -163,7 +163,7 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { Assert.notNull(id, "Identifier must not be null!"); - Method method = methods.getDeleteMethod() + var method = methods.getDeleteMethod() .orElseThrow(() -> new IllegalStateException("Repository doesn't have a delete-method declared!")); if (method.getName().endsWith("ById")) { @@ -194,19 +194,19 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { private Object[] prepareParameters(Method method, MultiValueMap rawParameters, Pageable pageable, Sort sort) { - List parameters = new MethodParameters(method, Optional.of(PARAM_ANNOTATION)).getParameters(); + var parameters = new MethodParameters(method, Optional.of(PARAM_ANNOTATION)).getParameters(); if (parameters.isEmpty()) { return new Object[0]; } - Object[] result = new Object[parameters.size()]; - Sort sortToUse = pageable.getSortOr(sort); + var result = new Object[parameters.size()]; + var sortToUse = pageable.getSortOr(sort); - for (int i = 0; i < result.length; i++) { + for (var i = 0; i < result.length; i++) { - MethodParameter param = parameters.get(i); - Class targetType = param.getParameterType(); + var param = parameters.get(i); + var targetType = param.getParameterType(); if (Pageable.class.isAssignableFrom(targetType)) { result[i] = pageable; @@ -214,13 +214,13 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { result[i] = sortToUse; } else { - String parameterName = param.getParameterName(); + var parameterName = param.getParameterName(); if (!StringUtils.hasText(parameterName)) { throw new IllegalArgumentException(String.format(NAME_NOT_FOUND, ClassUtils.getQualifiedMethodName(method))); } - Object value = unwrapSingleElement(rawParameters.get(parameterName)); + var value = unwrapSingleElement(rawParameters.get(parameterName)); result[i] = targetType.isInstance(value) ? value : convert(value, param); } @@ -290,7 +290,7 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { return id; } - Object result = conversionService.convert(id, idType); + var result = conversionService.convert(id, idType); if (result == null) { throw new IllegalStateException( @@ -302,14 +302,14 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { protected Iterable invokeFindAllReflectively(Pageable pageable) { - Method method = methods.getFindAllMethod() + var method = methods.getFindAllMethod() .orElseThrow(() -> new IllegalStateException("Repository doesn't have a find-all-method declared!")); if (method.getParameterCount() == 0) { return invokeForNonNullResult(method); } - Class[] types = method.getParameterTypes(); + var types = method.getParameterTypes(); if (Pageable.class.isAssignableFrom(types[0])) { return invokeForNonNullResult(method, pageable); @@ -320,7 +320,7 @@ class ReflectionRepositoryInvoker implements RepositoryInvoker { protected Iterable invokeFindAllReflectively(Sort sort) { - Method method = methods.getFindAllMethod() + var method = methods.getFindAllMethod() .orElseThrow(() -> new IllegalStateException("Repository doesn't have a find-all-method declared!")); if (method.getParameterCount() == 0) { diff --git a/src/main/java/org/springframework/data/repository/support/Repositories.java b/src/main/java/org/springframework/data/repository/support/Repositories.java index e3316aded..4d231f1f6 100644 --- a/src/main/java/org/springframework/data/repository/support/Repositories.java +++ b/src/main/java/org/springframework/data/repository/support/Repositories.java @@ -91,7 +91,7 @@ public class Repositories implements Iterable> { private void populateRepositoryFactoryInformation(ListableBeanFactory factory) { - for (String name : BeanFactoryUtils.beanNamesForTypeIncludingAncestors(factory, RepositoryFactoryInformation.class, + for (var name : BeanFactoryUtils.beanNamesForTypeIncludingAncestors(factory, RepositoryFactoryInformation.class, false, false)) { cacheRepositoryFactory(name); } @@ -100,19 +100,19 @@ public class Repositories implements Iterable> { @SuppressWarnings("rawtypes") private synchronized void cacheRepositoryFactory(String name) { - RepositoryFactoryInformation repositoryFactoryInformation = beanFactory.get().getBean(name, + var repositoryFactoryInformation = beanFactory.get().getBean(name, RepositoryFactoryInformation.class); - Class domainType = ClassUtils + var domainType = ClassUtils .getUserClass(repositoryFactoryInformation.getRepositoryInformation().getDomainType()); - RepositoryInformation information = repositoryFactoryInformation.getRepositoryInformation(); - Set> alternativeDomainTypes = information.getAlternativeDomainTypes(); + var information = repositoryFactoryInformation.getRepositoryInformation(); + var alternativeDomainTypes = information.getAlternativeDomainTypes(); Set> typesToRegister = new HashSet<>(alternativeDomainTypes.size() + 1); typesToRegister.add(domainType); typesToRegister.addAll(alternativeDomainTypes); - for (Class type : typesToRegister) { + for (var type : typesToRegister) { cacheFirstOrPrimary(type, repositoryFactoryInformation, BeanFactoryUtils.transformedBeanName(name)); } } @@ -128,7 +128,7 @@ public class Repositories implements Iterable> { Assert.notNull(domainClass, DOMAIN_TYPE_MUST_NOT_BE_NULL); - Class userClass = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); + var userClass = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); return repositoryFactoryInfos.containsKey(userClass); } @@ -144,8 +144,8 @@ public class Repositories implements Iterable> { Assert.notNull(domainClass, DOMAIN_TYPE_MUST_NOT_BE_NULL); - Class userClass = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); - Optional repositoryBeanName = Optional.ofNullable(repositoryBeanNames.get(userClass)); + var userClass = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); + var repositoryBeanName = Optional.ofNullable(repositoryBeanNames.get(userClass)); return beanFactory.flatMap(it -> repositoryBeanName.map(it::getBean)); } @@ -163,8 +163,8 @@ public class Repositories implements Iterable> { Assert.notNull(domainClass, DOMAIN_TYPE_MUST_NOT_BE_NULL); - Class userType = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); - RepositoryFactoryInformation repositoryInfo = repositoryFactoryInfos.get(userType); + var userType = domainTypeMapping.get(ProxyUtils.getUserClass(domainClass)); + var repositoryInfo = repositoryFactoryInfos.get(userType); if (repositoryInfo != null) { return repositoryInfo; @@ -206,7 +206,7 @@ public class Repositories implements Iterable> { Assert.notNull(domainClass, DOMAIN_TYPE_MUST_NOT_BE_NULL); - RepositoryFactoryInformation information = getRepositoryFactoryInfoFor(domainClass); + var information = getRepositoryFactoryInfoFor(domainClass); return information == EMPTY_REPOSITORY_FACTORY_INFO ? Optional.empty() : Optional.of(information.getRepositoryInformation()); } @@ -293,7 +293,7 @@ public class Repositories implements Iterable> { if (repositoryBeanNames.containsKey(type)) { - Optional factoryToUse = this.beanFactory.map(it -> { + var factoryToUse = this.beanFactory.map(it -> { if (it instanceof ConfigurableListableBeanFactory) { return (ConfigurableListableBeanFactory) it; @@ -306,7 +306,7 @@ public class Repositories implements Iterable> { return null; }); - Boolean presentAndPrimary = factoryToUse.map(it -> it.getMergedBeanDefinition(name)) // + var presentAndPrimary = factoryToUse.map(it -> it.getMergedBeanDefinition(name)) // .map(BeanDefinition::isPrimary) // .orElse(false); @@ -331,13 +331,13 @@ public class Repositories implements Iterable> { Assert.notNull(domainType, "Domain type must not be null!"); - Set> declaredTypes = repositoryBeanNames.keySet(); + var declaredTypes = repositoryBeanNames.keySet(); if (declaredTypes.contains(domainType)) { return domainType; } - for (Class declaredType : declaredTypes) { + for (var declaredType : declaredTypes) { if (declaredType.isAssignableFrom(domainType)) { return declaredType; } diff --git a/src/main/java/org/springframework/data/repository/util/ClassUtils.java b/src/main/java/org/springframework/data/repository/util/ClassUtils.java index 626388e0b..f3857c03f 100644 --- a/src/main/java/org/springframework/data/repository/util/ClassUtils.java +++ b/src/main/java/org/springframework/data/repository/util/ClassUtils.java @@ -72,7 +72,7 @@ public abstract class ClassUtils { public static void ifPresent(String className, @Nullable ClassLoader classLoader, Consumer> action) { try { - Class theClass = org.springframework.util.ClassUtils.forName(className, classLoader); + var theClass = org.springframework.util.ClassUtils.forName(className, classLoader); action.accept(theClass); } catch (IllegalAccessError err) { throw new IllegalStateException( @@ -112,8 +112,8 @@ public abstract class ClassUtils { */ public static int getNumberOfOccurences(Method method, Class type) { - int result = 0; - for (Class clazz : method.getParameterTypes()) { + var result = 0; + for (var clazz : method.getParameterTypes()) { if (type.equals(clazz)) { result++; } @@ -134,7 +134,7 @@ public abstract class ClassUtils { Assert.notNull(method, "Method must not be null!"); Assert.notEmpty(types, "Types must not be null or empty!"); - TypeInformation returnType = getEffectivelyReturnedTypeFrom(method); + var returnType = getEffectivelyReturnedTypeFrom(method); Arrays.stream(types)// .filter(it -> it.isAssignableFrom(returnType.getType()))// diff --git a/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java b/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java index cd7e74db4..63f30356c 100644 --- a/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java +++ b/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java @@ -124,7 +124,7 @@ public abstract class QueryExecutionConverters { return supportsCache.computeIfAbsent(type, key -> { - for (WrapperType candidate : WRAPPER_TYPES) { + for (var candidate : WRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(key)) { return true; } @@ -148,7 +148,7 @@ public abstract class QueryExecutionConverters { return NullableWrapperConverters.supportsUnwrapping(type); } - for (WrapperType candidate : UNWRAPPER_TYPES) { + for (var candidate : UNWRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(type)) { return true; } @@ -163,7 +163,7 @@ public abstract class QueryExecutionConverters { return NullableWrapperConverters.isSingleValue(type); } - for (WrapperType candidate : WRAPPER_TYPES) { + for (var candidate : WRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(type)) { return candidate.isSingleValue(); } @@ -219,9 +219,9 @@ public abstract class QueryExecutionConverters { return source; } - for (Converter converter : UNWRAPPERS) { + for (var converter : UNWRAPPERS) { - Object result = converter.convert(source); + var result = converter.convert(source); if (result != source) { return result; @@ -241,9 +241,9 @@ public abstract class QueryExecutionConverters { Assert.notNull(type, "type must not be null"); - Class rawType = type.getType(); + var rawType = type.getType(); - boolean needToUnwrap = type.isCollectionLike() // + var needToUnwrap = type.isCollectionLike() // || Slice.class.isAssignableFrom(rawType) // || GeoResults.class.isAssignableFrom(rawType) // || rawType.isArray() // @@ -330,8 +330,8 @@ public abstract class QueryExecutionConverters { return null; } - org.springframework.data.util.NullableWrapper wrapper = (NullableWrapper) source; - Object value = wrapper.getValue(); + var wrapper = (NullableWrapper) source; + var value = wrapper.getValue(); // TODO: Add Recursive conversion once we move to Spring 4 return value == null ? nullValue : wrap(value); @@ -513,12 +513,10 @@ public abstract class QueryExecutionConverters { return true; } - if (!(o instanceof WrapperType)) { + if (!(o instanceof WrapperType that)) { return false; } - WrapperType that = (WrapperType) o; - if (!ObjectUtils.nullSafeEquals(type, that.type)) { return false; } @@ -532,7 +530,7 @@ public abstract class QueryExecutionConverters { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(type); + var result = ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(cardinality); return result; } diff --git a/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java b/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java index 8de61e956..ce157e8b3 100644 --- a/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java +++ b/src/main/java/org/springframework/data/repository/util/ReactiveWrapperConverters.java @@ -28,7 +28,6 @@ import java.util.function.Function; import org.reactivestreams.Publisher; -import org.springframework.core.ReactiveAdapter; import org.springframework.core.ReactiveAdapterRegistry; import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.TypeDescriptor; @@ -147,7 +146,7 @@ public abstract class ReactiveWrapperConverters { Assert.notNull(type, "type must not be null"); - Class rawType = type.getType(); + var rawType = type.getType(); return supports(rawType) ? unwrapWrapperTypes(type.getRequiredComponentType()) : type; } @@ -521,10 +520,10 @@ public abstract class ReactiveWrapperConverters { public Converter getConverter(Class targetType) { return source -> { - Publisher publisher = source instanceof Publisher ? (Publisher) source + var publisher = source instanceof Publisher ? (Publisher) source : RegistryHolder.REACTIVE_ADAPTER_REGISTRY.getAdapter(Publisher.class, source).toPublisher(source); - ReactiveAdapter adapter = RegistryHolder.REACTIVE_ADAPTER_REGISTRY.getAdapter(targetType); + var adapter = RegistryHolder.REACTIVE_ADAPTER_REGISTRY.getAdapter(targetType); return (T) adapter.fromPublisher(publisher); }; diff --git a/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java b/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java index 85a498039..ae69a2bcb 100644 --- a/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java +++ b/src/main/java/org/springframework/data/repository/util/ReactiveWrappers.java @@ -21,8 +21,6 @@ import reactor.core.publisher.Mono; import java.util.Arrays; import java.util.Optional; -import org.springframework.core.ReactiveAdapter; -import org.springframework.core.ReactiveAdapterRegistry; import org.springframework.core.ReactiveTypeDescriptor; import org.springframework.data.util.ProxyUtils; import org.springframework.data.util.ReflectionUtils; @@ -205,13 +203,13 @@ public abstract class ReactiveWrappers { Assert.notNull(type, "Wrapper type must not be null!"); - ReactiveAdapterRegistry adapterRegistry = ReactiveWrapperConverters.RegistryHolder.REACTIVE_ADAPTER_REGISTRY; + var adapterRegistry = ReactiveWrapperConverters.RegistryHolder.REACTIVE_ADAPTER_REGISTRY; if (adapterRegistry == null) { return Optional.empty(); } - ReactiveAdapter adapter = adapterRegistry.getAdapter(type); + var adapter = adapterRegistry.getAdapter(type); if (adapter != null && adapter.getDescriptor().isDeferred()) { return Optional.of(adapter.getDescriptor()); } diff --git a/src/main/java/org/springframework/data/repository/util/VavrCollections.java b/src/main/java/org/springframework/data/repository/util/VavrCollections.java index e4e56d2d9..30e83be30 100644 --- a/src/main/java/org/springframework/data/repository/util/VavrCollections.java +++ b/src/main/java/org/springframework/data/repository/util/VavrCollections.java @@ -117,7 +117,7 @@ class VavrCollections { @Override public Object convert(@Nullable Object source, TypeDescriptor sourceDescriptor, TypeDescriptor targetDescriptor) { - Class targetType = targetDescriptor.getType(); + var targetType = targetDescriptor.getType(); if (io.vavr.collection.Seq.class.isAssignableFrom(targetType)) { return io.vavr.collection.List.ofAll((Iterable) source); diff --git a/src/main/java/org/springframework/data/spel/EvaluationContextExtensionInformation.java b/src/main/java/org/springframework/data/spel/EvaluationContextExtensionInformation.java index f470cf4eb..1aaaef658 100644 --- a/src/main/java/org/springframework/data/spel/EvaluationContextExtensionInformation.java +++ b/src/main/java/org/springframework/data/spel/EvaluationContextExtensionInformation.java @@ -17,7 +17,6 @@ package org.springframework.data.spel; import static org.springframework.data.util.StreamUtils.*; -import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; @@ -74,7 +73,7 @@ class EvaluationContextExtensionInformation { Assert.notNull(type, "Extension type must not be null!"); - Class rootObjectType = org.springframework.data.util.ReflectionUtils.findRequiredMethod(type, "getRootObject") + var rootObjectType = org.springframework.data.util.ReflectionUtils.findRequiredMethod(type, "getRootObject") .getReturnType(); this.rootObjectInformation = Optional @@ -221,8 +220,8 @@ class EvaluationContextExtensionInformation { return false; } - boolean methodStatic = Modifier.isStatic(method.getModifiers()); - boolean staticMatch = staticOnly ? methodStatic : !methodStatic; + var methodStatic = Modifier.isStatic(method.getModifiers()); + var staticMatch = staticOnly ? methodStatic : !methodStatic; return Modifier.isPublic(method.getModifiers()) && staticMatch; } @@ -234,8 +233,8 @@ class EvaluationContextExtensionInformation { @Override public boolean matches(Field field) { - boolean fieldStatic = Modifier.isStatic(field.getModifiers()); - boolean staticMatch = staticOnly ? fieldStatic : !fieldStatic; + var fieldStatic = Modifier.isStatic(field.getModifiers()); + var staticMatch = staticOnly ? fieldStatic : !fieldStatic; return Modifier.isPublic(field.getModifiers()) && staticMatch; } @@ -274,7 +273,7 @@ class EvaluationContextExtensionInformation { return; } - Streamable descriptors = Streamable.of(BeanUtils.getPropertyDescriptors(type)); + var descriptors = Streamable.of(BeanUtils.getPropertyDescriptors(type)); ReflectionUtils.doWithMethods(type, method -> { @@ -343,7 +342,7 @@ class EvaluationContextExtensionInformation { return true; } - for (Field field : fields) { + for (var field : fields) { if (field.getName().equals(dependency.getSymbol())) { return true; } diff --git a/src/main/java/org/springframework/data/spel/ExpressionDependencies.java b/src/main/java/org/springframework/data/spel/ExpressionDependencies.java index 82cd59422..f63ffde78 100644 --- a/src/main/java/org/springframework/data/spel/ExpressionDependencies.java +++ b/src/main/java/org/springframework/data/spel/ExpressionDependencies.java @@ -138,7 +138,7 @@ public class ExpressionDependencies implements Streamable extensions) { - StandardEvaluationContext context = new StandardEvaluationContext(); + var context = new StandardEvaluationContext(); if (beanFactory != null) { context.setBeanResolver(new BeanFactoryResolver(beanFactory)); } - ExtensionAwarePropertyAccessor accessor = new ExtensionAwarePropertyAccessor(extensions); + var accessor = new ExtensionAwarePropertyAccessor(extensions); context.addPropertyAccessor(accessor); context.addPropertyAccessor(new ReflectivePropertyAccessor()); @@ -152,9 +150,8 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex for (ExtensionIdAware candidate : getExtensions()) { - if (candidate instanceof EvaluationContextExtension) { + if (candidate instanceof EvaluationContextExtension extension) { - EvaluationContextExtension extension = (EvaluationContextExtension) candidate; if (extensionFilter.test(getOrCreateInformation(extension))) { extensionsToUse.add(extension); } @@ -337,14 +334,12 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex */ private TypedValue lookupPropertyFrom(EvaluationContextExtensionAdapter extension, String name) { - Object value = extension.getProperties().get(name); + var value = extension.getProperties().get(name); - if (!(value instanceof Function)) { + if (!(value instanceof Function function)) { return new TypedValue(value); } - Function function = (Function) value; - try { return new TypedValue(function.invoke(new Object[0])); } catch (Exception e) { @@ -412,9 +407,9 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex Assert.notNull(extension, "Extension must not be null!"); Assert.notNull(information, "Extension information must not be null!"); - Optional target = Optional.ofNullable(extension.getRootObject()); - ExtensionTypeInformation extensionTypeInformation = information.getExtensionTypeInformation(); - RootObjectInformation rootObjectInformation = information.getRootObjectInformation(target); + var target = Optional.ofNullable(extension.getRootObject()); + var extensionTypeInformation = information.getExtensionTypeInformation(); + var rootObjectInformation = information.getRootObjectInformation(target); functions.addAll(extension.getFunctions()); functions.addAll(rootObjectInformation.getFunctions(target)); diff --git a/src/main/java/org/springframework/data/spel/Functions.java b/src/main/java/org/springframework/data/spel/Functions.java index ab4c18113..556f509c4 100644 --- a/src/main/java/org/springframework/data/spel/Functions.java +++ b/src/main/java/org/springframework/data/spel/Functions.java @@ -20,7 +20,6 @@ import java.util.List; import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; -import java.util.stream.Stream; import org.springframework.core.convert.TypeDescriptor; import org.springframework.data.spel.spi.Function; @@ -47,7 +46,7 @@ class Functions { newFunctions.forEach((n, f) -> { - List currentElements = get(n); + var currentElements = get(n); if (!contains(currentElements, f)) { functions.add(n, f); @@ -59,7 +58,7 @@ class Functions { newFunctions.forEach((k, list) -> { - List currentElements = get(k); + var currentElements = get(k); list.stream() // .filter(f -> !contains(currentElements, f)) // @@ -83,10 +82,10 @@ class Functions { */ Optional get(String name, List argumentTypes) { - Stream candidates = get(name).stream() // + var candidates = get(name).stream() // .filter(f -> f.supports(argumentTypes)); - List collect = candidates.collect(Collectors.toList()); + var collect = candidates.collect(Collectors.toList()); return bestMatch(collect, argumentTypes); } @@ -105,7 +104,7 @@ class Functions { return Optional.of(candidates.get(0)); } - Optional exactMatch = candidates.stream().filter(f -> f.supportsExact(argumentTypes)).findFirst(); + var exactMatch = candidates.stream().filter(f -> f.supportsExact(argumentTypes)).findFirst(); if (!exactMatch.isPresent()) { throw new IllegalStateException(createErrorMessage(candidates, argumentTypes)); @@ -116,7 +115,7 @@ class Functions { private static String createErrorMessage(List candidates, List argumentTypes) { - String argumentTypeString = argumentTypes.stream()// + var argumentTypeString = argumentTypes.stream()// .map(TypeDescriptor::getName)// .collect(Collectors.joining(",")); diff --git a/src/main/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProvider.java b/src/main/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProvider.java index ed0f62b0f..e0ab2640f 100644 --- a/src/main/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProvider.java +++ b/src/main/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProvider.java @@ -114,14 +114,13 @@ public class ReactiveExtensionAwareEvaluationContextProvider implements Reactive private Mono> getExtensions( Predicate extensionFilter) { - Collection extensions = evaluationContextProvider.getExtensions(); + var extensions = evaluationContextProvider.getExtensions(); return Flux.fromIterable(extensions).concatMap(it -> { - if (it instanceof EvaluationContextExtension) { + if (it instanceof EvaluationContextExtension extension) { - EvaluationContextExtension extension = (EvaluationContextExtension) it; - EvaluationContextExtensionInformation information = evaluationContextProvider.getOrCreateInformation(extension); + var information = evaluationContextProvider.getOrCreateInformation(extension); if (extensionFilter.test(information)) { return Mono.just(extension); @@ -130,16 +129,15 @@ public class ReactiveExtensionAwareEvaluationContextProvider implements Reactive return Mono.empty(); } - if (it instanceof ReactiveEvaluationContextExtension) { + if (it instanceof ReactiveEvaluationContextExtension extension) { - ReactiveEvaluationContextExtension extension = (ReactiveEvaluationContextExtension) it; - ResolvableType actualType = getExtensionType(it); + var actualType = getExtensionType(it); if (actualType.equals(ResolvableType.NONE) || actualType.isAssignableFrom(GENERIC_EXTENSION_TYPE)) { return extension.getExtension(); } - EvaluationContextExtensionInformation information = evaluationContextProvider + var information = evaluationContextProvider .getOrCreateInformation((Class) actualType.getRawClass()); if (extensionFilter.test(information)) { diff --git a/src/main/java/org/springframework/data/spel/spi/Function.java b/src/main/java/org/springframework/data/spel/spi/Function.java index e33eae38c..5bfda6f31 100644 --- a/src/main/java/org/springframework/data/spel/spi/Function.java +++ b/src/main/java/org/springframework/data/spel/spi/Function.java @@ -82,23 +82,23 @@ public class Function { return method.invoke(target, arguments); } - Class[] types = method.getParameterTypes(); - Class tailType = types[types.length - 1]; + var types = method.getParameterTypes(); + var tailType = types[types.length - 1]; if (tailType.isArray()) { List argumentsToUse = new ArrayList<>(types.length); // Add all arguments up until the last one - for (int i = 0; i < types.length - 1; i++) { + for (var i = 0; i < types.length - 1; i++) { argumentsToUse.add(arguments[i]); } // Gather all other arguments into an array of the tail type - Object[] varargs = (Object[]) Array.newInstance(tailType.getComponentType(), arguments.length - types.length + 1); - int count = 0; + var varargs = (Object[]) Array.newInstance(tailType.getComponentType(), arguments.length - types.length + 1); + var count = 0; - for (int i = types.length - 1; i < arguments.length; i++) { + for (var i = types.length - 1; i < arguments.length; i++) { varargs[count++] = arguments[i]; } diff --git a/src/main/java/org/springframework/data/support/ExampleMatcherAccessor.java b/src/main/java/org/springframework/data/support/ExampleMatcherAccessor.java index a2740fd9f..38b981786 100644 --- a/src/main/java/org/springframework/data/support/ExampleMatcherAccessor.java +++ b/src/main/java/org/springframework/data/support/ExampleMatcherAccessor.java @@ -19,7 +19,6 @@ import java.util.Collection; import org.springframework.data.domain.ExampleMatcher; import org.springframework.data.domain.ExampleMatcher.PropertySpecifier; -import org.springframework.data.domain.ExampleMatcher.StringMatcher; /** * Accessor for the {@link ExampleMatcher} to use in modules that support query by example (QBE) querying. @@ -87,8 +86,8 @@ public class ExampleMatcherAccessor { return matcher.getDefaultStringMatcher(); } - ExampleMatcher.PropertySpecifier specifier = getPropertySpecifier(path); - StringMatcher stringMatcher = specifier.getStringMatcher(); + var specifier = getPropertySpecifier(path); + var stringMatcher = specifier.getStringMatcher(); return stringMatcher != null ? stringMatcher : matcher.getDefaultStringMatcher(); } @@ -138,8 +137,8 @@ public class ExampleMatcherAccessor { return matcher.isIgnoreCaseEnabled(); } - ExampleMatcher.PropertySpecifier specifier = getPropertySpecifier(path); - Boolean ignoreCase = specifier.getIgnoreCase(); + var specifier = getPropertySpecifier(path); + var ignoreCase = specifier.getIgnoreCase(); return ignoreCase != null ? ignoreCase : matcher.isIgnoreCaseEnabled(); } diff --git a/src/main/java/org/springframework/data/transaction/ChainedTransactionManager.java b/src/main/java/org/springframework/data/transaction/ChainedTransactionManager.java index 2496cc997..17812913f 100644 --- a/src/main/java/org/springframework/data/transaction/ChainedTransactionManager.java +++ b/src/main/java/org/springframework/data/transaction/ChainedTransactionManager.java @@ -21,10 +21,10 @@ import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; -import java.util.Map; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; + import org.springframework.lang.Nullable; import org.springframework.transaction.CannotCreateTransactionException; import org.springframework.transaction.HeuristicCompletionException; @@ -107,7 +107,7 @@ public class ChainedTransactionManager implements PlatformTransactionManager { */ public MultiTransactionStatus getTransaction(@Nullable TransactionDefinition definition) throws TransactionException { - MultiTransactionStatus mts = new MultiTransactionStatus(transactionManagers.get(0)); + var mts = new MultiTransactionStatus(transactionManagers.get(0)); if (definition == null) { return mts; @@ -120,15 +120,15 @@ public class ChainedTransactionManager implements PlatformTransactionManager { try { - for (PlatformTransactionManager transactionManager : transactionManagers) { + for (var transactionManager : transactionManagers) { mts.registerTransactionManager(definition, transactionManager); } } catch (Exception ex) { - Map transactionStatuses = mts.getTransactionStatuses(); + var transactionStatuses = mts.getTransactionStatuses(); - for (PlatformTransactionManager transactionManager : transactionManagers) { + for (var transactionManager : transactionManagers) { try { if (transactionStatuses.get(transactionManager) != null) { transactionManager.rollback(transactionStatuses.get(transactionManager)); @@ -154,13 +154,13 @@ public class ChainedTransactionManager implements PlatformTransactionManager { */ public void commit(TransactionStatus status) throws TransactionException { - MultiTransactionStatus multiTransactionStatus = (MultiTransactionStatus) status; + var multiTransactionStatus = (MultiTransactionStatus) status; - boolean commit = true; + var commit = true; Exception commitException = null; PlatformTransactionManager commitExceptionTransactionManager = null; - for (PlatformTransactionManager transactionManager : reverse(transactionManagers)) { + for (var transactionManager : reverse(transactionManagers)) { if (commit) { @@ -189,8 +189,8 @@ public class ChainedTransactionManager implements PlatformTransactionManager { } if (commitException != null) { - boolean firstTransactionManagerFailed = commitExceptionTransactionManager == getLastTransactionManager(); - int transactionState = firstTransactionManagerFailed ? HeuristicCompletionException.STATE_ROLLED_BACK + var firstTransactionManagerFailed = commitExceptionTransactionManager == getLastTransactionManager(); + var transactionState = firstTransactionManagerFailed ? HeuristicCompletionException.STATE_ROLLED_BACK : HeuristicCompletionException.STATE_MIXED; throw new HeuristicCompletionException(transactionState, commitException); } @@ -205,9 +205,9 @@ public class ChainedTransactionManager implements PlatformTransactionManager { Exception rollbackException = null; PlatformTransactionManager rollbackExceptionTransactionManager = null; - MultiTransactionStatus multiTransactionStatus = (MultiTransactionStatus) status; + var multiTransactionStatus = (MultiTransactionStatus) status; - for (PlatformTransactionManager transactionManager : reverse(transactionManagers)) { + for (var transactionManager : reverse(transactionManagers)) { try { multiTransactionStatus.rollback(transactionManager); } catch (Exception ex) { diff --git a/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java b/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java index 398a286ba..06091a4f4 100644 --- a/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java +++ b/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java @@ -70,7 +70,7 @@ class MultiTransactionStatus implements TransactionStatus { } public void commit(PlatformTransactionManager transactionManager) { - TransactionStatus transactionStatus = getTransactionStatus(transactionManager); + var transactionStatus = getTransactionStatus(transactionManager); transactionManager.commit(transactionStatus); } @@ -120,7 +120,7 @@ class MultiTransactionStatus implements TransactionStatus { * @see org.springframework.transaction.TransactionStatus#setRollbackOnly() */ public void setRollbackOnly() { - for (TransactionStatus ts : transactionStatuses.values()) { + for (var ts : transactionStatuses.values()) { ts.setRollbackOnly(); } } @@ -131,9 +131,9 @@ class MultiTransactionStatus implements TransactionStatus { */ public Object createSavepoint() throws TransactionException { - SavePoints savePoints = new SavePoints(); + var savePoints = new SavePoints(); - for (TransactionStatus transactionStatus : transactionStatuses.values()) { + for (var transactionStatus : transactionStatuses.values()) { savePoints.save(transactionStatus); } return savePoints; @@ -144,7 +144,7 @@ class MultiTransactionStatus implements TransactionStatus { * @see org.springframework.transaction.SavepointManager#rollbackToSavepoint(java.lang.Object) */ public void rollbackToSavepoint(Object savepoint) throws TransactionException { - SavePoints savePoints = (SavePoints) savepoint; + var savePoints = (SavePoints) savepoint; savePoints.rollback(); } @@ -161,7 +161,7 @@ class MultiTransactionStatus implements TransactionStatus { * @see org.springframework.transaction.TransactionStatus#flush() */ public void flush() { - for (TransactionStatus transactionStatus : transactionStatuses.values()) { + for (var transactionStatus : transactionStatuses.values()) { transactionStatus.flush(); } } @@ -185,12 +185,12 @@ class MultiTransactionStatus implements TransactionStatus { } private void save(TransactionStatus transactionStatus) { - Object savepoint = transactionStatus.createSavepoint(); + var savepoint = transactionStatus.createSavepoint(); addSavePoint(transactionStatus, savepoint); } public void rollback() { - for (TransactionStatus transactionStatus : savepoints.keySet()) { + for (var transactionStatus : savepoints.keySet()) { transactionStatus.rollbackToSavepoint(savepointFor(transactionStatus)); } } @@ -200,7 +200,7 @@ class MultiTransactionStatus implements TransactionStatus { } public void release() { - for (TransactionStatus transactionStatus : savepoints.keySet()) { + for (var transactionStatus : savepoints.keySet()) { transactionStatus.releaseSavepoint(savepointFor(transactionStatus)); } } diff --git a/src/main/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReader.java b/src/main/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReader.java index 45bcfa31f..b431aaaeb 100644 --- a/src/main/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReader.java +++ b/src/main/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReader.java @@ -53,7 +53,7 @@ class DefaultMethodsMetadataReader implements MethodsMetadataReader { DefaultMethodsMetadataReader(Resource resource, @Nullable ClassLoader classLoader) throws IOException { - MethodsMetadataReadingVisitor visitor = new MethodsMetadataReadingVisitor(classLoader); + var visitor = new MethodsMetadataReadingVisitor(classLoader); createClassReader(resource).accept(visitor, ClassReader.SKIP_DEBUG); this.resource = resource; @@ -131,7 +131,7 @@ class DefaultMethodsMetadataReader implements MethodsMetadataReader { return super.visitMethod(access, name, desc, signature, exceptions); } - MethodMetadataReadingVisitor visitor = new MethodMetadataReadingVisitor(name, access, getClassName(), + var visitor = new MethodMetadataReadingVisitor(name, access, getClassName(), Type.getReturnType(desc).getClassName(), this.classLoader, this.methodMetadataSet); this.methodMetadataSet.add(visitor); diff --git a/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java b/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java index d73c8882a..2c22f3c9e 100644 --- a/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java +++ b/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java @@ -21,7 +21,6 @@ import java.util.HashSet; import java.util.Set; import org.springframework.beans.factory.annotation.AnnotatedBeanDefinition; -import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.EnvironmentAware; import org.springframework.context.ResourceLoaderAware; import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider; @@ -102,20 +101,20 @@ public class AnnotatedTypeScanner implements ResourceLoaderAware, EnvironmentAwa provider.setEnvironment(environment); } - for (Class annotationType : annotationTypess) { + for (var annotationType : annotationTypess) { provider.addIncludeFilter(new AnnotationTypeFilter(annotationType, true, considerInterfaces)); } Set> types = new HashSet<>(); - ResourceLoader loader = resourceLoader; - ClassLoader classLoader = loader == null ? null : loader.getClassLoader(); + var loader = resourceLoader; + var classLoader = loader == null ? null : loader.getClassLoader(); - for (String basePackage : basePackages) { + for (var basePackage : basePackages) { - for (BeanDefinition definition : provider.findCandidateComponents(basePackage)) { + for (var definition : provider.findCandidateComponents(basePackage)) { - String beanClassName = definition.getBeanClassName(); + var beanClassName = definition.getBeanClassName(); if (beanClassName == null) { throw new IllegalStateException( diff --git a/src/main/java/org/springframework/data/util/AnnotationDetectionFieldCallback.java b/src/main/java/org/springframework/data/util/AnnotationDetectionFieldCallback.java index 2d8270b14..72b28d164 100755 --- a/src/main/java/org/springframework/data/util/AnnotationDetectionFieldCallback.java +++ b/src/main/java/org/springframework/data/util/AnnotationDetectionFieldCallback.java @@ -83,7 +83,7 @@ public class AnnotationDetectionFieldCallback implements FieldCallback { */ public Field getRequiredField() { - Field field = this.field; + var field = this.field; if (field == null) { throw new IllegalStateException(String.format("No field found for annotation %s!", annotationType)); @@ -100,7 +100,7 @@ public class AnnotationDetectionFieldCallback implements FieldCallback { @Nullable public Class getType() { - Field field = this.field; + var field = this.field; return field == null ? null : field.getType(); } @@ -127,7 +127,7 @@ public class AnnotationDetectionFieldCallback implements FieldCallback { Assert.notNull(source, "Source object must not be null!"); - Field field = this.field; + var field = this.field; if (field == null) { return null; diff --git a/src/main/java/org/springframework/data/util/AnnotationDetectionMethodCallback.java b/src/main/java/org/springframework/data/util/AnnotationDetectionMethodCallback.java index 61612c0aa..a8b12d9fd 100644 --- a/src/main/java/org/springframework/data/util/AnnotationDetectionMethodCallback.java +++ b/src/main/java/org/springframework/data/util/AnnotationDetectionMethodCallback.java @@ -78,7 +78,7 @@ public class AnnotationDetectionMethodCallback implements */ public Method getRequiredMethod() { - Method method = this.foundMethod; + var method = this.foundMethod; if (method == null) { throw new IllegalStateException(String.format("No method with annotation %s found!", annotationType)); @@ -115,7 +115,7 @@ public class AnnotationDetectionMethodCallback implements return; } - A foundAnnotation = AnnotatedElementUtils.findMergedAnnotation(method, annotationType); + var foundAnnotation = AnnotatedElementUtils.findMergedAnnotation(method, annotationType); if (foundAnnotation != null) { diff --git a/src/main/java/org/springframework/data/util/BeanLookup.java b/src/main/java/org/springframework/data/util/BeanLookup.java index 45c40b920..a36a9eb42 100644 --- a/src/main/java/org/springframework/data/util/BeanLookup.java +++ b/src/main/java/org/springframework/data/util/BeanLookup.java @@ -15,8 +15,6 @@ */ package org.springframework.data.util; -import java.util.Map; - import org.springframework.beans.factory.BeanFactory; import org.springframework.beans.factory.ListableBeanFactory; import org.springframework.beans.factory.NoUniqueBeanDefinitionException; @@ -63,7 +61,7 @@ public abstract class BeanLookup { @Nullable private static T lookupBean(Class type, ListableBeanFactory beanFactory) { - Map names = beanFactory.getBeansOfType(type, false, false); + var names = beanFactory.getBeansOfType(type, false, false); switch (names.size()) { diff --git a/src/main/java/org/springframework/data/util/ClassTypeInformation.java b/src/main/java/org/springframework/data/util/ClassTypeInformation.java index de575ad66..2ba8e0c89 100644 --- a/src/main/java/org/springframework/data/util/ClassTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ClassTypeInformation.java @@ -25,7 +25,6 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; -import java.util.Map.Entry; import java.util.Set; import org.springframework.core.GenericTypeResolver; @@ -112,17 +111,17 @@ public class ClassTypeInformation extends TypeDiscoverer { visited.add(type); } - Map source = GenericTypeResolver.getTypeVariableMap(type); + var source = GenericTypeResolver.getTypeVariableMap(type); Map, Type> map = new HashMap<>(source.size()); - for (Entry entry : source.entrySet()) { + for (var entry : source.entrySet()) { - Type value = entry.getValue(); + var value = entry.getValue(); map.put(entry.getKey(), entry.getValue()); if (value instanceof Class) { - for (Entry, Type> nestedEntry : getTypeVariableMap((Class) value, visited).entrySet()) { + for (var nestedEntry : getTypeVariableMap((Class) value, visited).entrySet()) { if (!map.containsKey(nestedEntry.getKey())) { map.put(nestedEntry.getKey(), nestedEntry.getValue()); } diff --git a/src/main/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapper.java b/src/main/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapper.java index 2d750367a..135d4bb4c 100644 --- a/src/main/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapper.java +++ b/src/main/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapper.java @@ -17,8 +17,6 @@ package org.springframework.data.util; import static org.springframework.util.ReflectionUtils.*; -import java.lang.reflect.Field; - import org.springframework.beans.BeanWrapperImpl; import org.springframework.beans.NotReadablePropertyException; import org.springframework.beans.NotWritablePropertyException; @@ -52,7 +50,7 @@ public class DirectFieldAccessFallbackBeanWrapper extends BeanWrapperImpl { return super.getPropertyValue(propertyName); } catch (NotReadablePropertyException e) { - Field field = findField(getWrappedClass(), propertyName); + var field = findField(getWrappedClass(), propertyName); if (field == null) { throw new NotReadablePropertyException(getWrappedClass(), propertyName, @@ -75,7 +73,7 @@ public class DirectFieldAccessFallbackBeanWrapper extends BeanWrapperImpl { super.setPropertyValue(propertyName, value); } catch (NotWritablePropertyException e) { - Field field = findField(getWrappedClass(), propertyName); + var field = findField(getWrappedClass(), propertyName); if (field == null) { throw new NotWritablePropertyException(getWrappedClass(), propertyName, diff --git a/src/main/java/org/springframework/data/util/GenericArrayTypeInformation.java b/src/main/java/org/springframework/data/util/GenericArrayTypeInformation.java index 0c6f6bd06..ac371c80e 100644 --- a/src/main/java/org/springframework/data/util/GenericArrayTypeInformation.java +++ b/src/main/java/org/springframework/data/util/GenericArrayTypeInformation.java @@ -17,7 +17,6 @@ package org.springframework.data.util; import java.lang.reflect.Array; import java.lang.reflect.GenericArrayType; -import java.lang.reflect.Type; import org.springframework.lang.NonNull; @@ -61,7 +60,7 @@ class GenericArrayTypeInformation extends ParentTypeAwareTypeInformation { @NonNull protected TypeInformation doGetComponentType() { - Type componentType = type.getGenericComponentType(); + var componentType = type.getGenericComponentType(); return createInfo(componentType); } diff --git a/src/main/java/org/springframework/data/util/KotlinReflectionUtils.java b/src/main/java/org/springframework/data/util/KotlinReflectionUtils.java index f4c6c15c5..dd854abc4 100644 --- a/src/main/java/org/springframework/data/util/KotlinReflectionUtils.java +++ b/src/main/java/org/springframework/data/util/KotlinReflectionUtils.java @@ -17,11 +17,9 @@ package org.springframework.data.util; import kotlin.jvm.JvmClassMappingKt; import kotlin.reflect.KCallable; -import kotlin.reflect.KClass; import kotlin.reflect.KFunction; import kotlin.reflect.KMutableProperty; import kotlin.reflect.KProperty; -import kotlin.reflect.KType; import kotlin.reflect.jvm.KTypesJvm; import kotlin.reflect.jvm.ReflectJvmMapping; @@ -78,7 +76,7 @@ public final class KotlinReflectionUtils { return false; } - KClass kotlinClass = JvmClassMappingKt.getKotlinClass(type); + var kotlinClass = JvmClassMappingKt.getKotlinClass(type); return kotlinClass.isData(); } @@ -92,7 +90,7 @@ public final class KotlinReflectionUtils { @Nullable public static KFunction findKotlinFunction(Method method) { - KFunction kotlinFunction = ReflectJvmMapping.getKotlinFunction(method); + var kotlinFunction = ReflectJvmMapping.getKotlinFunction(method); // Fallback to own lookup because there's no public Kotlin API for that kind of lookup until // https://youtrack.jetbrains.com/issue/KT-20768 gets resolved. @@ -108,7 +106,7 @@ public final class KotlinReflectionUtils { */ public static boolean isSuspend(Method method) { - KFunction invokedFunction = KotlinDetector.isKotlinType(method.getDeclaringClass()) ? findKotlinFunction(method) + var invokedFunction = KotlinDetector.isKotlinType(method.getDeclaringClass()) ? findKotlinFunction(method) : null; return invokedFunction != null && invokedFunction.isSuspend(); @@ -122,7 +120,7 @@ public final class KotlinReflectionUtils { */ public static Class getReturnType(Method method) { - KFunction kotlinFunction = KotlinReflectionUtils.findKotlinFunction(method); + var kotlinFunction = KotlinReflectionUtils.findKotlinFunction(method); if (kotlinFunction == null) { throw new IllegalArgumentException(String.format("Cannot resolve %s to a KFunction!", method)); @@ -140,13 +138,13 @@ public final class KotlinReflectionUtils { */ static boolean isNullable(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); if (method == null) { throw new IllegalStateException(String.format("Cannot obtain method from parameter %s!", parameter)); } - KFunction kotlinFunction = findKotlinFunction(method); + var kotlinFunction = findKotlinFunction(method); if (kotlinFunction == null) { throw new IllegalArgumentException(String.format("Cannot resolve %s to a Kotlin function!", parameter)); @@ -160,7 +158,7 @@ public final class KotlinReflectionUtils { // see https://github.com/spring-projects/spring-framework/issues/23991 if (kotlinFunction.getParameters().size() > parameter.getParameterIndex() + 1) { - KType type = parameter.getParameterIndex() == -1 // + var type = parameter.getParameterIndex() == -1 // ? kotlinFunction.getReturnType() // : kotlinFunction.getParameters().get(parameter.getParameterIndex() + 1).getType(); @@ -172,7 +170,7 @@ public final class KotlinReflectionUtils { private static boolean isLast(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); return method != null && parameter.getParameterIndex() == method.getParameterCount() - 1; } @@ -185,7 +183,7 @@ public final class KotlinReflectionUtils { */ private static Optional> findKFunction(Method method) { - KClass kotlinClass = JvmClassMappingKt.getKotlinClass(method.getDeclaringClass()); + var kotlinClass = JvmClassMappingKt.getKotlinClass(method.getDeclaringClass()); return kotlinClass.getMembers() // .stream() // @@ -196,15 +194,13 @@ public final class KotlinReflectionUtils { private static Stream> toKFunctionStream(KCallable it) { - if (it instanceof KMutableProperty) { + if (it instanceof KMutableProperty property) { - KMutableProperty property = (KMutableProperty) it; return Stream.of(property.getGetter(), property.getSetter()); } - if (it instanceof KProperty) { + if (it instanceof KProperty property) { - KProperty property = (KProperty) it; return Stream.of(property.getGetter()); } @@ -217,7 +213,7 @@ public final class KotlinReflectionUtils { private static boolean isSame(KFunction function, Method method) { - Method javaMethod = ReflectJvmMapping.getJavaMethod(function); + var javaMethod = ReflectJvmMapping.getJavaMethod(function); return javaMethod != null && javaMethod.equals(method); } diff --git a/src/main/java/org/springframework/data/util/Lazy.java b/src/main/java/org/springframework/data/util/Lazy.java index 410a602c9..a34fa3636 100644 --- a/src/main/java/org/springframework/data/util/Lazy.java +++ b/src/main/java/org/springframework/data/util/Lazy.java @@ -109,7 +109,7 @@ public class Lazy implements Supplier { */ public T get() { - T value = getNullable(); + var value = getNullable(); if (value == null) { throw new IllegalStateException("Expected lazy evaluation to yield a non-null value but got null!"); @@ -164,7 +164,7 @@ public class Lazy implements Supplier { @Nullable public T orElse(@Nullable T value) { - T nullable = getNullable(); + var nullable = getNullable(); return nullable == null ? value : nullable; } @@ -181,7 +181,7 @@ public class Lazy implements Supplier { Assert.notNull(supplier, "Default value supplier must not be null!"); - T value = getNullable(); + var value = getNullable(); return value == null ? supplier.get() : value; } @@ -242,12 +242,10 @@ public class Lazy implements Supplier { return true; } - if (!(o instanceof Lazy)) { + if (!(o instanceof Lazy lazy)) { return false; } - Lazy lazy = (Lazy) o; - if (resolved != lazy.resolved) { return false; } @@ -266,7 +264,7 @@ public class Lazy implements Supplier { @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(supplier); + var result = ObjectUtils.nullSafeHashCode(supplier); result = 31 * result + ObjectUtils.nullSafeHashCode(value); result = 31 * result + (resolved ? 1 : 0); diff --git a/src/main/java/org/springframework/data/util/MethodInvocationRecorder.java b/src/main/java/org/springframework/data/util/MethodInvocationRecorder.java index 52a9b8cf5..8bcf2eb5c 100644 --- a/src/main/java/org/springframework/data/util/MethodInvocationRecorder.java +++ b/src/main/java/org/springframework/data/util/MethodInvocationRecorder.java @@ -83,9 +83,9 @@ public class MethodInvocationRecorder { @SuppressWarnings("unchecked") private Recorded create(Class type) { - RecordingMethodInterceptor interceptor = new RecordingMethodInterceptor(); + var interceptor = new RecordingMethodInterceptor(); - ProxyFactory proxyFactory = new ProxyFactory(); + var proxyFactory = new ProxyFactory(); proxyFactory.addAdvice(interceptor); if (!type.isInterface()) { @@ -95,7 +95,7 @@ public class MethodInvocationRecorder { proxyFactory.addInterface(type); } - T proxy = (T) proxyFactory.getProxy(type.getClassLoader()); + var proxy = (T) proxyFactory.getProxy(type.getClassLoader()); return new Recorded(proxy, new MethodInvocationRecorder(Optional.ofNullable(interceptor))); } @@ -116,23 +116,23 @@ public class MethodInvocationRecorder { @SuppressWarnings("null") public Object invoke(MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); - Object[] arguments = invocation.getArguments(); + var method = invocation.getMethod(); + var arguments = invocation.getArguments(); if (ReflectionUtils.isObjectMethod(method)) { return method.invoke(this, arguments); } - ResolvableType type = ResolvableType.forMethodReturnType(method); - Class rawType = type.resolve(Object.class); + var type = ResolvableType.forMethodReturnType(method); + var rawType = type.resolve(Object.class); if (Collection.class.isAssignableFrom(rawType)) { - Class clazz = type.getGeneric(0).resolve(Object.class); + var clazz = type.getGeneric(0).resolve(Object.class); - InvocationInformation information = registerInvocation(method, clazz); + var information = registerInvocation(method, clazz); - Collection collection = CollectionFactory.createCollection(rawType, 1); + var collection = CollectionFactory.createCollection(rawType, 1); collection.add(information.getCurrentInstance()); return collection; @@ -140,10 +140,10 @@ public class MethodInvocationRecorder { if (Map.class.isAssignableFrom(rawType)) { - Class clazz = type.getGeneric(1).resolve(Object.class); - InvocationInformation information = registerInvocation(method, clazz); + var clazz = type.getGeneric(1).resolve(Object.class); + var information = registerInvocation(method, clazz); - Map map = CollectionFactory.createMap(rawType, 1); + var map = CollectionFactory.createMap(rawType, 1); map.put("_key_", information.getCurrentInstance()); return map; @@ -158,8 +158,8 @@ public class MethodInvocationRecorder { private InvocationInformation registerInvocation(Method method, Class proxyType) { - Recorded create = Modifier.isFinal(proxyType.getModifiers()) ? new Unrecorded() : create(proxyType); - InvocationInformation information = new InvocationInformation(create, method); + var create = Modifier.isFinal(proxyType.getModifiers()) ? new Unrecorded() : create(proxyType); + var information = new InvocationInformation(create, method); return this.information = information; } @@ -187,14 +187,14 @@ public class MethodInvocationRecorder { Optional getPropertyPath(List strategies) { - Method invokedMethod = this.invokedMethod; + var invokedMethod = this.invokedMethod; if (invokedMethod == null) { return Optional.empty(); } - String propertyName = getPropertyName(invokedMethod, strategies); - Optional next = recorded.getPropertyPath(strategies); + var propertyName = getPropertyName(invokedMethod, strategies); + var next = recorded.getPropertyPath(strategies); return Optionals.firstNonEmpty(() -> next.map(it -> propertyName.concat(".").concat(it)), // () -> Optional.of(propertyName)); @@ -229,12 +229,10 @@ public class MethodInvocationRecorder { return true; } - if (!(o instanceof InvocationInformation)) { + if (!(o instanceof InvocationInformation that)) { return false; } - InvocationInformation that = (InvocationInformation) o; - if (!ObjectUtils.nullSafeEquals(recorded, that.recorded)) { return false; } @@ -249,7 +247,7 @@ public class MethodInvocationRecorder { @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(recorded); + var result = ObjectUtils.nullSafeHashCode(recorded); result = 31 * result + ObjectUtils.nullSafeHashCode(invokedMethod); @@ -289,8 +287,8 @@ public class MethodInvocationRecorder { private static String getPropertyName(Class type, String methodName) { - String pattern = getPatternFor(type); - String replaced = methodName.replaceFirst(pattern, ""); + var pattern = getPatternFor(type); + var replaced = methodName.replaceFirst(pattern, ""); return StringUtils.uncapitalize(replaced); } @@ -317,14 +315,14 @@ public class MethodInvocationRecorder { public Optional getPropertyPath(PropertyNameDetectionStrategy strategy) { - MethodInvocationRecorder recorder = this.recorder; + var recorder = this.recorder; return recorder == null ? Optional.empty() : recorder.getPropertyPath(Arrays.asList(strategy)); } public Optional getPropertyPath(List strategies) { - MethodInvocationRecorder recorder = this.recorder; + var recorder = this.recorder; return recorder == null ? Optional.empty() : recorder.getPropertyPath(strategies); } diff --git a/src/main/java/org/springframework/data/util/MultiValueMapCollector.java b/src/main/java/org/springframework/data/util/MultiValueMapCollector.java index 417a3959e..44ceaa111 100644 --- a/src/main/java/org/springframework/data/util/MultiValueMapCollector.java +++ b/src/main/java/org/springframework/data/util/MultiValueMapCollector.java @@ -74,7 +74,7 @@ class MultiValueMapCollector implements Collector { - for (K key : map2.keySet()) { + for (var key : map2.keySet()) { map1.addAll(key, map2.get(key)); } diff --git a/src/main/java/org/springframework/data/util/NullableUtils.java b/src/main/java/org/springframework/data/util/NullableUtils.java index 836ae3213..a66d23510 100644 --- a/src/main/java/org/springframework/data/util/NullableUtils.java +++ b/src/main/java/org/springframework/data/util/NullableUtils.java @@ -22,8 +22,6 @@ import java.lang.reflect.Method; import java.util.Arrays; import java.util.Collections; import java.util.HashSet; -import java.util.List; -import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.function.Predicate; @@ -36,7 +34,6 @@ import org.springframework.core.annotation.MergedAnnotations; import org.springframework.lang.NonNullApi; import org.springframework.lang.Nullable; import org.springframework.util.ClassUtils; -import org.springframework.util.MultiValueMap; /** * Utility methods to introspect nullability rules declared in packages, classes and methods. @@ -132,9 +129,9 @@ public abstract class NullableUtils { */ public static boolean isNonNull(AnnotatedElement element, ElementType elementType) { - for (Annotation annotation : element.getAnnotations()) { + for (var annotation : element.getAnnotations()) { - boolean isNonNull = NON_NULL_ANNOTATION_CLASS.isPresent() ? isNonNull(annotation, elementType) + var isNonNull = NON_NULL_ANNOTATION_CLASS.isPresent() ? isNonNull(annotation, elementType) : NON_NULLABLE_ANNOTATIONS.contains(annotation.annotationType()); if (isNonNull) { @@ -151,7 +148,7 @@ public abstract class NullableUtils { return false; } - Class annotationClass = NON_NULL_ANNOTATION_CLASS.get(); + var annotationClass = NON_NULL_ANNOTATION_CLASS.get(); if (annotation.annotationType().equals(annotationClass)) { return true; @@ -186,9 +183,9 @@ public abstract class NullableUtils { private static boolean isExplicitNullable(Annotation[] annotations) { - for (Annotation annotation : annotations) { + for (var annotation : annotations) { - boolean isNullable = NON_NULL_ANNOTATION_CLASS.isPresent() ? isNullable(annotation) + var isNullable = NON_NULL_ANNOTATION_CLASS.isPresent() ? isNullable(annotation) : NULLABLE_ANNOTATIONS.contains(annotation.annotationType()); if (isNullable) { @@ -227,21 +224,21 @@ public abstract class NullableUtils { if (annotation.annotationType().getName().equals(metaAnnotationName)) { - Map attributes = AnnotationUtils.getAnnotationAttributes(annotation); + var attributes = AnnotationUtils.getAnnotationAttributes(annotation); return !attributes.isEmpty() && filter.test((T) attributes.get(attribute)); } - MultiValueMap attributes = AnnotatedElementUtils + var attributes = AnnotatedElementUtils .getAllAnnotationAttributes(annotation.annotationType(), metaAnnotationName); if (attributes == null || attributes.isEmpty()) { return false; } - List elementTypes = attributes.get(attribute); + var elementTypes = attributes.get(attribute); - for (Object value : elementTypes) { + for (var value : elementTypes) { if (filter.test((T) value)) { return true; diff --git a/src/main/java/org/springframework/data/util/NullableWrapper.java b/src/main/java/org/springframework/data/util/NullableWrapper.java index ce91012da..a3eee6982 100644 --- a/src/main/java/org/springframework/data/util/NullableWrapper.java +++ b/src/main/java/org/springframework/data/util/NullableWrapper.java @@ -47,7 +47,7 @@ public class NullableWrapper { */ public Class getValueType() { - Object value = this.value; + var value = this.value; return value == null ? Object.class : value.getClass(); } diff --git a/src/main/java/org/springframework/data/util/NullableWrapperConverters.java b/src/main/java/org/springframework/data/util/NullableWrapperConverters.java index 360fe9ef0..77ff3c07d 100644 --- a/src/main/java/org/springframework/data/util/NullableWrapperConverters.java +++ b/src/main/java/org/springframework/data/util/NullableWrapperConverters.java @@ -107,7 +107,7 @@ public abstract class NullableWrapperConverters { return supportsCache.computeIfAbsent(type, key -> { - for (WrapperType candidate : WRAPPER_TYPES) { + for (var candidate : WRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(key)) { return true; } @@ -127,7 +127,7 @@ public abstract class NullableWrapperConverters { Assert.notNull(type, "Type must not be null!"); - for (WrapperType candidate : UNWRAPPER_TYPES) { + for (var candidate : UNWRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(type)) { return true; } @@ -138,7 +138,7 @@ public abstract class NullableWrapperConverters { public static boolean isSingleValue(Class type) { - for (WrapperType candidate : WRAPPER_TYPES) { + for (var candidate : WRAPPER_TYPES) { if (candidate.getType().isAssignableFrom(type)) { return candidate.isSingleValue(); } @@ -184,9 +184,9 @@ public abstract class NullableWrapperConverters { return source; } - for (Converter converter : UNWRAPPERS) { + for (var converter : UNWRAPPERS) { - Object result = converter.convert(source); + var result = converter.convert(source); if (result != source) { return result; @@ -206,9 +206,9 @@ public abstract class NullableWrapperConverters { Assert.notNull(type, "type must not be null"); - Class rawType = type.getType(); + var rawType = type.getType(); - boolean needToUnwrap = supports(rawType) // + var needToUnwrap = supports(rawType) // || Stream.class.isAssignableFrom(rawType); return needToUnwrap ? unwrapActualType(type.getRequiredComponentType()) : type; @@ -267,8 +267,8 @@ public abstract class NullableWrapperConverters { return null; } - NullableWrapper wrapper = (NullableWrapper) source; - Object value = wrapper.getValue(); + var wrapper = (NullableWrapper) source; + var value = wrapper.getValue(); return value == null ? nullValue : wrap(value); } @@ -519,12 +519,10 @@ public abstract class NullableWrapperConverters { return true; } - if (!(o instanceof WrapperType)) { + if (!(o instanceof WrapperType that)) { return false; } - WrapperType that = (WrapperType) o; - if (!ObjectUtils.nullSafeEquals(type, that.type)) { return false; } @@ -538,7 +536,7 @@ public abstract class NullableWrapperConverters { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(type); + var result = ObjectUtils.nullSafeHashCode(type); result = 31 * result + ObjectUtils.nullSafeHashCode(cardinality); return result; } diff --git a/src/main/java/org/springframework/data/util/Pair.java b/src/main/java/org/springframework/data/util/Pair.java index 6d87f3595..222799f96 100644 --- a/src/main/java/org/springframework/data/util/Pair.java +++ b/src/main/java/org/springframework/data/util/Pair.java @@ -97,12 +97,10 @@ public final class Pair { return true; } - if (!(o instanceof Pair)) { + if (!(o instanceof Pair pair)) { return false; } - Pair pair = (Pair) o; - if (!ObjectUtils.nullSafeEquals(first, pair.first)) { return false; } @@ -116,7 +114,7 @@ public final class Pair { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(first); + var result = ObjectUtils.nullSafeHashCode(first); result = 31 * result + ObjectUtils.nullSafeHashCode(second); return result; } diff --git a/src/main/java/org/springframework/data/util/ParameterTypes.java b/src/main/java/org/springframework/data/util/ParameterTypes.java index 814efbb22..986121190 100644 --- a/src/main/java/org/springframework/data/util/ParameterTypes.java +++ b/src/main/java/org/springframework/data/util/ParameterTypes.java @@ -171,9 +171,9 @@ public class ParameterTypes { return false; } - Class[] parameterTypes = method.getParameterTypes(); + var parameterTypes = method.getParameterTypes(); - for (int i = 0; i < parameterTypes.length; i++) { + for (var i = 0; i < parameterTypes.length; i++) { if (parameterTypes[i] != types.get(i).getType()) { return false; } @@ -208,7 +208,7 @@ public class ParameterTypes { protected Optional withLastVarArgs() { - TypeDescriptor lastDescriptor = types.get(types.size() - 1); + var lastDescriptor = types.get(types.size() - 1); return lastDescriptor.isArray() // ? Optional.empty() // @@ -218,7 +218,7 @@ public class ParameterTypes { @SuppressWarnings("null") private ParameterTypes withVarArgs(TypeDescriptor descriptor) { - TypeDescriptor lastDescriptor = types.get(types.size() - 1); + var lastDescriptor = types.get(types.size() - 1); if (lastDescriptor.isArray() && lastDescriptor.getElementTypeDescriptor().equals(descriptor)) { return this; @@ -240,7 +240,7 @@ public class ParameterTypes { withLastVarArgs().ifPresent(alternatives::add); - ParameterTypes objectVarArgs = withVarArgs(OBJECT_DESCRIPTOR); + var objectVarArgs = withVarArgs(OBJECT_DESCRIPTOR); if (!alternatives.contains(objectVarArgs)) { alternatives.add(objectVarArgs); @@ -263,9 +263,9 @@ public class ParameterTypes { return false; } - Class[] parameterTypes = method.getParameterTypes(); + var parameterTypes = method.getParameterTypes(); - for (int i = 0; i < parameterTypes.length; i++) { + for (var i = 0; i < parameterTypes.length; i++) { if (!TypeUtils.isAssignable(parameterTypes[i], types.get(i).getType())) { return false; } @@ -289,12 +289,10 @@ public class ParameterTypes { return true; } - if (!(o instanceof ParameterTypes)) { + if (!(o instanceof ParameterTypes that)) { return false; } - ParameterTypes that = (ParameterTypes) o; - return ObjectUtils.nullSafeEquals(types, that.types); } @@ -359,7 +357,7 @@ public class ParameterTypes { return true; } - if (!(o instanceof ParentParameterTypes)) { + if (!(o instanceof ParentParameterTypes that)) { return false; } @@ -367,8 +365,6 @@ public class ParameterTypes { return false; } - ParentParameterTypes that = (ParentParameterTypes) o; - return ObjectUtils.nullSafeEquals(tail, that.tail); } @@ -379,7 +375,7 @@ public class ParameterTypes { @Override public int hashCode() { - int result = super.hashCode(); + var result = super.hashCode(); result = 31 * result + ObjectUtils.nullSafeHashCode(tail); diff --git a/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java b/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java index 832d2620f..f70c86945 100644 --- a/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java @@ -69,7 +69,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation if (Map.class.isAssignableFrom(getType())) { - Type[] arguments = type.getActualTypeArguments(); + var arguments = type.getActualTypeArguments(); if (arguments.length > 1) { return createInfo(arguments[1]); @@ -82,13 +82,13 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation Optional.ofNullable(rawType.getGenericSuperclass()).ifPresent(supertypes::add); supertypes.addAll(Arrays.asList(rawType.getGenericInterfaces())); - Optional> result = supertypes.stream()// + var result = supertypes.stream()// .map(it -> Pair.of(it, resolveType(it)))// .filter(it -> Map.class.isAssignableFrom(it.getSecond()))// .> map(it -> { - ParameterizedType parameterizedSupertype = (ParameterizedType) it.getFirst(); - Type[] arguments = parameterizedSupertype.getActualTypeArguments(); + var parameterizedSupertype = (ParameterizedType) it.getFirst(); + var arguments = parameterizedSupertype.getActualTypeArguments(); return createInfo(arguments[1]); }).findFirst(); @@ -104,7 +104,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation List> result = new ArrayList<>(); - for (Type argument : type.getActualTypeArguments()) { + for (var argument : type.getActualTypeArguments()) { result.add(createInfo(argument)); } @@ -122,17 +122,17 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation return true; } - Class rawType = getType(); - Class rawTargetType = target.getType(); + var rawType = getType(); + var rawTargetType = target.getType(); if (!rawType.isAssignableFrom(rawTargetType)) { return false; } - TypeInformation otherTypeInformation = rawType.equals(rawTargetType) ? target + var otherTypeInformation = rawType.equals(rawTargetType) ? target : target.getSuperTypeInformation(rawType); - List> myParameters = getTypeArguments(); + var myParameters = getTypeArguments(); List> typeParameters = otherTypeInformation == null ? Collections.emptyList() : otherTypeInformation.getTypeArguments(); @@ -140,7 +140,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation return false; } - for (int i = 0; i < myParameters.size(); i++) { + for (var i = 0; i < myParameters.size(); i++) { if (!myParameters.get(i).isAssignableFrom(typeParameters.get(i))) { return false; } @@ -157,7 +157,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation @Nullable protected TypeInformation doGetComponentType() { - boolean isCustomMapImplementation = isMap() && !getType().equals(Map.class); + var isCustomMapImplementation = isMap() && !getType().equals(Map.class); if (isCustomMapImplementation) { return getRequiredSuperTypeInformation(Map.class).getComponentType(); @@ -178,7 +178,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation return (TypeInformation) type; } - TypeInformation asSupertype = type.getSuperTypeInformation(getType()); + var asSupertype = type.getSuperTypeInformation(getType()); if (asSupertype == null || !ParameterizedTypeInformation.class.isInstance(asSupertype)) { return super.specialize(type); @@ -200,12 +200,10 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation return true; } - if (!(obj instanceof ParameterizedTypeInformation)) { + if (!(obj instanceof ParameterizedTypeInformation that)) { return false; } - ParameterizedTypeInformation that = (ParameterizedTypeInformation) obj; - if (this.isResolved() && that.isResolved()) { return this.type.equals(that.type); } @@ -239,15 +237,15 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation private boolean isResolvedCompletely() { - Type[] typeArguments = type.getActualTypeArguments(); + var typeArguments = type.getActualTypeArguments(); if (typeArguments.length == 0) { return false; } - for (Type typeArgument : typeArguments) { + for (var typeArgument : typeArguments) { - TypeInformation info = createInfo(typeArgument); + var info = createInfo(typeArgument); if (info instanceof ParameterizedTypeInformation) { if (!((ParameterizedTypeInformation) info).isResolvedCompletely()) { @@ -273,9 +271,9 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation */ private static Map, Type> calculateTypeVariables(ParameterizedType type, TypeDiscoverer parent) { - Class resolvedType = parent.resolveType(type); + var resolvedType = parent.resolveType(type); TypeVariable[] typeParameters = resolvedType.getTypeParameters(); - Type[] arguments = type.getActualTypeArguments(); + var arguments = type.getActualTypeArguments(); Map, Type> localTypeVariables = new HashMap<>(parent.getTypeVariableMap()); @@ -300,7 +298,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation return source; } - Type value = variables.get(source); + var value = variables.get(source); return value == null ? source : flattenTypeVariable(value, variables); } diff --git a/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java b/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java index 0acf1890e..1ef336b27 100644 --- a/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java @@ -80,7 +80,7 @@ public abstract class ParentTypeAwareTypeInformation extends TypeDiscoverer that = (ParentTypeAwareTypeInformation) obj; + var that = (ParentTypeAwareTypeInformation) obj; return this.parent == null ? that.parent == null : this.parent.equals(that.parent); } diff --git a/src/main/java/org/springframework/data/util/ParsingUtils.java b/src/main/java/org/springframework/data/util/ParsingUtils.java index e6013e5da..f710d7bf5 100644 --- a/src/main/java/org/springframework/data/util/ParsingUtils.java +++ b/src/main/java/org/springframework/data/util/ParsingUtils.java @@ -80,10 +80,10 @@ public abstract class ParsingUtils { Assert.notNull(source, "Source string must not be null!"); - String[] parts = CAMEL_CASE.split(source); + var parts = CAMEL_CASE.split(source); List result = new ArrayList<>(parts.length); - for (String part : parts) { + for (var part : parts) { result.add(toLower ? part.toLowerCase() : part); } diff --git a/src/main/java/org/springframework/data/util/ProxyUtils.java b/src/main/java/org/springframework/data/util/ProxyUtils.java index 3e619f5c3..a2f4066ca 100644 --- a/src/main/java/org/springframework/data/util/ProxyUtils.java +++ b/src/main/java/org/springframework/data/util/ProxyUtils.java @@ -55,9 +55,9 @@ public abstract class ProxyUtils { return USER_TYPES.computeIfAbsent(type, it -> { - Class result = it; + var result = it; - for (ProxyDetector proxyDetector : DETECTORS) { + for (var proxyDetector : DETECTORS) { result = proxyDetector.getUserType(result); } diff --git a/src/main/java/org/springframework/data/util/ReflectionUtils.java b/src/main/java/org/springframework/data/util/ReflectionUtils.java index 8d778cce2..e90d8d436 100644 --- a/src/main/java/org/springframework/data/util/ReflectionUtils.java +++ b/src/main/java/org/springframework/data/util/ReflectionUtils.java @@ -63,7 +63,7 @@ public final class ReflectionUtils { public static T createInstanceIfPresent(String classname, T defaultInstance) { try { - Class type = ClassUtils.forName(classname, ClassUtils.getDefaultClassLoader()); + var type = ClassUtils.forName(classname, ClassUtils.getDefaultClassLoader()); return (T) BeanUtils.instantiateClass(type); } catch (Exception e) { return defaultInstance; @@ -190,12 +190,12 @@ public final class ReflectionUtils { Assert.notNull(type, "Type must not be null!"); Assert.notNull(filter, "Filter must not be null!"); - Class targetClass = type; + var targetClass = type; Field foundField = null; while (targetClass != Object.class) { - for (Field field : targetClass.getDeclaredFields()) { + for (var field : targetClass.getDeclaredFields()) { if (!filter.matches(field)) { continue; @@ -228,7 +228,7 @@ public final class ReflectionUtils { */ public static Field findRequiredField(Class type, String name) { - Field result = org.springframework.util.ReflectionUtils.findField(type, name); + var result = org.springframework.util.ReflectionUtils.findField(type, name); if (result == null) { throw new IllegalArgumentException(String.format("Unable to find field %s on %s!", name, type)); @@ -283,11 +283,11 @@ public final class ReflectionUtils { Assert.notNull(name, "Method name must not be null"); Method result = null; - Class searchType = type; + var searchType = type; while (searchType != null) { - Method[] methods = (searchType.isInterface() ? searchType.getMethods() + var methods = (searchType.isInterface() ? searchType.getMethods() : org.springframework.util.ReflectionUtils.getDeclaredMethods(searchType)); - for (Method method : methods) { + for (var method : methods) { if (name.equals(method.getName()) && hasSameParams(method, parameterTypes)) { if (result == null || result.isSynthetic() || result.isBridge()) { result = method; @@ -299,7 +299,7 @@ public final class ReflectionUtils { if (result == null) { - String parameterTypeNames = Arrays.stream(parameterTypes) // + var parameterTypeNames = Arrays.stream(parameterTypes) // .map(Object::toString) // .collect(Collectors.joining(", ")); @@ -326,7 +326,7 @@ public final class ReflectionUtils { Assert.notNull(method, "Method must not be null!"); Stream> returnType = Stream.of(method.getReturnType()); - Stream> parameterTypes = Arrays.stream(method.getParameterTypes()); + var parameterTypes = Arrays.stream(method.getParameterTypes()); return Stream.concat(returnType, parameterTypes); } @@ -350,7 +350,7 @@ public final class ReflectionUtils { .map(ResolvableType::getRawClass)// .collect(Collectors.toList()); - Method method = org.springframework.util.ReflectionUtils.findMethod(type, name, + var method = org.springframework.util.ReflectionUtils.findMethod(type, name, collect.toArray(new Class[collect.size()])); return Optional.ofNullable(method)// @@ -364,11 +364,11 @@ public final class ReflectionUtils { return false; } - int index = 0; + var index = 0; - for (Class argumentType : parameterTypes) { + for (var argumentType : parameterTypes) { - Object argument = arguments[index]; + var argument = arguments[index]; // Reject nulls for primitives if (argumentType.isPrimitive() && argument == null) { diff --git a/src/main/java/org/springframework/data/util/StreamUtils.java b/src/main/java/org/springframework/data/util/StreamUtils.java index f53a6736a..45a808ada 100644 --- a/src/main/java/org/springframework/data/util/StreamUtils.java +++ b/src/main/java/org/springframework/data/util/StreamUtils.java @@ -50,9 +50,9 @@ public interface StreamUtils { * @param iterator must not be {@literal null}. * @return */ - public static Stream createStreamFromIterator(Iterator iterator) { + static Stream createStreamFromIterator(Iterator iterator) { - Spliterator spliterator = Spliterators.spliteratorUnknownSize(iterator, Spliterator.NONNULL); + var spliterator = Spliterators.spliteratorUnknownSize(iterator, Spliterator.NONNULL); return StreamSupport.stream(spliterator, false); } @@ -64,7 +64,7 @@ public interface StreamUtils { * @return * @since 2.0 */ - public static Stream createStreamFromIterator(CloseableIterator iterator) { + static Stream createStreamFromIterator(CloseableIterator iterator) { Assert.notNull(iterator, "Iterator must not be null!"); @@ -76,7 +76,7 @@ public interface StreamUtils { * * @return will never be {@literal null}. */ - public static Collector> toUnmodifiableList() { + static Collector> toUnmodifiableList() { return collectingAndThen(toList(), Collections::unmodifiableList); } @@ -85,7 +85,7 @@ public interface StreamUtils { * * @return will never be {@literal null}. */ - public static Collector> toUnmodifiableSet() { + static Collector> toUnmodifiableSet() { return collectingAndThen(toSet(), Collections::unmodifiableSet); } @@ -95,7 +95,7 @@ public interface StreamUtils { * @param keyFunction {@link Function} to create a key from an element of the {@link java.util.stream.Stream} * @param valueFunction {@link Function} to create a value from an element of the {@link java.util.stream.Stream} */ - public static Collector, MultiValueMap> toMultiMap(Function keyFunction, + static Collector, MultiValueMap> toMultiMap(Function keyFunction, Function valueFunction) { return MultiValueMapCollector.of(keyFunction, valueFunction); } @@ -107,7 +107,7 @@ public interface StreamUtils { * @return a new {@link Stream} for the given value returning an empty {@link Stream} if the value is {@literal null}. * @since 2.0.6 */ - public static Stream fromNullable(@Nullable T source) { + static Stream fromNullable(@Nullable T source) { return source == null ? Stream.empty() : Stream.of(source); } @@ -122,18 +122,18 @@ public interface StreamUtils { * @return * @since 2.1 */ - public static Stream zip(Stream left, Stream right, BiFunction combiner) { + static Stream zip(Stream left, Stream right, BiFunction combiner) { Assert.notNull(left, "Left stream must not be null!"); Assert.notNull(right, "Right must not be null!"); Assert.notNull(combiner, "Combiner must not be null!"); - Spliterator lefts = left.spliterator(); - Spliterator rights = right.spliterator(); + var lefts = left.spliterator(); + var rights = right.spliterator(); - long size = Long.min(lefts.estimateSize(), rights.estimateSize()); - int characteristics = lefts.characteristics() & rights.characteristics(); - boolean parallel = left.isParallel() || right.isParallel(); + var size = Long.min(lefts.estimateSize(), rights.estimateSize()); + var characteristics = lefts.characteristics() & rights.characteristics(); + var parallel = left.isParallel() || right.isParallel(); return StreamSupport.stream(new AbstractSpliterator(size, characteristics) { @@ -141,16 +141,16 @@ public interface StreamUtils { @SuppressWarnings("null") public boolean tryAdvance(Consumer action) { - Sink leftSink = new Sink(); - Sink rightSink = new Sink(); + var leftSink = new Sink(); + var rightSink = new Sink(); - boolean leftAdvance = lefts.tryAdvance(leftSink); + var leftAdvance = lefts.tryAdvance(leftSink); if (!leftAdvance) { return false; } - boolean rightAdvance = rights.tryAdvance(rightSink); + var rightAdvance = rights.tryAdvance(rightSink); if (!rightAdvance) { return false; diff --git a/src/main/java/org/springframework/data/util/TypeDiscoverer.java b/src/main/java/org/springframework/data/util/TypeDiscoverer.java index 0bef50792..56fb23d65 100644 --- a/src/main/java/org/springframework/data/util/TypeDiscoverer.java +++ b/src/main/java/org/springframework/data/util/TypeDiscoverer.java @@ -17,10 +17,8 @@ package org.springframework.data.util; import java.beans.PropertyDescriptor; import java.lang.reflect.Constructor; -import java.lang.reflect.Field; import java.lang.reflect.GenericArrayType; import java.lang.reflect.Method; -import java.lang.reflect.Parameter; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; @@ -59,7 +57,7 @@ class TypeDiscoverer implements TypeInformation { static { - ClassLoader classLoader = TypeDiscoverer.class.getClassLoader(); + var classLoader = TypeDiscoverer.class.getClassLoader(); Set> mapTypes = new HashSet<>(); mapTypes.add(Map.class); @@ -127,15 +125,13 @@ class TypeDiscoverer implements TypeInformation { return ClassTypeInformation.from((Class) fieldType); } - if (fieldType instanceof ParameterizedType) { + if (fieldType instanceof ParameterizedType parameterizedType) { - ParameterizedType parameterizedType = (ParameterizedType) fieldType; return new ParameterizedTypeInformation(parameterizedType, this); } - if (fieldType instanceof TypeVariable) { + if (fieldType instanceof TypeVariable variable) { - TypeVariable variable = (TypeVariable) fieldType; return new TypeVariableTypeInformation(variable, this); } @@ -143,10 +139,9 @@ class TypeDiscoverer implements TypeInformation { return new GenericArrayTypeInformation((GenericArrayType) fieldType, this); } - if (fieldType instanceof WildcardType) { + if (fieldType instanceof WildcardType wildcardType) { - WildcardType wildcardType = (WildcardType) fieldType; - Type[] bounds = wildcardType.getLowerBounds(); + var bounds = wildcardType.getLowerBounds(); if (bounds.length > 0) { return createInfo(bounds[0]); @@ -186,7 +181,7 @@ class TypeDiscoverer implements TypeInformation { Assert.notNull(constructor, "Constructor must not be null!"); List> parameterTypes = new ArrayList<>(constructor.getParameterCount()); - for (Parameter parameter : constructor.getParameters()) { + for (var parameter : constructor.getParameters()) { parameterTypes.add(createInfo(parameter.getParameterizedType())); } return parameterTypes; @@ -199,14 +194,14 @@ class TypeDiscoverer implements TypeInformation { @Nullable public TypeInformation getProperty(String fieldname) { - int separatorIndex = fieldname.indexOf('.'); + var separatorIndex = fieldname.indexOf('.'); if (separatorIndex == -1) { return fieldTypes.computeIfAbsent(fieldname, this::getPropertyInformation).orElse(null); } - String head = fieldname.substring(0, separatorIndex); - TypeInformation info = getProperty(head); + var head = fieldname.substring(0, separatorIndex); + var info = getProperty(head); if (info == null) { return null; @@ -227,7 +222,7 @@ class TypeDiscoverer implements TypeInformation { private Optional> getPropertyInformation(String fieldname) { Class rawType = getType(); - Field field = ReflectionUtils.findField(rawType, fieldname); + var field = ReflectionUtils.findField(rawType, fieldname); if (field != null) { return Optional.of(createInfo(field.getGenericType())); @@ -245,7 +240,7 @@ class TypeDiscoverer implements TypeInformation { */ private static Optional findPropertyDescriptor(Class type, String fieldname) { - PropertyDescriptor descriptor = BeanUtils.getPropertyDescriptor(type, fieldname); + var descriptor = BeanUtils.getPropertyDescriptor(type, fieldname); if (descriptor != null) { return Optional.of(descriptor); @@ -270,7 +265,7 @@ class TypeDiscoverer implements TypeInformation { @Nullable private static Type getGenericType(PropertyDescriptor descriptor) { - Method method = descriptor.getReadMethod(); + var method = descriptor.getReadMethod(); if (method != null) { return method.getGenericReturnType(); @@ -282,7 +277,7 @@ class TypeDiscoverer implements TypeInformation { return null; } - Type[] parameterTypes = method.getGenericParameterTypes(); + var parameterTypes = method.getGenericParameterTypes(); return parameterTypes.length == 0 ? null : parameterTypes[0]; } @@ -333,9 +328,9 @@ class TypeDiscoverer implements TypeInformation { */ public boolean isMap() { - Class type = getType(); + var type = getType(); - for (Class mapType : MAP_TYPES) { + for (var mapType : MAP_TYPES) { if (mapType.isAssignableFrom(type)) { return true; } @@ -385,7 +380,7 @@ class TypeDiscoverer implements TypeInformation { @Nullable protected TypeInformation doGetComponentType() { - Class rawType = getType(); + var rawType = getType(); if (rawType.isArray()) { return createInfo(rawType.getComponentType()); @@ -403,7 +398,7 @@ class TypeDiscoverer implements TypeInformation { return getTypeArgument(rawType, 0); } - List> arguments = getTypeArguments(); + var arguments = getTypeArguments(); return arguments.size() > 0 ? arguments.get(0) : null; } @@ -449,7 +444,7 @@ class TypeDiscoverer implements TypeInformation { } List candidates = new ArrayList<>(); - Type genericSuperclass = rawType.getGenericSuperclass(); + var genericSuperclass = rawType.getGenericSuperclass(); if (genericSuperclass != null) { candidates.add(genericSuperclass); @@ -457,15 +452,15 @@ class TypeDiscoverer implements TypeInformation { candidates.addAll(Arrays.asList(rawType.getGenericInterfaces())); - for (Type candidate : candidates) { + for (var candidate : candidates) { - TypeInformation candidateInfo = createInfo(candidate); + var candidateInfo = createInfo(candidate); if (superType.equals(candidateInfo.getType())) { return candidateInfo; } else { - TypeInformation nestedSuperType = candidateInfo.getSuperTypeInformation(superType); + var nestedSuperType = candidateInfo.getSuperTypeInformation(superType); if (nestedSuperType != null) { return nestedSuperType; @@ -489,7 +484,7 @@ class TypeDiscoverer implements TypeInformation { */ public boolean isAssignableFrom(TypeInformation target) { - TypeInformation superTypeInformation = target.getSuperTypeInformation(getType()); + var superTypeInformation = target.getSuperTypeInformation(getType()); return superTypeInformation == null ? false : superTypeInformation.equals(this); } @@ -506,7 +501,7 @@ class TypeDiscoverer implements TypeInformation { Assert.isTrue(getType().isAssignableFrom(type.getType()), () -> String.format("%s must be assignable from %s", getType(), type.getType())); - List> typeArguments = getTypeArguments(); + var typeArguments = getTypeArguments(); return (TypeInformation) (typeArguments.isEmpty() // ? type // @@ -516,7 +511,7 @@ class TypeDiscoverer implements TypeInformation { @Nullable private TypeInformation getTypeArgument(Class bound, int index) { - Class[] arguments = GenericTypeResolver.resolveTypeArguments(getType(), bound); + var arguments = GenericTypeResolver.resolveTypeArguments(getType(), bound); if (arguments != null) { return createInfo(arguments[index]); @@ -529,9 +524,9 @@ class TypeDiscoverer implements TypeInformation { private Class getBaseType(Class[] candidates) { - Class type = getType(); + var type = getType(); - for (Class candidate : candidates) { + for (var candidate : candidates) { if (candidate.isAssignableFrom(type)) { return candidate; } @@ -563,7 +558,7 @@ class TypeDiscoverer implements TypeInformation { return false; } - TypeDiscoverer that = (TypeDiscoverer) obj; + var that = (TypeDiscoverer) obj; if (!this.type.equals(that.type)) { return false; @@ -627,9 +622,9 @@ class TypeDiscoverer implements TypeInformation { @Override public Type[] getActualTypeArguments() { - Type[] result = new Type[typeParameters.size()]; + var result = new Type[typeParameters.size()]; - for (int i = 0; i < typeParameters.size(); i++) { + for (var i = 0; i < typeParameters.size(); i++) { result[i] = typeParameters.get(i).getType(); } @@ -647,12 +642,10 @@ class TypeDiscoverer implements TypeInformation { return true; } - if (!(o instanceof SyntheticParamterizedType)) { + if (!(o instanceof SyntheticParamterizedType that)) { return false; } - SyntheticParamterizedType that = (SyntheticParamterizedType) o; - if (!ObjectUtils.nullSafeEquals(typeInformation, that.typeInformation)) { return false; } @@ -666,7 +659,7 @@ class TypeDiscoverer implements TypeInformation { */ @Override public int hashCode() { - int result = ObjectUtils.nullSafeHashCode(typeInformation); + var result = ObjectUtils.nullSafeHashCode(typeInformation); result = 31 * result + ObjectUtils.nullSafeHashCode(typeParameters); return result; } diff --git a/src/main/java/org/springframework/data/util/TypeInformation.java b/src/main/java/org/springframework/data/util/TypeInformation.java index f8d016275..ed15f5516 100644 --- a/src/main/java/org/springframework/data/util/TypeInformation.java +++ b/src/main/java/org/springframework/data/util/TypeInformation.java @@ -59,7 +59,7 @@ public interface TypeInformation { */ default TypeInformation getRequiredProperty(String property) { - TypeInformation typeInformation = getProperty(property); + var typeInformation = getProperty(property); if (typeInformation != null) { return typeInformation; @@ -97,7 +97,7 @@ public interface TypeInformation { */ default TypeInformation getRequiredComponentType() { - TypeInformation componentType = getComponentType(); + var componentType = getComponentType(); if (componentType != null) { return componentType; @@ -133,7 +133,7 @@ public interface TypeInformation { */ default TypeInformation getRequiredMapValueType() { - TypeInformation mapValueType = getMapValueType(); + var mapValueType = getMapValueType(); if (mapValueType != null) { return mapValueType; @@ -191,7 +191,7 @@ public interface TypeInformation { */ default TypeInformation getRequiredActualType() { - TypeInformation result = getActualType(); + var result = getActualType(); if (result == null) { throw new IllegalStateException( @@ -238,7 +238,7 @@ public interface TypeInformation { */ default TypeInformation getRequiredSuperTypeInformation(Class superType) { - TypeInformation result = getSuperTypeInformation(superType); + var result = getSuperTypeInformation(superType); if (result == null) { throw new IllegalArgumentException(String.format( diff --git a/src/main/java/org/springframework/data/util/TypeVariableTypeInformation.java b/src/main/java/org/springframework/data/util/TypeVariableTypeInformation.java index 7228ae243..7ce0ee26e 100644 --- a/src/main/java/org/springframework/data/util/TypeVariableTypeInformation.java +++ b/src/main/java/org/springframework/data/util/TypeVariableTypeInformation.java @@ -61,12 +61,10 @@ class TypeVariableTypeInformation extends ParentTypeAwareTypeInformation { return true; } - if (!(obj instanceof TypeVariableTypeInformation)) { + if (!(obj instanceof TypeVariableTypeInformation that)) { return false; } - TypeVariableTypeInformation that = (TypeVariableTypeInformation) obj; - return getType().equals(that.getType()); } @@ -77,7 +75,7 @@ class TypeVariableTypeInformation extends ParentTypeAwareTypeInformation { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * nullSafeHashCode(getType()); diff --git a/src/main/java/org/springframework/data/util/Version.java b/src/main/java/org/springframework/data/util/Version.java index 997ea0b2c..91b0b9bd5 100644 --- a/src/main/java/org/springframework/data/util/Version.java +++ b/src/main/java/org/springframework/data/util/Version.java @@ -68,12 +68,12 @@ public class Version implements Comparable { Assert.hasText(version, "Version must not be null o empty!"); - String[] parts = version.trim().split("\\."); - int[] intParts = new int[parts.length]; + var parts = version.trim().split("\\."); + var intParts = new int[parts.length]; - for (int i = 0; i < parts.length; i++) { + for (var i = 0; i < parts.length; i++) { - String input = i == parts.length - 1 ? parts[i].replaceAll("\\D.*", "") : parts[i]; + var input = i == parts.length - 1 ? parts[i].replaceAll("\\D.*", "") : parts[i]; if (StringUtils.hasText(input)) { try { @@ -182,12 +182,10 @@ public class Version implements Comparable { return true; } - if (!(obj instanceof Version)) { + if (!(obj instanceof Version that)) { return false; } - Version that = (Version) obj; - return this.major == that.major && this.minor == that.minor && this.bugfix == that.bugfix && this.build == that.build; } @@ -199,7 +197,7 @@ public class Version implements Comparable { @Override public int hashCode() { - int result = 17; + var result = 17; result += 31 * major; result += 31 * minor; result += 31 * bugfix; diff --git a/src/main/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolver.java index d1963de99..f87a1351e 100644 --- a/src/main/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolver.java @@ -24,12 +24,10 @@ import java.util.List; import org.springframework.core.MethodParameter; import org.springframework.data.domain.Pageable; import org.springframework.hateoas.TemplateVariable; -import org.springframework.hateoas.TemplateVariable.VariableType; import org.springframework.hateoas.TemplateVariables; import org.springframework.hateoas.server.mvc.UriComponentsContributor; import org.springframework.lang.Nullable; import org.springframework.util.Assert; -import org.springframework.util.MultiValueMap; import org.springframework.web.util.UriComponents; import org.springframework.web.util.UriComponentsBuilder; @@ -77,24 +75,24 @@ public class HateoasPageableHandlerMethodArgumentResolver extends PageableHandle */ public TemplateVariables getPaginationTemplateVariables(MethodParameter parameter, UriComponents template) { - String pagePropertyName = getParameterNameToUse(getPageParameterName(), parameter); - String sizePropertyName = getParameterNameToUse(getSizeParameterName(), parameter); + var pagePropertyName = getParameterNameToUse(getPageParameterName(), parameter); + var sizePropertyName = getParameterNameToUse(getSizeParameterName(), parameter); List names = new ArrayList<>(); - MultiValueMap queryParameters = template.getQueryParams(); - boolean append = !queryParameters.isEmpty(); + var queryParameters = template.getQueryParams(); + var append = !queryParameters.isEmpty(); - for (String propertyName : Arrays.asList(pagePropertyName, sizePropertyName)) { + for (var propertyName : Arrays.asList(pagePropertyName, sizePropertyName)) { if (!queryParameters.containsKey(propertyName)) { - VariableType type = append ? REQUEST_PARAM_CONTINUED : REQUEST_PARAM; - String description = String.format("pagination.%s.description", propertyName); + var type = append ? REQUEST_PARAM_CONTINUED : REQUEST_PARAM; + var description = String.format("pagination.%s.description", propertyName); names.add(new TemplateVariable(propertyName, type, description)); } } - TemplateVariables pagingVariables = new TemplateVariables(names); + var pagingVariables = new TemplateVariables(names); return pagingVariables.concat(sortResolver.getSortTemplateVariables(parameter, template)); } @@ -107,20 +105,18 @@ public class HateoasPageableHandlerMethodArgumentResolver extends PageableHandle Assert.notNull(builder, "UriComponentsBuilder must not be null!"); - if (!(value instanceof Pageable)) { + if (!(value instanceof Pageable pageable)) { return; } - Pageable pageable = (Pageable) value; - if (pageable.isUnpaged()) { return; } - String pagePropertyName = getParameterNameToUse(getPageParameterName(), parameter); - String sizePropertyName = getParameterNameToUse(getSizeParameterName(), parameter); + var pagePropertyName = getParameterNameToUse(getPageParameterName(), parameter); + var sizePropertyName = getParameterNameToUse(getSizeParameterName(), parameter); - int pageNumber = pageable.getPageNumber(); + var pageNumber = pageable.getPageNumber(); builder.replaceQueryParam(pagePropertyName, isOneIndexedParameters() ? pageNumber + 1 : pageNumber); builder.replaceQueryParam(sizePropertyName, diff --git a/src/main/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolver.java index 8528fa4b3..9fbcbf546 100644 --- a/src/main/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolver.java @@ -20,11 +20,9 @@ import static org.springframework.hateoas.TemplateVariable.VariableType.*; import org.springframework.core.MethodParameter; import org.springframework.data.domain.Sort; import org.springframework.hateoas.TemplateVariable; -import org.springframework.hateoas.TemplateVariable.VariableType; import org.springframework.hateoas.TemplateVariables; import org.springframework.hateoas.server.mvc.UriComponentsContributor; import org.springframework.lang.Nullable; -import org.springframework.util.MultiValueMap; import org.springframework.web.util.UriComponents; import org.springframework.web.util.UriComponentsBuilder; @@ -49,16 +47,16 @@ public class HateoasSortHandlerMethodArgumentResolver extends SortHandlerMethodA */ public TemplateVariables getSortTemplateVariables(MethodParameter parameter, UriComponents template) { - String sortParameter = getSortParameter(parameter); - MultiValueMap queryParameters = template.getQueryParams(); - boolean append = !queryParameters.isEmpty(); + var sortParameter = getSortParameter(parameter); + var queryParameters = template.getQueryParams(); + var append = !queryParameters.isEmpty(); if (queryParameters.containsKey(sortParameter)) { return TemplateVariables.NONE; } - String description = String.format("pagination.%s.description", sortParameter); - VariableType type = append ? REQUEST_PARAM_CONTINUED : REQUEST_PARAM; + var description = String.format("pagination.%s.description", sortParameter); + var type = append ? REQUEST_PARAM_CONTINUED : REQUEST_PARAM; return new TemplateVariables(new TemplateVariable(sortParameter, type, description)); } @@ -69,16 +67,15 @@ public class HateoasSortHandlerMethodArgumentResolver extends SortHandlerMethodA @Override public void enhance(UriComponentsBuilder builder, @Nullable MethodParameter parameter, @Nullable Object value) { - if (!(value instanceof Sort)) { + if (!(value instanceof Sort sort)) { return; } - Sort sort = (Sort) value; - String sortParameter = getSortParameter(parameter); + var sortParameter = getSortParameter(parameter); builder.replaceQueryParam(sortParameter); - for (String expression : foldIntoExpressions(sort)) { + for (var expression : foldIntoExpressions(sort)) { builder.queryParam(sortParameter, expression); } } diff --git a/src/main/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactory.java b/src/main/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactory.java index e218d71ac..ed71e5ca5 100644 --- a/src/main/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactory.java +++ b/src/main/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactory.java @@ -35,7 +35,6 @@ import org.springframework.core.annotation.AnnotationUtils; import org.springframework.data.projection.Accessor; import org.springframework.data.projection.MethodInterceptorFactory; import org.springframework.data.util.ClassTypeInformation; -import org.springframework.data.util.TypeInformation; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -87,7 +86,7 @@ public class JsonProjectingMethodInterceptorFactory implements MethodInterceptor Assert.notNull(jsonProvider, "JsonProvider must not be null!"); Assert.notNull(mappingProvider, "MappingProvider must not be null!"); - Configuration configuration = Configuration.builder()// + var configuration = Configuration.builder()// .options(Option.ALWAYS_RETURN_LIST) // .jsonProvider(jsonProvider) // .mappingProvider(mappingProvider) // @@ -103,7 +102,7 @@ public class JsonProjectingMethodInterceptorFactory implements MethodInterceptor @Override public MethodInterceptor createMethodInterceptor(Object source, Class targetType) { - DocumentContext context = InputStream.class.isInstance(source) ? this.context.parse((InputStream) source) + var context = InputStream.class.isInstance(source) ? this.context.parse((InputStream) source) : this.context.parse(source); return new InputMessageProjecting(context); @@ -132,7 +131,7 @@ public class JsonProjectingMethodInterceptorFactory implements MethodInterceptor */ private static boolean hasJsonPathAnnotation(Class type) { - for (Method method : type.getMethods()) { + for (var method : type.getMethods()) { if (AnnotationUtils.findAnnotation(method, org.springframework.data.web.JsonPath.class) != null) { return true; } @@ -157,32 +156,32 @@ public class JsonProjectingMethodInterceptorFactory implements MethodInterceptor @Override public Object invoke(MethodInvocation invocation) throws Throwable { - Method method = invocation.getMethod(); - TypeInformation returnType = ClassTypeInformation.fromReturnTypeOf(method); - ResolvableType type = ResolvableType.forMethodReturnType(method); - boolean isCollectionResult = Collection.class.isAssignableFrom(type.getRawClass()); + var method = invocation.getMethod(); + var returnType = ClassTypeInformation.fromReturnTypeOf(method); + var type = ResolvableType.forMethodReturnType(method); + var isCollectionResult = Collection.class.isAssignableFrom(type.getRawClass()); type = isCollectionResult ? type : ResolvableType.forClassWithGenerics(List.class, type); Iterable jsonPaths = getJsonPaths(method); - for (String jsonPath : jsonPaths) { + for (var jsonPath : jsonPaths) { try { if (returnType.getRequiredActualType().getType().isInterface()) { List result = context.read(jsonPath); - Object nested = result.isEmpty() ? null : result.get(0); + var nested = result.isEmpty() ? null : result.get(0); return isCollectionResult && !(nested instanceof Collection) ? result : nested; } - boolean definitePath = JsonPath.isPathDefinite(jsonPath); + var definitePath = JsonPath.isPathDefinite(jsonPath); type = isCollectionResult && definitePath ? ResolvableType.forClassWithGenerics(List.class, type) : type; - List result = (List) context.read(jsonPath, new ResolvableTypeRef(type)); + var result = (List) context.read(jsonPath, new ResolvableTypeRef(type)); if (isCollectionResult && definitePath) { result = (List) result.get(0); @@ -206,7 +205,7 @@ public class JsonProjectingMethodInterceptorFactory implements MethodInterceptor */ private static Collection getJsonPaths(Method method) { - org.springframework.data.web.JsonPath annotation = AnnotationUtils.findAnnotation(method, + var annotation = AnnotationUtils.findAnnotation(method, org.springframework.data.web.JsonPath.class); if (annotation != null) { diff --git a/src/main/java/org/springframework/data/web/MapDataBinder.java b/src/main/java/org/springframework/data/web/MapDataBinder.java index 145c22393..b23f04ddc 100644 --- a/src/main/java/org/springframework/data/web/MapDataBinder.java +++ b/src/main/java/org/springframework/data/web/MapDataBinder.java @@ -15,7 +15,6 @@ */ package org.springframework.data.web; -import java.beans.PropertyDescriptor; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -33,10 +32,8 @@ import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.TypeDescriptor; import org.springframework.data.mapping.PropertyPath; import org.springframework.data.mapping.PropertyReferenceException; -import org.springframework.data.util.TypeInformation; import org.springframework.expression.AccessException; import org.springframework.expression.EvaluationContext; -import org.springframework.expression.Expression; import org.springframework.expression.TypedValue; import org.springframework.expression.spel.SpelEvaluationException; import org.springframework.expression.spel.SpelParserConfiguration; @@ -81,7 +78,7 @@ class MapDataBinder extends WebDataBinder { @SuppressWarnings("unchecked") public Map getTarget() { - Object target = super.getTarget(); + var target = super.getTarget(); if (target == null) { throw new IllegalStateException("Target bean should never be null!"); @@ -176,15 +173,15 @@ class MapDataBinder extends WebDataBinder { throw new NotWritablePropertyException(type, propertyName); } - PropertyPath leafProperty = getPropertyPath(propertyName).getLeafProperty(); - TypeInformation owningType = leafProperty.getOwningType(); - TypeInformation propertyType = leafProperty.getTypeInformation(); + var leafProperty = getPropertyPath(propertyName).getLeafProperty(); + var owningType = leafProperty.getOwningType(); + var propertyType = leafProperty.getTypeInformation(); propertyType = propertyName.endsWith("]") ? propertyType.getActualType() : propertyType; if (propertyType != null && conversionRequired(value, propertyType.getType())) { - PropertyDescriptor descriptor = BeanUtils.getPropertyDescriptor(owningType.getType(), + var descriptor = BeanUtils.getPropertyDescriptor(owningType.getType(), leafProperty.getSegment()); if (descriptor == null) { @@ -192,8 +189,8 @@ class MapDataBinder extends WebDataBinder { leafProperty.getSegment(), owningType.getType())); } - MethodParameter methodParameter = new MethodParameter(descriptor.getReadMethod(), -1); - TypeDescriptor typeDescriptor = TypeDescriptor.nested(methodParameter, 0); + var methodParameter = new MethodParameter(descriptor.getReadMethod(), -1); + var typeDescriptor = TypeDescriptor.nested(methodParameter, 0); if (typeDescriptor == null) { throw new IllegalStateException( @@ -209,7 +206,7 @@ class MapDataBinder extends WebDataBinder { .withRootObject(map) // .build(); - Expression expression = PARSER.parseExpression(propertyName); + var expression = PARSER.parseExpression(propertyName); try { expression.setValue(context, value); @@ -229,7 +226,7 @@ class MapDataBinder extends WebDataBinder { private PropertyPath getPropertyPath(String propertyName) { - String plainPropertyPath = propertyName.replaceAll("\\[.*?\\]", ""); + var plainPropertyPath = propertyName.replaceAll("\\[.*?\\]", ""); return PropertyPath.from(plainPropertyPath, type); } @@ -281,13 +278,13 @@ class MapDataBinder extends WebDataBinder { return TypedValue.NULL; } - PropertyPath path = PropertyPath.from(name, type); + var path = PropertyPath.from(name, type); try { return super.read(context, target, name); } catch (AccessException o_O) { - Object emptyResult = path.isCollection() ? CollectionFactory.createCollection(List.class, 0) + var emptyResult = path.isCollection() ? CollectionFactory.createCollection(List.class, 0) : CollectionFactory.createMap(Map.class, 0); ((Map) target).put(name, emptyResult); @@ -307,9 +304,9 @@ class MapDataBinder extends WebDataBinder { */ private TypeDescriptor getDescriptor(PropertyPath path, Object emptyValue) { - Class actualPropertyType = path.getType(); + var actualPropertyType = path.getType(); - TypeDescriptor valueDescriptor = conversionService.canConvert(String.class, actualPropertyType) + var valueDescriptor = conversionService.canConvert(String.class, actualPropertyType) ? TypeDescriptor.valueOf(String.class) : TypeDescriptor.valueOf(HashMap.class); diff --git a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java index 9c48918ed..f4702fc52 100644 --- a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java @@ -18,7 +18,6 @@ package org.springframework.data.web; import org.springframework.core.MethodParameter; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Sort; import org.springframework.lang.Nullable; import org.springframework.web.bind.support.WebDataBinderFactory; import org.springframework.web.context.request.NativeWebRequest; @@ -84,11 +83,11 @@ public class PageableHandlerMethodArgumentResolver extends PageableHandlerMethod public Pageable resolveArgument(MethodParameter methodParameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) { - String page = webRequest.getParameter(getParameterNameToUse(getPageParameterName(), methodParameter)); - String pageSize = webRequest.getParameter(getParameterNameToUse(getSizeParameterName(), methodParameter)); + var page = webRequest.getParameter(getParameterNameToUse(getPageParameterName(), methodParameter)); + var pageSize = webRequest.getParameter(getParameterNameToUse(getSizeParameterName(), methodParameter)); - Sort sort = sortResolver.resolveArgument(methodParameter, mavContainer, webRequest, binderFactory); - Pageable pageable = getPageable(methodParameter, page, pageSize); + var sort = sortResolver.resolveArgument(methodParameter, mavContainer, webRequest, binderFactory); + var pageable = getPageable(methodParameter, page, pageSize); if (sort.isSorted()) { return PageRequest.of(pageable.getPageNumber(), pageable.getPageSize(), sort); diff --git a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverSupport.java b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverSupport.java index 1bef083b7..09682ac99 100644 --- a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverSupport.java +++ b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverSupport.java @@ -17,13 +17,10 @@ package org.springframework.data.web; import static org.springframework.data.web.SpringDataAnnotationUtils.*; -import java.lang.reflect.Method; import java.util.Optional; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.MethodParameter; -import org.springframework.core.annotation.MergedAnnotation; -import org.springframework.core.annotation.MergedAnnotations; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; @@ -197,10 +194,10 @@ public abstract class PageableHandlerMethodArgumentResolverSupport { @Nullable String pageSizeString) { assertPageableUniqueness(methodParameter); - Optional defaultOrFallback = getDefaultFromAnnotationOrFallback(methodParameter).toOptional(); + var defaultOrFallback = getDefaultFromAnnotationOrFallback(methodParameter).toOptional(); - Optional page = parseAndApplyBoundaries(pageString, Integer.MAX_VALUE, true); - Optional pageSize = parseAndApplyBoundaries(pageSizeString, maxPageSize, false); + var page = parseAndApplyBoundaries(pageString, Integer.MAX_VALUE, true); + var pageSize = parseAndApplyBoundaries(pageSizeString, maxPageSize, false); if (!(page.isPresent() && pageSize.isPresent()) && !defaultOrFallback.isPresent()) { return Pageable.unpaged(); @@ -229,9 +226,9 @@ public abstract class PageableHandlerMethodArgumentResolverSupport { */ protected String getParameterNameToUse(String source, @Nullable MethodParameter parameter) { - StringBuilder builder = new StringBuilder(prefix); + var builder = new StringBuilder(prefix); - String value = SpringDataAnnotationUtils.getQualifier(parameter); + var value = SpringDataAnnotationUtils.getQualifier(parameter); if (StringUtils.hasLength(value)) { builder.append(value); @@ -243,7 +240,7 @@ public abstract class PageableHandlerMethodArgumentResolverSupport { private Pageable getDefaultFromAnnotationOrFallback(MethodParameter methodParameter) { - PageableDefault defaults = methodParameter.getParameterAnnotation(PageableDefault.class); + var defaults = methodParameter.getParameterAnnotation(PageableDefault.class); if (defaults != null) { return getDefaultPageRequestFrom(methodParameter, defaults); @@ -258,7 +255,7 @@ public abstract class PageableHandlerMethodArgumentResolverSupport { Integer defaultPageSize = getSpecificPropertyOrDefaultFromValue(defaults, "size"); if (defaultPageSize < 1) { - Method annotatedMethod = parameter.getMethod(); + var annotatedMethod = parameter.getMethod(); throw new IllegalStateException(String.format(INVALID_DEFAULT_PAGE_SIZE, annotatedMethod)); } @@ -285,7 +282,7 @@ public abstract class PageableHandlerMethodArgumentResolverSupport { } try { - int parsed = Integer.parseInt(parameter) - (oneIndexedParameters && shiftIndex ? 1 : 0); + var parsed = Integer.parseInt(parameter) - (oneIndexedParameters && shiftIndex ? 1 : 0); return Optional.of(parsed < 0 ? 0 : parsed > upper ? upper : parsed); } catch (NumberFormatException e) { return Optional.of(0); diff --git a/src/main/java/org/springframework/data/web/PagedResourcesAssembler.java b/src/main/java/org/springframework/data/web/PagedResourcesAssembler.java index 0e431be5a..4f0fefc4f 100644 --- a/src/main/java/org/springframework/data/web/PagedResourcesAssembler.java +++ b/src/main/java/org/springframework/data/web/PagedResourcesAssembler.java @@ -41,7 +41,6 @@ import org.springframework.lang.Nullable; import org.springframework.util.Assert; import org.springframework.web.servlet.support.ServletUriComponentsBuilder; import org.springframework.web.util.UriComponents; -import org.springframework.web.util.UriComponentsBuilder; /** * {@link RepresentationModelAssembler} to easily convert {@link Page} instances into {@link PagedModel}. @@ -172,10 +171,10 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< Assert.notNull(type, "Type must not be null!"); Assert.notNull(link, "Link must not be null!"); - PageMetadata metadata = asPageMetadata(page); + var metadata = asPageMetadata(page); - EmbeddedWrapper wrapper = wrappers.emptyCollectionOf(type); - List embedded = Collections.singletonList(wrapper); + var wrapper = wrappers.emptyCollectionOf(type); + var embedded = Collections.singletonList(wrapper); return addPaginationLinks(PagedModel.of(embedded, metadata), page, link); } @@ -206,20 +205,20 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< List resources = new ArrayList<>(page.getNumberOfElements()); - for (S element : page) { + for (var element : page) { resources.add(assembler.toModel(element)); } - PagedModel resource = createPagedModel(resources, asPageMetadata(page), page); + var resource = createPagedModel(resources, asPageMetadata(page), page); return addPaginationLinks(resource, page, link); } private PagedModel addPaginationLinks(PagedModel resources, Page page, Optional link) { - UriTemplate base = getUriTemplate(link); + var base = getUriTemplate(link); - boolean isNavigable = page.hasPrevious() || page.hasNext(); + var isNavigable = page.hasPrevious() || page.hasNext(); if (isNavigable || forceFirstAndLastRels) { resources.add(createLink(base, PageRequest.of(0, page.getSize(), page.getSort()), IanaLinkRelations.FIRST)); @@ -229,7 +228,7 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< resources.add(createLink(base, page.previousPageable(), IanaLinkRelations.PREV)); } - Link selfLink = link.map(Link::withSelfRel)// + var selfLink = link.map(Link::withSelfRel)// .orElseGet(() -> createLink(base, page.getPageable(), IanaLinkRelations.SELF)); resources.add(selfLink); @@ -240,7 +239,7 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< if (isNavigable || forceFirstAndLastRels) { - int lastIndex = page.getTotalPages() == 0 ? 0 : page.getTotalPages() - 1; + var lastIndex = page.getTotalPages() == 0 ? 0 : page.getTotalPages() - 1; resources .add(createLink(base, PageRequest.of(lastIndex, page.getSize(), page.getSort()), IanaLinkRelations.LAST)); @@ -270,7 +269,7 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< */ private Link createLink(UriTemplate base, Pageable pageable, LinkRelation relation) { - UriComponentsBuilder builder = fromUri(base.expand()); + var builder = fromUri(base.expand()); pageableResolver.enhance(builder, getMethodParameter(), pageable); return Link.of(UriTemplate.of(builder.build().toString()), relation); @@ -298,7 +297,7 @@ public class PagedResourcesAssembler implements RepresentationModelAssembler< Assert.notNull(page, "Page must not be null!"); - int number = pageableResolver.isOneIndexedParameters() ? page.getNumber() + 1 : page.getNumber(); + var number = pageableResolver.isOneIndexedParameters() ? page.getNumber() + 1 : page.getNumber(); return new PageMetadata(page.getSize(), number, page.getTotalElements(), page.getTotalPages()); } diff --git a/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java b/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java index 489a1ff98..6c23158f2 100644 --- a/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java @@ -15,9 +15,6 @@ */ package org.springframework.data.web; -import java.lang.reflect.Method; -import java.util.List; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -79,7 +76,7 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) { - MethodParameter pageableParameter = findMatchingPageableParameter(parameter); + var pageableParameter = findMatchingPageableParameter(parameter); if (pageableParameter != null) { return new MethodParameterAwarePagedResourcesAssembler<>(pageableParameter, resolver, null); @@ -98,15 +95,15 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg @Nullable private static MethodParameter findMatchingPageableParameter(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); if (method == null) { throw new IllegalArgumentException(String.format("Could not obtain method from parameter %s!", parameter)); } - MethodParameters parameters = MethodParameters.of(method); - List pageableParameters = parameters.getParametersOfType(Pageable.class); - Qualifier assemblerQualifier = parameter.getParameterAnnotation(Qualifier.class); + var parameters = MethodParameters.of(method); + var pageableParameters = parameters.getParametersOfType(Pageable.class); + var assemblerQualifier = parameter.getParameterAnnotation(Qualifier.class); if (pageableParameters.isEmpty()) { return null; @@ -114,8 +111,8 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg if (pageableParameters.size() == 1) { - MethodParameter pageableParameter = pageableParameters.get(0); - MethodParameter matchingParameter = returnIfQualifiersMatch(pageableParameter, assemblerQualifier); + var pageableParameter = pageableParameters.get(0); + var matchingParameter = returnIfQualifiersMatch(pageableParameter, assemblerQualifier); if (matchingParameter == null) { logger.info(LogMessage.format(SUPERFLOUS_QUALIFIER, PagedResourcesAssembler.class.getSimpleName(), @@ -129,9 +126,9 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg throw new IllegalStateException(PARAMETER_AMBIGUITY); } - for (MethodParameter pageableParameter : pageableParameters) { + for (var pageableParameter : pageableParameters) { - MethodParameter matchingParameter = returnIfQualifiersMatch(pageableParameter, assemblerQualifier); + var matchingParameter = returnIfQualifiersMatch(pageableParameter, assemblerQualifier); if (matchingParameter != null) { return matchingParameter; @@ -149,7 +146,7 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg return pageableParameter; } - Qualifier pageableParameterQualifier = pageableParameter.getParameterAnnotation(Qualifier.class); + var pageableParameterQualifier = pageableParameter.getParameterAnnotation(Qualifier.class); if (pageableParameterQualifier == null) { return null; diff --git a/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java b/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java index b1e2b9f6b..183f7c26d 100644 --- a/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java +++ b/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java @@ -84,7 +84,7 @@ public class ProjectingJackson2HttpMessageConverter extends MappingJackson2HttpM Assert.notNull(mapper, "ObjectMapper must not be null!"); - SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); + var projectionFactory = new SpelAwareProxyProjectionFactory(); projectionFactory.registerMethodInvokerFactory(new JsonProjectingMethodInterceptorFactory( new JacksonJsonProvider(mapper), new JacksonMappingProvider(mapper))); @@ -120,9 +120,9 @@ public class ProjectingJackson2HttpMessageConverter extends MappingJackson2HttpM return false; } - ResolvableType owner = contextClass == null ? null : ResolvableType.forClass(contextClass); - Class rawType = ResolvableType.forType(type, owner).resolve(Object.class); - Boolean result = supportedTypesCache.get(rawType); + var owner = contextClass == null ? null : ResolvableType.forClass(contextClass); + var rawType = ResolvableType.forType(type, owner).resolve(Object.class); + var result = supportedTypesCache.get(rawType); if (result != null) { return result; diff --git a/src/main/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolver.java index 931d75d2e..d861dfd0e 100644 --- a/src/main/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolver.java @@ -92,7 +92,7 @@ public class ProxyingHandlerMethodArgumentResolver extends ModelAttributeMethodP return false; } - Class type = parameter.getParameterType(); + var type = parameter.getParameterType(); if (!type.isInterface()) { return false; @@ -109,7 +109,7 @@ public class ProxyingHandlerMethodArgumentResolver extends ModelAttributeMethodP } // Fallback for only user defined interfaces - String packageName = ClassUtils.getPackageName(type); + var packageName = ClassUtils.getPackageName(type); return !IGNORED_PACKAGES.stream().anyMatch(it -> packageName.startsWith(it)); } @@ -122,7 +122,7 @@ public class ProxyingHandlerMethodArgumentResolver extends ModelAttributeMethodP protected Object createAttribute(String attributeName, MethodParameter parameter, WebDataBinderFactory binderFactory, NativeWebRequest request) throws Exception { - MapDataBinder binder = new MapDataBinder(parameter.getParameterType(), conversionService.getObject()); + var binder = new MapDataBinder(parameter.getParameterType(), conversionService.getObject()); binder.bind(new MutablePropertyValues(request.getParameterMap())); return proxyFactory.createProjection(parameter.getParameterType(), binder.getTarget()); diff --git a/src/main/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolver.java index 18065d3b2..58bd06e64 100644 --- a/src/main/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolver.java @@ -18,10 +18,8 @@ package org.springframework.data.web; import org.springframework.core.MethodParameter; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Sort; import org.springframework.lang.NonNull; import org.springframework.util.Assert; -import org.springframework.util.MultiValueMap; import org.springframework.web.reactive.BindingContext; import org.springframework.web.reactive.result.method.SyncHandlerMethodArgumentResolver; import org.springframework.web.server.ServerWebExchange; @@ -78,13 +76,13 @@ public class ReactivePageableHandlerMethodArgumentResolver extends PageableHandl public Pageable resolveArgumentValue(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange) { - MultiValueMap queryParams = exchange.getRequest().getQueryParams(); - String page = queryParams.getFirst(getParameterNameToUse(getPageParameterName(), parameter)); - String pageSize = queryParams.getFirst(getParameterNameToUse(getSizeParameterName(), parameter)); + var queryParams = exchange.getRequest().getQueryParams(); + var page = queryParams.getFirst(getParameterNameToUse(getPageParameterName(), parameter)); + var pageSize = queryParams.getFirst(getParameterNameToUse(getSizeParameterName(), parameter)); - Sort sort = sortResolver.resolveArgumentValue(parameter, bindingContext, exchange); + var sort = sortResolver.resolveArgumentValue(parameter, bindingContext, exchange); - Pageable pageable = getPageable(parameter, page, pageSize); + var pageable = getPageable(parameter, page, pageSize); return sort.isSorted() ? PageRequest.of(pageable.getPageNumber(), pageable.getPageSize(), sort) : pageable; } diff --git a/src/main/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolver.java index 336ed6bd8..c54b5f717 100644 --- a/src/main/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolver.java @@ -15,8 +15,6 @@ */ package org.springframework.data.web; -import java.util.List; - import org.springframework.core.MethodParameter; import org.springframework.data.domain.Sort; import org.springframework.lang.NonNull; @@ -54,7 +52,7 @@ public class ReactiveSortHandlerMethodArgumentResolver extends SortHandlerMethod public Sort resolveArgumentValue(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange) { - List directionParameter = exchange.getRequest().getQueryParams().get(getSortParameter(parameter)); + var directionParameter = exchange.getRequest().getQueryParams().get(getSortParameter(parameter)); // No parameter if (directionParameter == null) { diff --git a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java index b1c2225ff..c3b5f7461 100644 --- a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java @@ -57,7 +57,7 @@ public class SortHandlerMethodArgumentResolver extends SortHandlerMethodArgument public Sort resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) { - String[] directionParameter = webRequest.getParameterValues(getSortParameter(parameter)); + var directionParameter = webRequest.getParameterValues(getSortParameter(parameter)); // No parameter if (directionParameter == null) { diff --git a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolverSupport.java b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolverSupport.java index 439f4d8c7..90e8f41ba 100644 --- a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolverSupport.java +++ b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolverSupport.java @@ -22,10 +22,7 @@ import java.util.List; import java.util.Optional; import java.util.function.Consumer; -import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.MethodParameter; -import org.springframework.core.annotation.MergedAnnotation; -import org.springframework.core.annotation.MergedAnnotations; import org.springframework.data.domain.Sort; import org.springframework.data.domain.Sort.Direction; import org.springframework.data.domain.Sort.Order; @@ -123,8 +120,8 @@ public abstract class SortHandlerMethodArgumentResolverSupport { */ protected Sort getDefaultFromAnnotationOrFallback(MethodParameter parameter) { - SortDefaults annotatedDefaults = parameter.getParameterAnnotation(SortDefaults.class); - SortDefault annotatedDefault = parameter.getParameterAnnotation(SortDefault.class); + var annotatedDefaults = parameter.getParameterAnnotation(SortDefaults.class); + var annotatedDefault = parameter.getParameterAnnotation(SortDefault.class); if (annotatedDefault != null && annotatedDefaults != null) { throw new IllegalArgumentException( @@ -138,9 +135,9 @@ public abstract class SortHandlerMethodArgumentResolverSupport { if (annotatedDefaults != null) { - Sort sort = Sort.unsorted(); + var sort = Sort.unsorted(); - for (SortDefault currentAnnotatedDefault : annotatedDefaults.value()) { + for (var currentAnnotatedDefault : annotatedDefaults.value()) { sort = appendOrCreateSortTo(currentAnnotatedDefault, sort); } @@ -167,9 +164,9 @@ public abstract class SortHandlerMethodArgumentResolverSupport { } List orders = new ArrayList<>(fields.length); - for (String field : fields) { + for (var field : fields) { - Order order = new Order(sortDefault.direction(), field); + var order = new Order(sortDefault.direction(), field); orders.add(sortDefault.caseSensitive() ? order : order.ignoreCase()); } @@ -184,9 +181,9 @@ public abstract class SortHandlerMethodArgumentResolverSupport { */ protected String getSortParameter(@Nullable MethodParameter parameter) { - StringBuilder builder = new StringBuilder(); + var builder = new StringBuilder(); - String value = SpringDataAnnotationUtils.getQualifier(parameter); + var value = SpringDataAnnotationUtils.getQualifier(parameter); if (StringUtils.hasLength(value)) { builder.append(value); @@ -211,7 +208,7 @@ public abstract class SortHandlerMethodArgumentResolverSupport { List allOrders = new ArrayList<>(); - for (String part : source) { + for (var part : source) { if (part == null) { continue; @@ -238,9 +235,9 @@ public abstract class SortHandlerMethodArgumentResolverSupport { List expressions = new ArrayList<>(); ExpressionBuilder builder = null; - for (Order order : sort) { + for (var order : sort) { - Direction direction = order.getDirection(); + var direction = order.getDirection(); if (builder == null) { builder = new ExpressionBuilder(direction); @@ -268,9 +265,9 @@ public abstract class SortHandlerMethodArgumentResolverSupport { List expressions = new ArrayList<>(); ExpressionBuilder builder = null; - for (Order order : sort) { + for (var order : sort) { - Direction direction = order.getDirection(); + var direction = order.getDirection(); if (builder == null) { builder = new ExpressionBuilder(direction); @@ -391,7 +388,7 @@ public abstract class SortHandlerMethodArgumentResolverSupport { */ public static SortOrderParser parse(String part, String delimiter) { - String[] elements = Arrays.stream(part.split(delimiter)) // + var elements = Arrays.stream(part.split(delimiter)) // .filter(SortHandlerMethodArgumentResolver::notOnlyDots) // .toArray(String[]::new); @@ -430,7 +427,7 @@ public abstract class SortHandlerMethodArgumentResolverSupport { */ public void forEachOrder(Consumer callback) { - for (int i = 0; i < lastIndex; i++) { + for (var i = 0; i < lastIndex; i++) { toOrder(elements[i]).ifPresent(callback); } } @@ -445,7 +442,7 @@ public abstract class SortHandlerMethodArgumentResolverSupport { return Optional.empty(); } - Order order = direction.map(it -> new Order(it, property)).orElseGet(() -> Order.by(property)); + var order = direction.map(it -> new Order(it, property)).orElseGet(() -> Order.by(property)); if (ignoreCase.isPresent()) { return Optional.of(order.ignoreCase()); diff --git a/src/main/java/org/springframework/data/web/SpringDataAnnotationUtils.java b/src/main/java/org/springframework/data/web/SpringDataAnnotationUtils.java index e169be340..c6a7abb07 100644 --- a/src/main/java/org/springframework/data/web/SpringDataAnnotationUtils.java +++ b/src/main/java/org/springframework/data/web/SpringDataAnnotationUtils.java @@ -23,7 +23,6 @@ import java.util.Set; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.MethodParameter; import org.springframework.core.annotation.AnnotationUtils; -import org.springframework.core.annotation.MergedAnnotation; import org.springframework.core.annotation.MergedAnnotations; import org.springframework.data.domain.Pageable; import org.springframework.lang.Nullable; @@ -47,14 +46,14 @@ abstract class SpringDataAnnotationUtils { */ public static void assertPageableUniqueness(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); if (method == null) { throw new IllegalArgumentException(String.format("Method parameter %s is not backed by a method.", parameter)); } if (containsMoreThanOnePageableParameter(method)) { - Annotation[][] annotations = method.getParameterAnnotations(); + var annotations = method.getParameterAnnotations(); assertQualifiersFor(method.getParameterTypes(), annotations); } } @@ -67,9 +66,9 @@ abstract class SpringDataAnnotationUtils { */ private static boolean containsMoreThanOnePageableParameter(Method method) { - boolean pageableFound = false; + var pageableFound = false; - for (Class type : method.getParameterTypes()) { + for (var type : method.getParameterTypes()) { if (pageableFound && type.equals(Pageable.class)) { return true; @@ -94,10 +93,10 @@ abstract class SpringDataAnnotationUtils { @SuppressWarnings("unchecked") public static T getSpecificPropertyOrDefaultFromValue(Annotation annotation, String property) { - Object propertyDefaultValue = AnnotationUtils.getDefaultValue(annotation, property); - Object propertyValue = AnnotationUtils.getValue(annotation, property); + var propertyDefaultValue = AnnotationUtils.getDefaultValue(annotation, property); + var propertyValue = AnnotationUtils.getValue(annotation, property); - Object result = ObjectUtils.nullSafeEquals(propertyDefaultValue, propertyValue) // + var result = ObjectUtils.nullSafeEquals(propertyDefaultValue, propertyValue) // ? AnnotationUtils.getValue(annotation) // : propertyValue; @@ -122,8 +121,8 @@ abstract class SpringDataAnnotationUtils { return null; } - MergedAnnotations annotations = MergedAnnotations.from(parameter.getParameter()); - MergedAnnotation qualifier = annotations.get(Qualifier.class); + var annotations = MergedAnnotations.from(parameter.getParameter()); + var qualifier = annotations.get(Qualifier.class); return qualifier.isPresent() ? qualifier.getString("value") : null; } @@ -139,11 +138,11 @@ abstract class SpringDataAnnotationUtils { Set values = new HashSet<>(); - for (int i = 0; i < annotations.length; i++) { + for (var i = 0; i < annotations.length; i++) { if (Pageable.class.equals(parameterTypes[i])) { - Qualifier qualifier = findAnnotation(annotations[i]); + var qualifier = findAnnotation(annotations[i]); if (null == qualifier) { throw new IllegalStateException( @@ -169,7 +168,7 @@ abstract class SpringDataAnnotationUtils { @Nullable private static Qualifier findAnnotation(Annotation[] annotations) { - for (Annotation annotation : annotations) { + for (var annotation : annotations) { if (annotation instanceof Qualifier) { return (Qualifier) annotation; } diff --git a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java index 02bed316c..c9f5b459e 100644 --- a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java +++ b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java @@ -66,7 +66,7 @@ public class XmlBeamHttpMessageConverter extends AbstractHttpMessageConverter type) { - Class rawType = ResolvableType.forType(type).resolve(Object.class); - Boolean result = supportedTypesCache.get(rawType); + var rawType = ResolvableType.forType(type).resolve(Object.class); + var result = supportedTypesCache.get(rawType); if (result != null) { return result; @@ -134,7 +134,7 @@ public class XmlBeamHttpMessageConverter extends AbstractHttpMessageConverter currentResolvers = adapter.getArgumentResolvers(); + var adapter = (RequestMappingHandlerAdapter) bean; + var currentResolvers = adapter.getArgumentResolvers(); if (currentResolvers == null) { throw new IllegalStateException( diff --git a/src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java b/src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java index ad1ab33c5..3c5bdb64c 100644 --- a/src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java +++ b/src/main/java/org/springframework/data/web/config/SpringDataWebConfiguration.java @@ -101,7 +101,7 @@ public class SpringDataWebConfiguration implements WebMvcConfigurer, BeanClassLo @Bean public PageableHandlerMethodArgumentResolver pageableResolver() { - PageableHandlerMethodArgumentResolver pageableResolver = // + var pageableResolver = // new PageableHandlerMethodArgumentResolver(sortResolver.get()); customizePageableResolver(pageableResolver); return pageableResolver; @@ -114,7 +114,7 @@ public class SpringDataWebConfiguration implements WebMvcConfigurer, BeanClassLo @Bean public SortHandlerMethodArgumentResolver sortResolver() { - SortHandlerMethodArgumentResolver sortResolver = new SortHandlerMethodArgumentResolver(); + var sortResolver = new SortHandlerMethodArgumentResolver(); customizeSortResolver(sortResolver); return sortResolver; } @@ -129,13 +129,11 @@ public class SpringDataWebConfiguration implements WebMvcConfigurer, BeanClassLo registry.addFormatter(DistanceFormatter.INSTANCE); registry.addFormatter(PointFormatter.INSTANCE); - if (!(registry instanceof FormattingConversionService)) { + if (!(registry instanceof FormattingConversionService conversionService)) { return; } - FormattingConversionService conversionService = (FormattingConversionService) registry; - - DomainClassConverter converter = new DomainClassConverter<>(conversionService); + var converter = new DomainClassConverter(conversionService); converter.setApplicationContext(context); } @@ -149,7 +147,7 @@ public class SpringDataWebConfiguration implements WebMvcConfigurer, BeanClassLo argumentResolvers.add(sortResolver.get()); argumentResolvers.add(pageableResolver.get()); - ProxyingHandlerMethodArgumentResolver resolver = new ProxyingHandlerMethodArgumentResolver(conversionService, true); + var resolver = new ProxyingHandlerMethodArgumentResolver(conversionService, true); resolver.setBeanFactory(context); forwardBeanClassLoader(resolver); @@ -166,9 +164,9 @@ public class SpringDataWebConfiguration implements WebMvcConfigurer, BeanClassLo if (ClassUtils.isPresent("com.jayway.jsonpath.DocumentContext", context.getClassLoader()) && ClassUtils.isPresent("com.fasterxml.jackson.databind.ObjectMapper", context.getClassLoader())) { - ObjectMapper mapper = context.getBeanProvider(ObjectMapper.class).getIfUnique(ObjectMapper::new); + var mapper = context.getBeanProvider(ObjectMapper.class).getIfUnique(ObjectMapper::new); - ProjectingJackson2HttpMessageConverter converter = new ProjectingJackson2HttpMessageConverter(mapper); + var converter = new ProjectingJackson2HttpMessageConverter(mapper); converter.setBeanFactory(context); forwardBeanClassLoader(converter); diff --git a/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java b/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java index f9e7a5772..1b9e10527 100644 --- a/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java @@ -16,8 +16,6 @@ package org.springframework.data.web.querydsl; import java.util.Arrays; -import java.util.Map; -import java.util.Map.Entry; import java.util.Optional; import org.springframework.core.MethodParameter; @@ -32,8 +30,6 @@ import org.springframework.web.context.request.NativeWebRequest; import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.method.support.ModelAndViewContainer; -import com.querydsl.core.types.Predicate; - /** * {@link HandlerMethodArgumentResolver} to allow injection of {@link com.querydsl.core.types.Predicate} into Spring MVC * controller methods. @@ -79,18 +75,18 @@ public class QuerydslPredicateArgumentResolver extends QuerydslPredicateArgument public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer, NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception { - MultiValueMap queryParameters = getQueryParameters(webRequest); - Predicate result = getPredicate(parameter, queryParameters); + var queryParameters = getQueryParameters(webRequest); + var result = getPredicate(parameter, queryParameters); return potentiallyConvertMethodParameterValue(parameter, result); } private static MultiValueMap getQueryParameters(NativeWebRequest webRequest) { - Map parameterMap = webRequest.getParameterMap(); + var parameterMap = webRequest.getParameterMap(); MultiValueMap queryParameters = new LinkedMultiValueMap<>(parameterMap.size()); - for (Entry entry : parameterMap.entrySet()) { + for (var entry : parameterMap.entrySet()) { queryParameters.put(entry.getKey(), Arrays.asList(entry.getValue())); } diff --git a/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverSupport.java b/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverSupport.java index 997c1e90b..bc1709eb8 100644 --- a/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverSupport.java +++ b/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverSupport.java @@ -15,7 +15,6 @@ */ package org.springframework.data.web.querydsl; -import java.lang.reflect.Method; import java.util.Optional; import org.springframework.core.MethodParameter; @@ -24,7 +23,6 @@ import org.springframework.core.annotation.MergedAnnotation; import org.springframework.core.annotation.MergedAnnotations; import org.springframework.core.convert.ConversionService; import org.springframework.data.querydsl.binding.QuerydslBinderCustomizer; -import org.springframework.data.querydsl.binding.QuerydslBindings; import org.springframework.data.querydsl.binding.QuerydslBindingsFactory; import org.springframework.data.querydsl.binding.QuerydslPredicate; import org.springframework.data.querydsl.binding.QuerydslPredicateBuilder; @@ -78,13 +76,13 @@ public abstract class QuerydslPredicateArgumentResolverSupport { */ public boolean supportsParameter(MethodParameter parameter) { - ResolvableType type = ResolvableType.forMethodParameter(parameter); + var type = ResolvableType.forMethodParameter(parameter); if (PREDICATE.isAssignableFrom(type) || OPTIONAL_OF_PREDICATE.isAssignableFrom(type)) { return true; } - MergedAnnotations annotations = MergedAnnotations.from(parameter.getParameter()); + var annotations = MergedAnnotations.from(parameter.getParameter()); if (annotations.isPresent(QuerydslPredicate.class)) { throw new IllegalArgumentException(String.format("Parameter at position %s must be of type Predicate but was %s.", @@ -96,15 +94,15 @@ public abstract class QuerydslPredicateArgumentResolverSupport { Predicate getPredicate(MethodParameter parameter, MultiValueMap queryParameters) { - MergedAnnotations annotations = MergedAnnotations.from(parameter.getParameter()); - MergedAnnotation predicateAnnotation = annotations.get(QuerydslPredicate.class); + var annotations = MergedAnnotations.from(parameter.getParameter()); + var predicateAnnotation = annotations.get(QuerydslPredicate.class); - TypeInformation domainType = extractTypeInfo(parameter, predicateAnnotation).getRequiredActualType(); + var domainType = extractTypeInfo(parameter, predicateAnnotation).getRequiredActualType(); Optional>> bindingsAnnotation = predicateAnnotation.getValue("bindings") // .map(CastUtils::cast); - QuerydslBindings bindings = bindingsAnnotation // + var bindings = bindingsAnnotation // .map(it -> bindingsFactory.createBindingsFor(domainType, it)) // .orElseGet(() -> bindingsFactory.createBindingsFor(domainType)); @@ -135,7 +133,7 @@ public abstract class QuerydslPredicateArgumentResolverSupport { protected static TypeInformation extractTypeInfo(MethodParameter parameter, MergedAnnotation predicateAnnotation) { - Optional annotation = predicateAnnotation.synthesize(MergedAnnotation::isPresent); + var annotation = predicateAnnotation.synthesize(MergedAnnotation::isPresent); return annotation.filter(it -> !Object.class.equals(it.root()))// .> map(it -> ClassTypeInformation.from(it.root()))// @@ -144,7 +142,7 @@ public abstract class QuerydslPredicateArgumentResolverSupport { private static TypeInformation detectDomainType(MethodParameter parameter) { - Method method = parameter.getMethod(); + var method = parameter.getMethod(); if (method == null) { throw new IllegalArgumentException("Method parameter is not backed by a method!"); @@ -159,7 +157,7 @@ public abstract class QuerydslPredicateArgumentResolverSupport { return source; } - TypeInformation actualType = source.getActualType(); + var actualType = source.getActualType(); if (actualType == null) { throw new IllegalArgumentException(String.format("Could not determine domain type from %s!", source)); diff --git a/src/main/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolver.java b/src/main/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolver.java index dd451a234..6c71104ed 100644 --- a/src/main/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolver.java @@ -15,9 +15,6 @@ */ package org.springframework.data.web.querydsl; -import java.util.List; -import java.util.Map.Entry; - import org.springframework.core.MethodParameter; import org.springframework.core.convert.ConversionService; import org.springframework.data.querydsl.binding.QuerydslBindingsFactory; @@ -29,8 +26,6 @@ import org.springframework.web.reactive.result.method.HandlerMethodArgumentResol import org.springframework.web.reactive.result.method.SyncHandlerMethodArgumentResolver; import org.springframework.web.server.ServerWebExchange; -import com.querydsl.core.types.Predicate; - /** * {@link HandlerMethodArgumentResolver} to allow injection of {@link com.querydsl.core.types.Predicate} into Spring * WebFlux controller methods. @@ -56,8 +51,8 @@ public class ReactiveQuerydslPredicateArgumentResolver extends QuerydslPredicate public Object resolveArgumentValue(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange) { - MultiValueMap queryParameters = getQueryParameters(exchange); - Predicate result = getPredicate(parameter, queryParameters); + var queryParameters = getQueryParameters(exchange); + var result = getPredicate(parameter, queryParameters); return potentiallyConvertMethodParameterValue(parameter, result); } @@ -65,10 +60,10 @@ public class ReactiveQuerydslPredicateArgumentResolver extends QuerydslPredicate private static MultiValueMap getQueryParameters(ServerWebExchange exchange) { - MultiValueMap queryParams = exchange.getRequest().getQueryParams(); + var queryParams = exchange.getRequest().getQueryParams(); MultiValueMap parameters = new LinkedMultiValueMap<>(queryParams.size()); - for (Entry> entry : queryParams.entrySet()) { + for (var entry : queryParams.entrySet()) { parameters.put(entry.getKey(), entry.getValue()); } diff --git a/src/test/java/org/springframework/data/annotation/TypeAliasUnitTests.java b/src/test/java/org/springframework/data/annotation/TypeAliasUnitTests.java index c3ab010ea..3afe0d5fd 100755 --- a/src/test/java/org/springframework/data/annotation/TypeAliasUnitTests.java +++ b/src/test/java/org/springframework/data/annotation/TypeAliasUnitTests.java @@ -17,9 +17,8 @@ package org.springframework.data.annotation; import static org.assertj.core.api.Assertions.*; -import java.util.Set; - import org.junit.jupiter.api.Test; + import org.springframework.data.util.AnnotatedTypeScanner; /** @@ -33,8 +32,8 @@ class TypeAliasUnitTests { @SuppressWarnings("unchecked") void scanningforAtPersistentFindsTypeAliasAnnotatedTypes() { - AnnotatedTypeScanner scanner = new AnnotatedTypeScanner(Persistent.class); - Set> types = scanner.findTypes(getClass().getPackage().getName()); + var scanner = new AnnotatedTypeScanner(Persistent.class); + var types = scanner.findTypes(getClass().getPackage().getName()); assertThat(types).containsExactlyInAnyOrder(SampleType.class, TypeAlias.class); } diff --git a/src/test/java/org/springframework/data/auditing/AnnotationAuditingMetadataUnitTests.java b/src/test/java/org/springframework/data/auditing/AnnotationAuditingMetadataUnitTests.java index 10e1a5a9f..9d6fece77 100755 --- a/src/test/java/org/springframework/data/auditing/AnnotationAuditingMetadataUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/AnnotationAuditingMetadataUnitTests.java @@ -41,7 +41,7 @@ class AnnotationAuditingMetadataUnitTests { @Test void checkAnnotationDiscovery() { - AnnotationAuditingMetadata metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); + var metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); assertThat(metadata).isNotNull(); assertThat(metadata.getCreatedByField()).hasValue(createdByField); @@ -53,17 +53,17 @@ class AnnotationAuditingMetadataUnitTests { @Test void checkCaching() { - AnnotationAuditingMetadata firstCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); + var firstCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); assertThat(firstCall).isNotNull(); - AnnotationAuditingMetadata secondCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); + var secondCall = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); assertThat(firstCall).isEqualTo(secondCall); } @Test void checkIsAuditable() { - AnnotationAuditingMetadata metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); + var metadata = AnnotationAuditingMetadata.getMetadata(AnnotatedUser.class); assertThat(metadata).isNotNull(); assertThat(metadata.isAuditable()).isTrue(); diff --git a/src/test/java/org/springframework/data/auditing/AuditingHandlerUnitTests.java b/src/test/java/org/springframework/data/auditing/AuditingHandlerUnitTests.java index 0d51176f5..1f766d6f0 100755 --- a/src/test/java/org/springframework/data/auditing/AuditingHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/AuditingHandlerUnitTests.java @@ -120,7 +120,7 @@ class AuditingHandlerUnitTests { @Test void onlySetsModificationDataOnNotNewEntities() { - AuditedUser audited = new AuditedUser(); + var audited = new AuditedUser(); audited.id = 1L; handler.setAuditorAware(auditorAware); @@ -152,7 +152,7 @@ class AuditingHandlerUnitTests { @Test // DATAJPA-9 void usesDateTimeProviderIfConfigured() { - DateTimeProvider provider = mock(DateTimeProvider.class); + var provider = mock(DateTimeProvider.class); doReturn(Optional.empty()).when(provider).getNow(); handler.setDateTimeProvider(provider); @@ -164,10 +164,10 @@ class AuditingHandlerUnitTests { @Test void setsAuditingInfoOnEntityUsingInheritance() { - AuditingHandler handler = new AuditingHandler(PersistentEntities.of(new SampleMappingContext())); + var handler = new AuditingHandler(PersistentEntities.of(new SampleMappingContext())); handler.setModifyOnCreation(false); - MyDocument result = handler.markCreated(new MyDocument()); + var result = handler.markCreated(new MyDocument()); assertThat(result.created).isNotNull(); assertThat(result.modified).isNull(); diff --git a/src/test/java/org/springframework/data/auditing/AuditorUnitTests.java b/src/test/java/org/springframework/data/auditing/AuditorUnitTests.java index 8824f7ce0..bdb7d446a 100644 --- a/src/test/java/org/springframework/data/auditing/AuditorUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/AuditorUnitTests.java @@ -39,7 +39,7 @@ class AuditorUnitTests { @Test // DATACMNS-1231 void auditorOfMustNotWrapOtherAuditor() { - Auditor source = Auditor.of("batman"); + var source = Auditor.of("batman"); assertThat(Auditor.of(source)).isSameAs(source); } diff --git a/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java b/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java index 32f7b5cf7..c8e7ae59a 100755 --- a/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java @@ -21,8 +21,6 @@ import java.time.Instant; import java.time.LocalDateTime; import java.time.ZoneOffset; import java.time.temporal.ChronoField; -import java.time.temporal.TemporalAccessor; -import java.util.Optional; import org.junit.jupiter.api.Test; @@ -70,10 +68,10 @@ class DefaultAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-643 void setsJsr310Types() { - Jsr310AuditedUser user = new Jsr310AuditedUser(); - Instant instant = Instant.now(); + var user = new Jsr310AuditedUser(); + var instant = Instant.now(); - Optional> wrapper = factory.getBeanWrapperFor(user); + var wrapper = factory.getBeanWrapperFor(user); assertThat(wrapper).hasValueSatisfying(it -> { @@ -88,10 +86,10 @@ class DefaultAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1259 void lastModifiedDateAsLongIsAvailableViaWrapper() { - LongBasedAuditable source = new LongBasedAuditable(); + var source = new LongBasedAuditable(); source.dateModified = 42000L; - Optional result = factory.getBeanWrapperFor(source) // + var result = factory.getBeanWrapperFor(source) // .flatMap(AuditableBeanWrapper::getLastModifiedDate) // .map(ta -> ta.getLong(ChronoField.INSTANT_SECONDS)); @@ -101,9 +99,9 @@ class DefaultAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1259 void canSetLastModifiedDateAsInstantViaWrapperOnLongField() { - LongBasedAuditable source = new LongBasedAuditable(); + var source = new LongBasedAuditable(); - Optional> beanWrapper = factory.getBeanWrapperFor(source); + var beanWrapper = factory.getBeanWrapperFor(source); assertThat(beanWrapper).isPresent(); beanWrapper.get().setLastModifiedDate(Instant.ofEpochMilli(42L)); @@ -114,9 +112,9 @@ class DefaultAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1259 void canSetLastModifiedDateAsLocalDateTimeViaWrapperOnLongField() { - LongBasedAuditable source = new LongBasedAuditable(); + var source = new LongBasedAuditable(); - Optional result = factory.getBeanWrapperFor(source).map(it -> { + var result = factory.getBeanWrapperFor(source).map(it -> { it.setLastModifiedDate(LocalDateTime.ofInstant(Instant.ofEpochMilli(42L), ZoneOffset.systemDefault())); return it.getBean().dateModified; }); @@ -127,12 +125,12 @@ class DefaultAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1259 void lastModifiedAsLocalDateTimeDateIsAvailableViaWrapperAsLocalDateTime() { - LocalDateTime now = LocalDateTime.now(); + var now = LocalDateTime.now(); - AuditedUser source = new AuditedUser(); + var source = new AuditedUser(); source.setLastModifiedDate(now); - Optional result = factory.getBeanWrapperFor(source) // + var result = factory.getBeanWrapperFor(source) // .flatMap(AuditableBeanWrapper::getLastModifiedDate); assertThat(result).hasValue(now); diff --git a/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java b/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java index 8121878c6..2f8709513 100755 --- a/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java @@ -59,7 +59,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests { @Test void delegatesToMarkCreatedForNewEntity() { - AuditedUser user = new AuditedUser(); + var user = new AuditedUser(); getHandler().markAudited(user); @@ -70,7 +70,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests { @Test void delegatesToMarkModifiedForNonNewEntity() { - AuditedUser user = new AuditedUser(); + var user = new AuditedUser(); user.id = 1L; getHandler().markAudited(user); @@ -92,7 +92,7 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests { @Test // DATACMNS-638 void handlingOptionalIsANoOp() { - IsNewAwareAuditingHandler handler = getHandler(); + var handler = getHandler(); handler.markAudited(Optional.empty()); handler.markCreated(Optional.empty()); @@ -107,10 +107,10 @@ class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests { @Test // DATACMNS-1780 void singleContextAllowsInFlightMetadataCreationForUnknownPersistentEntities() { - SampleMappingContext mappingContext = spy(new SampleMappingContext()); + var mappingContext = spy(new SampleMappingContext()); mappingContext.afterPropertiesSet(); - AuditedUser user = new AuditedUser(); + var user = new AuditedUser(); user.id = 1L; new IsNewAwareAuditingHandler(PersistentEntities.of(mappingContext)).markAudited(user); diff --git a/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java b/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java index e857080bd..0be3b85b0 100755 --- a/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java @@ -59,21 +59,21 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @BeforeEach void setUp() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(Sample.class); context.getPersistentEntity(SampleWithInstant.class); context.getPersistentEntity(WithEmbedded.class); - PersistentEntities entities = PersistentEntities.of(context); + var entities = PersistentEntities.of(context); factory = new MappingAuditableBeanWrapperFactory(entities); } @Test // DATACMNS-365 void discoversAuditingPropertyOnField() { - Sample sample = new Sample(); + var sample = new Sample(); - Optional> wrapper = factory.getBeanWrapperFor(sample); + var wrapper = factory.getBeanWrapperFor(sample); assertThat(wrapper).hasValueSatisfying(it -> { @@ -85,9 +85,9 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-365 void discoversAuditingPropertyOnAccessor() { - Sample sample = new Sample(); + var sample = new Sample(); - Optional> wrapper = factory.getBeanWrapperFor(sample); + var wrapper = factory.getBeanWrapperFor(sample); assertThat(wrapper).hasValueSatisfying(it -> { @@ -99,9 +99,9 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-365 void settingInavailablePropertyIsNoop() { - Sample sample = new Sample(); + var sample = new Sample(); - Optional> wrapper = factory.getBeanWrapperFor(sample); + var wrapper = factory.getBeanWrapperFor(sample); assertThat(wrapper).hasValueSatisfying(it -> it.setLastModifiedDate(Instant.now())); } @@ -121,7 +121,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-638 void returnsLastModificationCalendarAsCalendar() { - Date reference = new Date(); + var reference = new Date(); Calendar calendar = new GregorianCalendar(); calendar.setTime(reference); @@ -133,7 +133,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-638 void returnsLastModificationDateAsCalendar() { - Date reference = new Date(); + var reference = new Date(); assertLastModificationDate(reference, // Jsr310Converters.DateToLocalDateTimeConverter.INSTANCE.convert(reference)); @@ -142,7 +142,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-638, DATACMNS-43 void returnsLastModificationJsr310DateTimeAsCalendar() { - LocalDateTime reference = LocalDateTime.now(); + var reference = LocalDateTime.now(); assertLastModificationDate(reference, reference); } @@ -150,10 +150,10 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1109 void exposesInstantAsModificationDate() { - SampleWithInstant sample = new SampleWithInstant(); + var sample = new SampleWithInstant(); sample.modified = Instant.now(); - Optional result = factory.getBeanWrapperFor(sample) // + var result = factory.getBeanWrapperFor(sample) // .flatMap(it -> it.getLastModifiedDate()); assertThat(result).hasValue(sample.modified); @@ -170,22 +170,22 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1274 void writesNestedAuditingData() { - WithEmbedded target = new WithEmbedded(); + var target = new WithEmbedded(); target.embedded = new Embedded(); - Optional> wrapper = factory.getBeanWrapperFor(target); + var wrapper = factory.getBeanWrapperFor(target); assertThat(wrapper).hasValueSatisfying(it -> { - Instant now = Instant.now(); - String user = "user"; + var now = Instant.now(); + var user = "user"; it.setCreatedBy(user); it.setLastModifiedBy(user); it.setLastModifiedDate(now); it.setCreatedDate(now); - Embedded embedded = it.getBean().embedded; + var embedded = it.getBean().embedded; assertThat(embedded.created).isEqualTo(now); assertThat(embedded.creator).isEqualTo(user); @@ -199,7 +199,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1461, DATACMNS-1671 void skipsNullIntermediatesWhenSettingProperties() { - WithEmbedded withEmbedded = new WithEmbedded(); + var withEmbedded = new WithEmbedded(); assertThat(factory.getBeanWrapperFor(withEmbedded)).hasValueSatisfying(it -> { assertThatCode(() -> it.setCreatedBy("user")).doesNotThrowAnyException(); @@ -210,7 +210,7 @@ class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-1438 void skipsCollectionPropertiesWhenSettingProperties() { - WithEmbedded withEmbedded = new WithEmbedded(); + var withEmbedded = new WithEmbedded(); withEmbedded.embedded = new Embedded(); withEmbedded.embeddeds = Arrays.asList(new Embedded()); withEmbedded.embeddedMap = new HashMap<>(); @@ -218,15 +218,15 @@ class MappingAuditableBeanWrapperFactoryUnitTests { assertThat(factory.getBeanWrapperFor(withEmbedded)).hasValueSatisfying(it -> { - String user = "user"; - Instant now = Instant.now(); + var user = "user"; + var now = Instant.now(); it.setCreatedBy(user); it.setLastModifiedBy(user); it.setLastModifiedDate(now); it.setCreatedDate(now); - Embedded embedded = withEmbedded.embeddeds.iterator().next(); + var embedded = withEmbedded.embeddeds.iterator().next(); assertThat(embedded.created).isNull(); assertThat(embedded.creator).isNull(); @@ -244,10 +244,10 @@ class MappingAuditableBeanWrapperFactoryUnitTests { private void assertLastModificationDate(Object source, TemporalAccessor expected) { - Sample sample = new Sample(); + var sample = new Sample(); sample.lastModifiedDate = source; - Optional result = factory.getBeanWrapperFor(sample) // + var result = factory.getBeanWrapperFor(sample) // .flatMap(it -> it.getLastModifiedDate()); assertThat(result).hasValueSatisfying(ta -> compareTemporalAccessors(expected, ta)); @@ -255,8 +255,8 @@ class MappingAuditableBeanWrapperFactoryUnitTests { private static AbstractLongAssert compareTemporalAccessors(TemporalAccessor expected, TemporalAccessor actual) { - long actualSeconds = getInstantSeconds(actual); - long expectedSeconds = getInstantSeconds(expected); + var actualSeconds = getInstantSeconds(actual); + var expectedSeconds = getInstantSeconds(expected); return assertThat(actualSeconds) // .describedAs("Difference is %s", actualSeconds - expectedSeconds) // diff --git a/src/test/java/org/springframework/data/auditing/ReactiveAuditingHandlerUnitTests.java b/src/test/java/org/springframework/data/auditing/ReactiveAuditingHandlerUnitTests.java index 4856d9ba1..583a74ea4 100755 --- a/src/test/java/org/springframework/data/auditing/ReactiveAuditingHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/ReactiveAuditingHandlerUnitTests.java @@ -50,7 +50,7 @@ class ReactiveAuditingHandlerUnitTests { @BeforeEach void setUp() { - SampleMappingContext sampleMappingContext = new SampleMappingContext(); + var sampleMappingContext = new SampleMappingContext(); sampleMappingContext.getRequiredPersistentEntity(Immutable.class); // initialize to ensure we're using mapping // metadata instead of plain reflection @@ -64,7 +64,7 @@ class ReactiveAuditingHandlerUnitTests { @Test // DATACMNS-1231 void markCreatedShouldSetDatesIfAuditorNotSet() { - Immutable immutable = new Immutable(null, null, null, null); + var immutable = new Immutable(null, null, null, null); handler.markCreated(immutable).as(StepVerifier::create).consumeNextWith(actual -> { @@ -81,7 +81,7 @@ class ReactiveAuditingHandlerUnitTests { @Test // DATACMNS-1231 void markModifiedSetsModifiedFields() { - AuditedUser audited = new AuditedUser(); + var audited = new AuditedUser(); audited.id = 1L; handler.setAuditorAware(auditorAware); diff --git a/src/test/java/org/springframework/data/auditing/ReflectionAuditingBeanWrapperUnitTests.java b/src/test/java/org/springframework/data/auditing/ReflectionAuditingBeanWrapperUnitTests.java index f22ec0a31..36c446096 100755 --- a/src/test/java/org/springframework/data/auditing/ReflectionAuditingBeanWrapperUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/ReflectionAuditingBeanWrapperUnitTests.java @@ -74,7 +74,7 @@ class ReflectionAuditingBeanWrapperUnitTests { @LastModifiedDate long modifiedDate; } - Sample sample = new Sample(); + var sample = new Sample(); AuditableBeanWrapper wrapper = new ReflectionAuditingBeanWrapper<>(conversionService, sample); wrapper.setCreatedDate(time); @@ -87,7 +87,7 @@ class ReflectionAuditingBeanWrapperUnitTests { @Test void setsAuditorFieldsCorrectly() { - Object object = new Object(); + var object = new Object(); wrapper.setCreatedBy(object); assertThat(user.createdBy).isEqualTo(object); diff --git a/src/test/java/org/springframework/data/config/TypeFilterParserUnitTests.java b/src/test/java/org/springframework/data/config/TypeFilterParserUnitTests.java index 8216141b9..6717286b8 100755 --- a/src/test/java/org/springframework/data/config/TypeFilterParserUnitTests.java +++ b/src/test/java/org/springframework/data/config/TypeFilterParserUnitTests.java @@ -63,7 +63,7 @@ class TypeFilterParserUnitTests { Resource sampleXmlFile = new ClassPathResource("type-filter-test.xml", TypeFilterParserUnitTests.class); - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + var factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); documentElement = factory.newDocumentBuilder().parse(sampleXmlFile.getInputStream()).getDocumentElement(); @@ -72,7 +72,7 @@ class TypeFilterParserUnitTests { @Test void parsesIncludesCorrectly() throws Exception { - Element element = DomUtils.getChildElementByTagName(documentElement, "firstSample"); + var element = DomUtils.getChildElementByTagName(documentElement, "firstSample"); Iterable filters = parser.parseTypeFilters(element, Type.INCLUDE); assertThat(filters).hasAtLeastOneElementOfType(AssignableTypeFilter.class); @@ -81,7 +81,7 @@ class TypeFilterParserUnitTests { @Test void parsesExcludesCorrectly() throws Exception { - Element element = DomUtils.getChildElementByTagName(documentElement, "secondSample"); + var element = DomUtils.getChildElementByTagName(documentElement, "secondSample"); Iterable filters = parser.parseTypeFilters(element, Type.EXCLUDE); assertThat(filters).hasAtLeastOneElementOfType(AssignableTypeFilter.class); diff --git a/src/test/java/org/springframework/data/convert/ConverterBuilderUnitTests.java b/src/test/java/org/springframework/data/convert/ConverterBuilderUnitTests.java index 75620cec7..bd80b0b54 100644 --- a/src/test/java/org/springframework/data/convert/ConverterBuilderUnitTests.java +++ b/src/test/java/org/springframework/data/convert/ConverterBuilderUnitTests.java @@ -19,12 +19,10 @@ import static org.assertj.core.api.Assertions.*; import org.junit.jupiter.api.Test; import org.mockito.internal.util.Supplier; + import org.springframework.core.convert.TypeDescriptor; import org.springframework.core.convert.converter.GenericConverter; import org.springframework.core.convert.converter.GenericConverter.ConvertiblePair; -import org.springframework.data.convert.ConverterBuilder.ConverterAware; -import org.springframework.data.convert.ConverterBuilder.ReadingConverterBuilder; -import org.springframework.data.convert.ConverterBuilder.WritingConverterBuilder; /** * Unit tests for {@link DefaultConverterBuilder}. @@ -38,7 +36,7 @@ class ConverterBuilderUnitTests { @Test // DATACMNS-1034 void setsUpBidirectionalConvertersFromReading() { - ConverterAware builder = ConverterBuilder.reading(String.class, Long.class, it -> Long.valueOf(it)) + var builder = ConverterBuilder.reading(String.class, Long.class, it -> Long.valueOf(it)) .andWriting(Object::toString); assertConverter(builder.getReadingConverter(), "1", 1L); @@ -48,7 +46,7 @@ class ConverterBuilderUnitTests { @Test // DATACMNS-1034 void setsUpBidirectionalConvertersFromWriting() { - ConverterAware builder = ConverterBuilder.writing(Long.class, String.class, Object::toString) + var builder = ConverterBuilder.writing(Long.class, String.class, Object::toString) .andReading(it -> Long.valueOf(it)); assertConverter(builder.getReadingConverter(), "1", 1L); @@ -58,7 +56,7 @@ class ConverterBuilderUnitTests { @Test // DATACMNS-1034 void setsUpReadingConverter() { - ReadingConverterBuilder builder = ConverterBuilder.reading(String.class, Long.class, + var builder = ConverterBuilder.reading(String.class, Long.class, string -> Long.valueOf(string)); assertConverter(builder.getReadingConverter(), "1", 1L); @@ -68,7 +66,7 @@ class ConverterBuilderUnitTests { @Test // DATACMNS-1034 void setsUpWritingConverter() { - WritingConverterBuilder builder = ConverterBuilder.writing(Long.class, String.class, + var builder = ConverterBuilder.writing(Long.class, String.class, Object::toString); assertConverter(builder.getWritingConverter(), 1L, "1"); diff --git a/src/test/java/org/springframework/data/convert/CustomConversionsUnitTests.java b/src/test/java/org/springframework/data/convert/CustomConversionsUnitTests.java index a19f46cc5..bf05b0704 100644 --- a/src/test/java/org/springframework/data/convert/CustomConversionsUnitTests.java +++ b/src/test/java/org/springframework/data/convert/CustomConversionsUnitTests.java @@ -38,7 +38,6 @@ import org.springframework.core.convert.converter.GenericConverter.ConvertiblePa import org.springframework.core.convert.support.ConfigurableConversionService; import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.core.convert.support.GenericConversionService; -import org.springframework.data.convert.ConverterBuilder.ConverterAware; import org.springframework.data.convert.CustomConversions.ConverterConfiguration; import org.springframework.data.convert.CustomConversions.StoreConversions; import org.springframework.data.convert.Jsr310Converters.LocalDateTimeToDateConverter; @@ -67,7 +66,7 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1035 void findsBasicReadAndWriteConversions() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(FormatToStringConverter.INSTANCE, StringToFormatConverter.INSTANCE)); assertThat(conversions.getCustomWriteTarget(Format.class)).hasValue(String.class); @@ -80,7 +79,7 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1035 void considersSubtypesCorrectly() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(NumberToStringConverter.INSTANCE, StringToNumberConverter.INSTANCE)); assertThat(conversions.getCustomWriteTarget(Long.class)).hasValue(String.class); @@ -90,7 +89,7 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1101 void considersSubtypeCachingCorrectly() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(NumberToStringConverter.INSTANCE, StringToNumberConverter.INSTANCE)); assertThat(conversions.getCustomWriteTarget(Long.class, Object.class)).isEmpty(); @@ -103,7 +102,7 @@ class CustomConversionsUnitTests { GenericConversionService conversionService = new DefaultConversionService(); - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(StringToFormatConverter.INSTANCE)); conversions.registerConvertersIn(conversionService); @@ -113,7 +112,7 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-259, DATACMNS-1035 void doesNotConsiderTypeSimpleIfOnlyReadConverterIsRegistered() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(StringToFormatConverter.INSTANCE)); assertThat(conversions.isSimpleType(Format.class)).isFalse(); } @@ -121,7 +120,7 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-298, DATACMNS-1035 void discoversConvertersForSubtypesOfMongoTypes() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(StringToIntegerConverter.INSTANCE)); assertThat(conversions.hasCustomReadTarget(String.class, Integer.class)).isTrue(); assertThat(conversions.hasCustomWriteTarget(String.class, Integer.class)).isTrue(); @@ -130,7 +129,7 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-1001, DATACMNS-1035 void shouldSelectPropertCustomWriteTargetForCglibProxiedType() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(FormatToStringConverter.INSTANCE)); assertThat(conversions.getCustomWriteTarget(createProxyTypeFor(Format.class))).hasValue(String.class); } @@ -138,7 +137,7 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-1001, DATACMNS-1035 void shouldSelectPropertCustomReadTargetForCglibProxiedType() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, + var conversions = new CustomConversions(StoreConversions.NONE, Arrays.asList(CustomTypeToStringConverter.INSTANCE)); assertThat(conversions.hasCustomReadTarget(createProxyTypeFor(CustomType.class), String.class)).isTrue(); } @@ -146,7 +145,7 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-1131, DATACMNS-1035 void registersConvertersForJsr310() { - CustomConversions customConversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); + var customConversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); assertThat(customConversions.hasCustomWriteTarget(java.time.LocalDateTime.class)).isTrue(); } @@ -154,9 +153,9 @@ class CustomConversionsUnitTests { @Test // DATAMONGO-1302, DATACMNS-1035 void registersConverterFactoryCorrectly() { - StoreConversions conversions = StoreConversions.of(new SimpleTypeHolder(Collections.singleton(Format.class), true)); + var conversions = StoreConversions.of(new SimpleTypeHolder(Collections.singleton(Format.class), true)); - CustomConversions customConversions = new CustomConversions(conversions, + var customConversions = new CustomConversions(conversions, Collections.singletonList(new FormatConverterFactory())); assertThat(customConversions.getCustomWriteTarget(String.class, SimpleDateFormat.class)).isPresent(); @@ -165,11 +164,11 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1034 void registersConverterFromConverterAware() { - ConverterAware converters = ConverterBuilder // + var converters = ConverterBuilder // .reading(Locale.class, CustomType.class, left -> new CustomType()) // .andWriting(right -> Locale.GERMAN); - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.singletonList(converters)); + var conversions = new CustomConversions(StoreConversions.NONE, Collections.singletonList(converters)); assertThat(conversions.hasCustomWriteTarget(CustomType.class)).isTrue(); assertThat(conversions.hasCustomReadTarget(Locale.class, CustomType.class)).isTrue(); @@ -184,7 +183,7 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1615 void skipsUnsupportedDefaultWritingConverter() { - ConverterRegistry registry = mock(ConverterRegistry.class); + var registry = mock(ConverterRegistry.class); new CustomConversions(StoreConversions.of(DATE_EXCLUDING_SIMPLE_TYPE_HOLDER), Collections.emptyList()) .registerConvertersIn(registry); @@ -195,11 +194,11 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1665 void registersStoreConverter() { - ConverterRegistry registry = mock(ConverterRegistry.class); + var registry = mock(ConverterRegistry.class); - SimpleTypeHolder holder = new SimpleTypeHolder(Collections.emptySet(), true); + var holder = new SimpleTypeHolder(Collections.emptySet(), true); - CustomConversions conversions = new CustomConversions(StoreConversions.of(holder, PointToMapConverter.INSTANCE), + var conversions = new CustomConversions(StoreConversions.of(holder, PointToMapConverter.INSTANCE), Collections.emptyList()); conversions.registerConvertersIn(registry); @@ -210,7 +209,7 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1615 void doesNotSkipUnsupportedUserConverter() { - ConverterRegistry registry = mock(ConverterRegistry.class); + var registry = mock(ConverterRegistry.class); new CustomConversions(StoreConversions.of(DATE_EXCLUDING_SIMPLE_TYPE_HOLDER), Collections.singletonList(Jsr310Converters.LocalDateTimeToInstantConverter.INSTANCE)) @@ -222,9 +221,9 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1615 void skipsConverterBasedOnConfiguration() { - ConverterRegistry registry = mock(ConverterRegistry.class); + var registry = mock(ConverterRegistry.class); - ConverterConfiguration config = new ConverterConfiguration(StoreConversions.NONE, Collections.emptyList(), + var config = new ConverterConfiguration(StoreConversions.NONE, Collections.emptyList(), Predicate. isEqual(new ConvertiblePair(java.time.LocalDateTime.class, Date.class)).negate()); new CustomConversions(config).registerConvertersIn(registry); @@ -234,9 +233,9 @@ class CustomConversionsUnitTests { @Test // DATACMNS-1615 void doesNotSkipUserConverterConverterEvenWhenConfigurationWouldNotAllowIt() { - ConverterRegistry registry = mock(ConverterRegistry.class); + var registry = mock(ConverterRegistry.class); - ConverterConfiguration config = new ConverterConfiguration(StoreConversions.NONE, + var config = new ConverterConfiguration(StoreConversions.NONE, Collections.singletonList(LocalDateTimeToDateConverter.INSTANCE), Predicate. isEqual(new ConvertiblePair(java.time.LocalDateTime.class, Date.class)).negate()); new CustomConversions(config).registerConvertersIn(registry); @@ -247,7 +246,7 @@ class CustomConversionsUnitTests { @Test // GH-2315 void addsAssociationConvertersByDefault() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); + var conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); assertThat(conversions.hasCustomWriteTarget(Association.class)).isTrue(); assertThat(conversions.hasCustomReadTarget(Object.class, Association.class)).isTrue(); @@ -256,7 +255,7 @@ class CustomConversionsUnitTests { @Test // GH-2315 void addsIdentifierConvertersByDefault() { - CustomConversions conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); + var conversions = new CustomConversions(StoreConversions.NONE, Collections.emptyList()); assertThat(conversions.hasCustomWriteTarget(Identifier.class)).isTrue(); assertThat(conversions.hasCustomReadTarget(String.class, Identifier.class)).isTrue(); @@ -264,7 +263,7 @@ class CustomConversionsUnitTests { private static Class createProxyTypeFor(Class type) { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setProxyTargetClass(true); factory.setTargetClass(type); diff --git a/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java b/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java index 9a9db0bc0..5c26af0a7 100755 --- a/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java +++ b/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java @@ -68,7 +68,7 @@ class DefaultTypeMapperUnitTests { @Test void cachesResolvedTypeInformation() { - TypeInformation information = typeMapper.readType(source); + var information = typeMapper.readType(source); assertThat(information).isEqualTo(STRING_TYPE_INFO); verify(mapper, times(1)).resolveTypeFrom(ALIAS); @@ -79,7 +79,7 @@ class DefaultTypeMapperUnitTests { @Test // DATACMNS-349 void returnsTypeAliasForInformation() { - Alias alias = Alias.of("alias"); + var alias = Alias.of("alias"); doReturn(alias).when(mapper).createAliasFor(STRING_TYPE_INFO); assertThat(this.typeMapper.getAliasFor(STRING_TYPE_INFO)).isEqualTo(alias); @@ -88,14 +88,14 @@ class DefaultTypeMapperUnitTests { @Test // DATACMNS-783 void specializesRawSourceTypeUsingGenericContext() { - ClassTypeInformation root = ClassTypeInformation.from(Foo.class); - TypeInformation propertyType = root.getProperty("abstractBar"); + var root = ClassTypeInformation.from(Foo.class); + var propertyType = root.getProperty("abstractBar"); TypeInformation barType = ClassTypeInformation.from(Bar.class); doReturn(Alias.of(barType)).when(accessor).readAliasFrom(source); doReturn(barType).when(mapper).resolveTypeFrom(Alias.of(barType)); - TypeInformation result = typeMapper.readType(source, propertyType); + var result = typeMapper.readType(source, propertyType); assertThat(result).isInstanceOf(TypeInformation.class); diff --git a/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java b/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java index ee0ae1bfe..da50c0e35 100644 --- a/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java @@ -30,9 +30,7 @@ import java.time.temporal.Temporal; import java.util.Arrays; import java.util.Date; import java.util.HashMap; -import java.util.List; import java.util.Map; -import java.util.Map.Entry; import java.util.function.Predicate; import java.util.stream.Stream; @@ -41,7 +39,6 @@ import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.MethodSource; import org.springframework.core.convert.ConversionService; -import org.springframework.core.convert.converter.Converter; import org.springframework.core.convert.support.GenericConversionService; /** @@ -59,9 +56,9 @@ class Jsr310ConvertersUnitTests { static { - GenericConversionService conversionService = new GenericConversionService(); + var conversionService = new GenericConversionService(); - for (Converter converter : Jsr310Converters.getConvertersToRegister()) { + for (var converter : Jsr310Converters.getConvertersToRegister()) { conversionService.addConverter(converter); } @@ -82,7 +79,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-606, DATACMNS-1091 void convertsLocalDateTimeToDate() { - LocalDateTime now = LocalDateTime.now(); + var now = LocalDateTime.now(); assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_FULL)); } @@ -96,7 +93,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-606, DATACMNS-1091 void convertsLocalDateToDate() { - LocalDate now = LocalDate.now(); + var now = LocalDate.now(); assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_DATE)); } @@ -110,7 +107,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-606, DATACMNS-1091 void convertsLocalTimeToDate() { - LocalTime now = LocalTime.now(); + var now = LocalTime.now(); assertThat(CONVERSION_SERVICE.convert(now, Date.class)).matches(formatted(now, FORMAT_TIME)); } @@ -118,7 +115,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-623 void convertsDateToInstant() { - Date now = new Date(); + var now = new Date(); assertThat(CONVERSION_SERVICE.convert(now, Instant.class)).isEqualTo(now.toInstant()); } @@ -126,7 +123,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-623 void convertsInstantToDate() { - Date now = new Date(); + var now = new Date(); assertThat(CONVERSION_SERVICE.convert(now.toInstant(), Date.class)).isEqualTo(now); } @@ -137,7 +134,7 @@ class Jsr310ConvertersUnitTests { ids.put("Europe/Berlin", ZoneId.of("Europe/Berlin")); ids.put("+06:00", ZoneId.of("+06:00")); - for (Entry entry : ids.entrySet()) { + for (var entry : ids.entrySet()) { assertThat(CONVERSION_SERVICE.convert(entry.getValue(), String.class)).isEqualTo(entry.getKey()); assertThat(CONVERSION_SERVICE.convert(entry.getKey(), ZoneId.class)).isEqualTo(entry.getValue()); } @@ -147,10 +144,10 @@ class Jsr310ConvertersUnitTests { // DATACMNS-1243 void convertsLocalDateTimeToInstantAndBack() { - LocalDateTime dateTime = LocalDateTime.now(); + var dateTime = LocalDateTime.now(); - Instant instant = CONVERSION_SERVICE.convert(dateTime, Instant.class); - LocalDateTime convertedDateTime = CONVERSION_SERVICE.convert(dateTime, LocalDateTime.class); + var instant = CONVERSION_SERVICE.convert(dateTime, Instant.class); + var convertedDateTime = CONVERSION_SERVICE.convert(dateTime, LocalDateTime.class); assertThat(convertedDateTime).isEqualTo(dateTime); } @@ -159,7 +156,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-1440 void convertsIsoFormattedStringToLocalDate() { - LocalDate date = LocalDate.now(); + var date = LocalDate.now(); assertThat(CONVERSION_SERVICE.convert(date.toString(), LocalDate.class)).isEqualTo(date); } @@ -168,7 +165,7 @@ class Jsr310ConvertersUnitTests { // DATACMNS-1440 void convertsIsoFormattedStringToLocalDateTime() { - LocalDateTime date = LocalDateTime.now(); + var date = LocalDateTime.now(); assertThat(CONVERSION_SERVICE.convert(date.toString(), LocalDateTime.class)).isEqualTo(date); } @@ -177,20 +174,20 @@ class Jsr310ConvertersUnitTests { // DATACMNS-1440 void convertsIsoFormattedStringToInstant() { - Instant date = Instant.now(); + var date = Instant.now(); assertThat(CONVERSION_SERVICE.convert(date.toString(), Instant.class)).isEqualTo(date); } private static Predicate formatted(Temporal expected, String format) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format); + var formatter = DateTimeFormatter.ofPattern(format); return d -> format(d, format).equals(formatter.format(expected)); } private static Predicate formatted(Date expected, String format) { - DateTimeFormatter formatter = DateTimeFormatter.ofPattern(format); + var formatter = DateTimeFormatter.ofPattern(format); return d -> formatter.format(d).equals(format(expected, format)); } @@ -200,7 +197,7 @@ class Jsr310ConvertersUnitTests { static Stream parameters() { - List duration = Arrays.asList(new Object[][] { // + var duration = Arrays.asList(new Object[][] { // { "PT240H", Duration.ofDays(10) }, // { "PT2H", Duration.ofHours(2) }, // { "PT3M", Duration.ofMinutes(3) }, // @@ -209,7 +206,7 @@ class Jsr310ConvertersUnitTests { { "PT0.000000006S", Duration.ofNanos(6) } // }); - List period = Arrays.asList(new Object[][] { // + var period = Arrays.asList(new Object[][] { // { "P2D", Period.ofDays(2) }, // { "P21D", Period.ofWeeks(3) }, // { "P4M", Period.ofMonths(4) }, // diff --git a/src/test/java/org/springframework/data/convert/MappingContextTypeInformationMapperUnitTests.java b/src/test/java/org/springframework/data/convert/MappingContextTypeInformationMapperUnitTests.java index e480c4f50..116f23157 100755 --- a/src/test/java/org/springframework/data/convert/MappingContextTypeInformationMapperUnitTests.java +++ b/src/test/java/org/springframework/data/convert/MappingContextTypeInformationMapperUnitTests.java @@ -64,7 +64,7 @@ class MappingContextTypeInformationMapperUnitTests { @Test void extractsAliasForUnknownType() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); mappingContext.initialize(); mapper = new MappingContextTypeInformationMapper(mappingContext); @@ -75,7 +75,7 @@ class MappingContextTypeInformationMapperUnitTests { @Test void doesNotReturnTypeAliasForSimpleType() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); mappingContext.initialize(); mapper = new MappingContextTypeInformationMapper(mappingContext); @@ -85,7 +85,7 @@ class MappingContextTypeInformationMapperUnitTests { @Test void detectsTypeForUnknownEntity() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); mappingContext.initialize(); mapper = new MappingContextTypeInformationMapper(mappingContext); @@ -101,9 +101,9 @@ class MappingContextTypeInformationMapperUnitTests { @SuppressWarnings("unchecked") void createsTypeMapperForGenericTypesWithDifferentBindings() { - AnnotatedTypeScanner scanner = new AnnotatedTypeScanner(TypeAlias.class); + var scanner = new AnnotatedTypeScanner(TypeAlias.class); - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.setInitialEntitySet(scanner.findTypes(getClass().getPackage().getName())); context.initialize(); diff --git a/src/test/java/org/springframework/data/convert/SimpleTypeInformationMapperUnitTests.java b/src/test/java/org/springframework/data/convert/SimpleTypeInformationMapperUnitTests.java index e26bec85c..bbfbf6dbc 100755 --- a/src/test/java/org/springframework/data/convert/SimpleTypeInformationMapperUnitTests.java +++ b/src/test/java/org/springframework/data/convert/SimpleTypeInformationMapperUnitTests.java @@ -37,7 +37,7 @@ class SimpleTypeInformationMapperUnitTests { @Test void resolvesTypeByLoadingClass() { - TypeInformation type = mapper.resolveTypeFrom(Alias.of("java.lang.String")); + var type = mapper.resolveTypeFrom(Alias.of("java.lang.String")); TypeInformation expected = ClassTypeInformation.from(String.class); diff --git a/src/test/java/org/springframework/data/domain/AbstractAggregateRootUnitTests.java b/src/test/java/org/springframework/data/domain/AbstractAggregateRootUnitTests.java index 92b3335cb..178ee3b6e 100644 --- a/src/test/java/org/springframework/data/domain/AbstractAggregateRootUnitTests.java +++ b/src/test/java/org/springframework/data/domain/AbstractAggregateRootUnitTests.java @@ -29,9 +29,9 @@ class AbstractAggregateRootUnitTests { @Test // DATACMNS-928 void registersEvent() { - Object event = new Object(); + var event = new Object(); - SampleAggregate aggregate = new SampleAggregate(); + var aggregate = new SampleAggregate(); aggregate.registerEvent(event); assertThat(aggregate.domainEvents()).containsExactly(event); @@ -40,9 +40,9 @@ class AbstractAggregateRootUnitTests { @Test // DATACMNS-928 void clearsEvents() { - Object event = new Object(); + var event = new Object(); - SampleAggregate aggregate = new SampleAggregate(); + var aggregate = new SampleAggregate(); aggregate.registerEvent(event); assertThat(aggregate.domainEvents()).isNotEmpty(); @@ -55,10 +55,10 @@ class AbstractAggregateRootUnitTests { @Test // DATACMNS-928, DATACMNS-1162 void copiesEventsFromExistingAggregate() { - SampleAggregate aggregate = new SampleAggregate(); + var aggregate = new SampleAggregate(); aggregate.registerEvent(new Object()); - SampleAggregate result = new SampleAggregate().andEventsFrom(aggregate); + var result = new SampleAggregate().andEventsFrom(aggregate); assertThat(result.domainEvents()).isEqualTo(aggregate.domainEvents()); } @@ -66,13 +66,13 @@ class AbstractAggregateRootUnitTests { @Test // DATACMNS-928, DATACMNS-1162 void addsEventAndReturnsAggregate() { - Object first = new Object(); - Object second = new Object(); + var first = new Object(); + var second = new Object(); - SampleAggregate aggregate = new SampleAggregate(); + var aggregate = new SampleAggregate(); aggregate.registerEvent(first); - SampleAggregate result = aggregate.andEvent(second); + var result = aggregate.andEvent(second); assertThat(result).isSameAs(aggregate); assertThat(result.domainEvents()).containsExactly(first, second); diff --git a/src/test/java/org/springframework/data/domain/AbstractPageRequestUnitTests.java b/src/test/java/org/springframework/data/domain/AbstractPageRequestUnitTests.java index fffee4069..82ef3480c 100755 --- a/src/test/java/org/springframework/data/domain/AbstractPageRequestUnitTests.java +++ b/src/test/java/org/springframework/data/domain/AbstractPageRequestUnitTests.java @@ -46,7 +46,7 @@ public abstract class AbstractPageRequestUnitTests { assertThat(request.hasPrevious()).isTrue(); assertThat(request.next()).isEqualTo((Pageable) newPageRequest(2, 10)); - Pageable first = request.previousOrFirst(); + var first = request.previousOrFirst(); assertThat(first.hasPrevious()).isFalse(); assertThat(first).isEqualTo(newPageRequest(0, 10)); @@ -57,7 +57,7 @@ public abstract class AbstractPageRequestUnitTests { @Test // DATACMNS-402 void equalsHonoursPageAndSize() { - AbstractPageRequest request = newPageRequest(0, 10); + var request = newPageRequest(0, 10); // Equals itself assertEqualsAndHashcode(request, request); @@ -80,7 +80,7 @@ public abstract class AbstractPageRequestUnitTests { @Test // DATACMNS-1327 void getOffsetShouldNotCauseOverflow() { - AbstractPageRequest request = newPageRequest(Integer.MAX_VALUE, Integer.MAX_VALUE); + var request = newPageRequest(Integer.MAX_VALUE, Integer.MAX_VALUE); assertThat(request.getOffset()).isGreaterThan(Integer.MAX_VALUE); } diff --git a/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java b/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java index 6b1217704..b7dd0ec59 100755 --- a/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java +++ b/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java @@ -125,7 +125,7 @@ class ExampleMatcherUnitTests { void withCreatesNewInstance() { matcher = matching().withIgnorePaths("foo", "bar", "foo"); - ExampleMatcher configuredExampleSpec = matcher.withIgnoreCase(); + var configuredExampleSpec = matcher.withIgnoreCase(); assertThat(matcher).isNotSameAs(configuredExampleSpec); assertThat(matcher.getIgnoredPaths()).hasSize(2); @@ -166,14 +166,14 @@ class ExampleMatcherUnitTests { .withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) // .withMatcher("world", GenericPropertyMatcher::endsWith); - ExampleMatcher sameAsMatcher = matching() // + var sameAsMatcher = matching() // .withIgnorePaths("foo", "bar", "baz") // .withNullHandler(NullHandler.IGNORE) // .withIgnoreCase("ignored-case") // .withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) // .withMatcher("world", GenericPropertyMatcher::endsWith); - ExampleMatcher different = matching() // + var different = matching() // .withIgnorePaths("foo", "bar", "baz") // .withNullHandler(NullHandler.IGNORE) // .withMatcher("hello", GenericPropertyMatchers.contains().ignoreCase()); diff --git a/src/test/java/org/springframework/data/domain/ExampleUnitTests.java b/src/test/java/org/springframework/data/domain/ExampleUnitTests.java index 067885fac..1949887cf 100755 --- a/src/test/java/org/springframework/data/domain/ExampleUnitTests.java +++ b/src/test/java/org/springframework/data/domain/ExampleUnitTests.java @@ -55,10 +55,10 @@ class ExampleUnitTests { @Test // DATACMNS-900 void shouldCompareUsingHashCodeAndEquals() throws Exception { - Example example = Example.of(person, matching().withIgnoreCase("firstname")); - Example sameAsExample = Example.of(person, matching().withIgnoreCase("firstname")); + var example = Example.of(person, matching().withIgnoreCase("firstname")); + var sameAsExample = Example.of(person, matching().withIgnoreCase("firstname")); - Example different = Example.of(person, + var different = Example.of(person, matching().withMatcher("firstname", GenericPropertyMatchers.contains())); assertThat(example.hashCode()).isEqualTo(sameAsExample.hashCode()); diff --git a/src/test/java/org/springframework/data/domain/PageImplUnitTests.java b/src/test/java/org/springframework/data/domain/PageImplUnitTests.java index ead5af807..f3eee0971 100755 --- a/src/test/java/org/springframework/data/domain/PageImplUnitTests.java +++ b/src/test/java/org/springframework/data/domain/PageImplUnitTests.java @@ -35,7 +35,7 @@ class PageImplUnitTests { @Test void assertEqualsForSimpleSetup() { - PageImpl page = new PageImpl<>(Collections.singletonList("Foo")); + var page = new PageImpl(Collections.singletonList("Foo")); assertEqualsAndHashcode(page, page); assertEqualsAndHashcode(page, new PageImpl<>(Collections.singletonList("Foo"))); @@ -45,9 +45,9 @@ class PageImplUnitTests { void assertEqualsForComplexSetup() { Pageable pageable = PageRequest.of(0, 10); - List content = Collections.singletonList("Foo"); + var content = Collections.singletonList("Foo"); - PageImpl page = new PageImpl<>(content, pageable, 100); + var page = new PageImpl(content, pageable, 100); assertEqualsAndHashcode(page, page); assertEqualsAndHashcode(page, new PageImpl<>(content, pageable, 100)); @@ -127,7 +127,7 @@ class PageImplUnitTests { @Test // DATACMNS-635 void transformsPageCorrectly() { - Page transformed = new PageImpl<>(Arrays.asList("foo", "bar"), PageRequest.of(0, 2), 10) + var transformed = new PageImpl<>(Arrays.asList("foo", "bar"), PageRequest.of(0, 2), 10) .map(String::length); assertThat(transformed.getContent()).hasSize(2).contains(3, 3); diff --git a/src/test/java/org/springframework/data/domain/PageRequestUnitTests.java b/src/test/java/org/springframework/data/domain/PageRequestUnitTests.java index a04db4226..413d3f3fa 100755 --- a/src/test/java/org/springframework/data/domain/PageRequestUnitTests.java +++ b/src/test/java/org/springframework/data/domain/PageRequestUnitTests.java @@ -43,7 +43,7 @@ class PageRequestUnitTests extends AbstractPageRequestUnitTests { @Test void equalsRegardsSortCorrectly() { - Sort sort = Sort.by(Direction.DESC, "foo"); + var sort = Sort.by(Direction.DESC, "foo"); AbstractPageRequest request = PageRequest.ofSize(10).withPage(1).withSort(sort); // Equals itself diff --git a/src/test/java/org/springframework/data/domain/RangeUnitTests.java b/src/test/java/org/springframework/data/domain/RangeUnitTests.java index 3cb879bec..efb3a47a0 100755 --- a/src/test/java/org/springframework/data/domain/RangeUnitTests.java +++ b/src/test/java/org/springframework/data/domain/RangeUnitTests.java @@ -39,7 +39,7 @@ class RangeUnitTests { @Test // DATACMNS-651 void excludesLowerBoundIfConfigured() { - Range range = Range.from(Bound.exclusive(10L)).to(Bound.inclusive(20L)); + var range = Range.from(Bound.exclusive(10L)).to(Bound.inclusive(20L)); assertThat(range.contains(10L)).isFalse(); assertThat(range.contains(20L)).isTrue(); @@ -51,7 +51,7 @@ class RangeUnitTests { @Test // DATACMNS-651 void excludesUpperBoundIfConfigured() { - Range range = Range.of(Bound.inclusive(10L), Bound.exclusive(20L)); + var range = Range.of(Bound.inclusive(10L), Bound.exclusive(20L)); assertThat(range.contains(10L)).isTrue(); assertThat(range.contains(20L)).isFalse(); @@ -63,7 +63,7 @@ class RangeUnitTests { @Test // DATACMNS-651, DATACMNS-1050 void handlesOpenUpperBoundCorrectly() { - Range range = Range.of(Bound.inclusive(10L), Bound.unbounded()); + var range = Range.of(Bound.inclusive(10L), Bound.unbounded()); assertThat(range.contains(10L)).isTrue(); assertThat(range.contains(20L)).isTrue(); @@ -78,7 +78,7 @@ class RangeUnitTests { @Test // DATACMNS-651, DATACMNS-1050 void handlesOpenLowerBoundCorrectly() { - Range range = Range.of(Bound.unbounded(), Bound.inclusive(20L)); + var range = Range.of(Bound.unbounded(), Bound.inclusive(20L)); assertThat(range.contains(10L)).isTrue(); assertThat(range.contains(20L)).isTrue(); @@ -92,7 +92,7 @@ class RangeUnitTests { @Test // DATACMNS-1050 void createsInclusiveBoundaryCorrectly() { - Bound bound = Bound.inclusive(10); + var bound = Bound.inclusive(10); assertThat(bound.isInclusive()).isTrue(); assertThat(bound.getValue()).contains(10); @@ -101,7 +101,7 @@ class RangeUnitTests { @Test // DATACMNS-1050 void createsExclusiveBoundaryCorrectly() { - Bound bound = Bound.exclusive(10d); + var bound = Bound.exclusive(10d); assertThat(bound.isInclusive()).isFalse(); assertThat(bound.getValue()).contains(10d); @@ -110,10 +110,10 @@ class RangeUnitTests { @Test // DATACMNS-1050 void createsRangeFromBoundariesCorrectly() { - Bound lower = Bound.inclusive(10L); - Bound upper = Bound.inclusive(20L); + var lower = Bound.inclusive(10L); + var upper = Bound.inclusive(20L); - Range range = Range.of(lower, upper); + var range = Range.of(lower, upper); assertThat(range.contains(9L)).isFalse(); assertThat(range.contains(10L)).isTrue(); @@ -124,7 +124,7 @@ class RangeUnitTests { @Test // DATACMNS-1050 void shouldExclusiveBuildRangeLowerFirst() { - Range range = Range.from(Bound.exclusive(10L)).to(Bound.exclusive(20L)); + var range = Range.from(Bound.exclusive(10L)).to(Bound.exclusive(20L)); assertThat(range.contains(9L)).isFalse(); assertThat(range.contains(10L)).isFalse(); @@ -138,7 +138,7 @@ class RangeUnitTests { @Test // DATACMNS-1050 void shouldBuildRange() { - Range range = Range.from(Bound.inclusive(10L)).to(Bound.inclusive(20L)); + var range = Range.from(Bound.inclusive(10L)).to(Bound.inclusive(20L)); assertThat(range.contains(9L)).isFalse(); assertThat(range.contains(10L)).isTrue(); @@ -162,7 +162,7 @@ class RangeUnitTests { @Test // DATACMNS-1499 void createsOpenRange() { - Range range = Range.open(5L, 10L); + var range = Range.open(5L, 10L); assertThat(range.contains(5L)).isFalse(); assertThat(range.contains(10L)).isFalse(); @@ -171,7 +171,7 @@ class RangeUnitTests { @Test // DATACMNS-1499 void createsClosedRange() { - Range range = Range.closed(5L, 10L); + var range = Range.closed(5L, 10L); assertThat(range.contains(5L)).isTrue(); assertThat(range.contains(10L)).isTrue(); @@ -180,7 +180,7 @@ class RangeUnitTests { @Test // DATACMNS-1499 void createsLeftOpenRange() { - Range range = Range.leftOpen(5L, 10L); + var range = Range.leftOpen(5L, 10L); assertThat(range.contains(5L)).isFalse(); assertThat(range.contains(10L)).isTrue(); @@ -189,7 +189,7 @@ class RangeUnitTests { @Test // DATACMNS-1499 void createsRightOpenRange() { - Range range = Range.rightOpen(5L, 10L); + var range = Range.rightOpen(5L, 10L); assertThat(range.contains(5L)).isTrue(); assertThat(range.contains(10L)).isFalse(); diff --git a/src/test/java/org/springframework/data/domain/SortUnitTests.java b/src/test/java/org/springframework/data/domain/SortUnitTests.java index 7938a1684..fc294c9f7 100755 --- a/src/test/java/org/springframework/data/domain/SortUnitTests.java +++ b/src/test/java/org/springframework/data/domain/SortUnitTests.java @@ -92,14 +92,14 @@ class SortUnitTests { @Test void allowsCombiningSorts() { - Sort sort = Sort.by("foo").and(Sort.by("bar")); + var sort = Sort.by("foo").and(Sort.by("bar")); assertThat(sort).containsExactly(Order.by("foo"), Order.by("bar")); } @Test void handlesAdditionalNullSort() { - Sort sort = Sort.by("foo").and(Sort.unsorted()); + var sort = Sort.by("foo").and(Sort.unsorted()); assertThat(sort).containsExactly(Order.by("foo")); } @@ -127,8 +127,8 @@ class SortUnitTests { @Test // DATACMNS-436 void ordersWithDifferentIgnoreCaseDoNotEqual() { - Order foo = Order.by("foo"); - Order fooIgnoreCase = Order.by("foo").ignoreCase(); + var foo = Order.by("foo"); + var fooIgnoreCase = Order.by("foo").ignoreCase(); assertThat(foo).isNotEqualTo(fooIgnoreCase); assertThat(foo.hashCode()).isNotEqualTo(fooIgnoreCase.hashCode()); @@ -157,8 +157,8 @@ class SortUnitTests { @Test // DATACMNS-908 void createsNewOrderForDifferentProperty() { - Order source = Order.desc("foo").nullsFirst().ignoreCase(); - Order result = source.withProperty("bar"); + var source = Order.desc("foo").nullsFirst().ignoreCase(); + var result = source.withProperty("bar"); assertThat(result.getProperty()).isEqualTo("bar"); assertThat(result.getDirection()).isEqualTo(source.getDirection()); diff --git a/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java b/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java index 6839cf5b9..249946892 100755 --- a/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java +++ b/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java @@ -69,7 +69,7 @@ class SpringDataJaxbUnitTests { @BeforeEach void setUp() throws Exception { - JAXBContext context = JAXBContext.newInstance("org.springframework.data.domain.jaxb"); + var context = JAXBContext.newInstance("org.springframework.data.domain.jaxb"); marshaller = context.createMarshaller(); marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); @@ -80,8 +80,8 @@ class SpringDataJaxbUnitTests { @Test void usesCustomTypeAdapterForPageRequests() throws Exception { - StringWriter writer = new StringWriter(); - Wrapper wrapper = new Wrapper(); + var writer = new StringWriter(); + var wrapper = new Wrapper(); wrapper.pageable = pageable; wrapper.sort = sort; wrapper.pageableWithoutSort = PageRequest.of(10, 20); @@ -93,7 +93,7 @@ class SpringDataJaxbUnitTests { @Test void readsPageRequest() throws Exception { - Object result = unmarshaller.unmarshal(resource.getFile()); + var result = unmarshaller.unmarshal(resource.getFile()); assertThat(result).isInstanceOf(Wrapper.class); assertThat(((Wrapper) result).pageable).isEqualTo(pageable); @@ -103,8 +103,8 @@ class SpringDataJaxbUnitTests { @Test void writesPlainPage() throws Exception { - PageWrapper wrapper = new PageWrapper(); - Content content = new Content(); + var wrapper = new PageWrapper(); + var content = new Content(); content.name = "Foo"; wrapper.page = new PageImpl<>(Collections.singletonList(content)); wrapper.pageWithLinks = new PageImpl<>(Collections.singletonList(content)); @@ -116,8 +116,8 @@ class SpringDataJaxbUnitTests { try { - Scanner scanner = new Scanner(resource.getInputStream()); - StringBuilder builder = new StringBuilder(); + var scanner = new Scanner(resource.getInputStream()); + var builder = new StringBuilder(); while (scanner.hasNextLine()) { builder.append(scanner.nextLine()).append("\n"); diff --git a/src/test/java/org/springframework/data/geo/BoxUnitTests.java b/src/test/java/org/springframework/data/geo/BoxUnitTests.java index df73420e4..a5be65861 100755 --- a/src/test/java/org/springframework/data/geo/BoxUnitTests.java +++ b/src/test/java/org/springframework/data/geo/BoxUnitTests.java @@ -56,7 +56,7 @@ class BoxUnitTests { @Test // DATACMNS-482 void testSerialization() { - Box serialized = (Box) SerializationUtils.deserialize(SerializationUtils.serialize(first)); + var serialized = (Box) SerializationUtils.deserialize(SerializationUtils.serialize(first)); assertThat(serialized).isEqualTo(first); } } diff --git a/src/test/java/org/springframework/data/geo/CircleUnitTests.java b/src/test/java/org/springframework/data/geo/CircleUnitTests.java index 1a1e56dd2..b8f64ab3c 100755 --- a/src/test/java/org/springframework/data/geo/CircleUnitTests.java +++ b/src/test/java/org/springframework/data/geo/CircleUnitTests.java @@ -41,8 +41,8 @@ class CircleUnitTests { @Test // DATACMNS-437 void considersTwoCirclesEqualCorrectly() { - Circle left = new Circle(1, 1, 1); - Circle right = new Circle(1, 1, 1); + var left = new Circle(1, 1, 1); + var right = new Circle(1, 1, 1); assertThat(left).isEqualTo(right); assertThat(right).isEqualTo(left); @@ -62,9 +62,9 @@ class CircleUnitTests { @Test // DATACMNS-482 void testSerialization() { - Circle circle = new Circle(1, 1, 1); + var circle = new Circle(1, 1, 1); - Circle serialized = (Circle) SerializationUtils.deserialize(SerializationUtils.serialize(circle)); + var serialized = (Circle) SerializationUtils.deserialize(SerializationUtils.serialize(circle)); assertThat(serialized).isEqualTo(circle); } } diff --git a/src/test/java/org/springframework/data/geo/DistanceUnitTests.java b/src/test/java/org/springframework/data/geo/DistanceUnitTests.java index aedd81b50..bfb1b8e25 100755 --- a/src/test/java/org/springframework/data/geo/DistanceUnitTests.java +++ b/src/test/java/org/springframework/data/geo/DistanceUnitTests.java @@ -20,7 +20,7 @@ import static org.springframework.data.geo.Metrics.*; import org.assertj.core.data.Offset; import org.junit.jupiter.api.Test; -import org.springframework.data.domain.Range; + import org.springframework.data.domain.Range.Bound; import org.springframework.util.SerializationUtils; @@ -45,8 +45,8 @@ class DistanceUnitTests { @Test // DATACMNS-437 void addsDistancesWithoutExplicitMetric() { - Distance left = new Distance(2.5, KILOMETERS); - Distance right = new Distance(2.5, KILOMETERS); + var left = new Distance(2.5, KILOMETERS); + var right = new Distance(2.5, KILOMETERS); assertThat(left.add(right)).isEqualTo(new Distance(5.0, KILOMETERS)); } @@ -54,8 +54,8 @@ class DistanceUnitTests { @Test // DATACMNS-437 void addsDistancesWithExplicitMetric() { - Distance left = new Distance(2.5, KILOMETERS); - Distance right = new Distance(2.5, KILOMETERS); + var left = new Distance(2.5, KILOMETERS); + var right = new Distance(2.5, KILOMETERS); assertThat(left.add(right, MILES)).isEqualTo(new Distance(3.106856281073925, MILES)); } @@ -109,9 +109,9 @@ class DistanceUnitTests { @Test // DATACMNS-482 void testSerialization() { - Distance dist = new Distance(10, KILOMETERS); + var dist = new Distance(10, KILOMETERS); - Distance serialized = (Distance) SerializationUtils.deserialize(SerializationUtils.serialize(dist)); + var serialized = (Distance) SerializationUtils.deserialize(SerializationUtils.serialize(dist)); assertThat(serialized).isEqualTo(dist); } @@ -123,10 +123,10 @@ class DistanceUnitTests { @Test // DATACMNS-651 void createsARangeCorrectly() { - Distance twoKilometers = new Distance(2, KILOMETERS); - Distance tenKilometers = new Distance(10, KILOMETERS); + var twoKilometers = new Distance(2, KILOMETERS); + var tenKilometers = new Distance(10, KILOMETERS); - Range range = Distance.between(twoKilometers, tenKilometers); + var range = Distance.between(twoKilometers, tenKilometers); assertThat(range).isNotNull(); assertThat(range.getLowerBound()).isEqualTo(Bound.inclusive(twoKilometers)); @@ -136,10 +136,10 @@ class DistanceUnitTests { @Test // DATACMNS-651 void createsARangeFromPiecesCorrectly() { - Distance twoKilometers = new Distance(2, KILOMETERS); - Distance tenKilometers = new Distance(10, KILOMETERS); + var twoKilometers = new Distance(2, KILOMETERS); + var tenKilometers = new Distance(10, KILOMETERS); - Range range = Distance.between(2, KILOMETERS, 10, KILOMETERS); + var range = Distance.between(2, KILOMETERS, 10, KILOMETERS); assertThat(range).isNotNull(); assertThat(range.getLowerBound()).isEqualTo(Bound.inclusive(twoKilometers)); @@ -149,9 +149,9 @@ class DistanceUnitTests { @Test // DATACMNS-651 void implementsComparableCorrectly() { - Distance twoKilometers = new Distance(2, KILOMETERS); - Distance tenKilometers = new Distance(10, KILOMETERS); - Distance tenKilometersInMiles = new Distance(6.21371256214785, MILES); + var twoKilometers = new Distance(2, KILOMETERS); + var tenKilometers = new Distance(10, KILOMETERS); + var tenKilometersInMiles = new Distance(6.21371256214785, MILES); assertThat(tenKilometers.compareTo(tenKilometers)).isEqualTo(0); assertThat(tenKilometers.compareTo(tenKilometersInMiles)).isEqualTo(0); diff --git a/src/test/java/org/springframework/data/geo/GeoModuleIntegrationTests.java b/src/test/java/org/springframework/data/geo/GeoModuleIntegrationTests.java index ce2815c4f..a4fb4e271 100755 --- a/src/test/java/org/springframework/data/geo/GeoModuleIntegrationTests.java +++ b/src/test/java/org/springframework/data/geo/GeoModuleIntegrationTests.java @@ -41,8 +41,8 @@ class GeoModuleIntegrationTests { @Test // DATACMNS-475 void deserializesDistance() throws Exception { - String json = "{\"value\":10.0,\"metric\":\"KILOMETERS\"}"; - Distance reference = new Distance(10.0, Metrics.KILOMETERS); + var json = "{\"value\":10.0,\"metric\":\"KILOMETERS\"}"; + var reference = new Distance(10.0, Metrics.KILOMETERS); assertThat(mapper.readValue(json, Distance.class)).isEqualTo(reference); assertThat(mapper.writeValueAsString(reference)).isEqualTo(json); @@ -51,8 +51,8 @@ class GeoModuleIntegrationTests { @Test // DATACMNS-475 void deserializesPoint() throws Exception { - String json = "{\"x\":10.0,\"y\":20.0}"; - Point reference = new Point(10.0, 20.0); + var json = "{\"x\":10.0,\"y\":20.0}"; + var reference = new Point(10.0, 20.0); assertThat(mapper.readValue(json, Point.class)).isEqualTo(reference); assertThat(mapper.writeValueAsString(reference)).isEqualTo(json); @@ -61,8 +61,8 @@ class GeoModuleIntegrationTests { @Test // DATACMNS-475 void deserializesCircle() throws Exception { - String json = "{\"center\":{\"x\":10.0,\"y\":20.0},\"radius\":{\"value\":10.0,\"metric\":\"KILOMETERS\"}}"; - Circle reference = new Circle(new Point(10.0, 20.0), new Distance(10, Metrics.KILOMETERS)); + var json = "{\"center\":{\"x\":10.0,\"y\":20.0},\"radius\":{\"value\":10.0,\"metric\":\"KILOMETERS\"}}"; + var reference = new Circle(new Point(10.0, 20.0), new Distance(10, Metrics.KILOMETERS)); assertThat(mapper.readValue(json, Circle.class)).isEqualTo(reference); assertThat(mapper.writeValueAsString(reference)).isEqualTo(json); @@ -71,8 +71,8 @@ class GeoModuleIntegrationTests { @Test // DATACMNS-475 void deserializesBox() throws Exception { - String json = "{\"first\":{\"x\":1.0,\"y\":2.0},\"second\":{\"x\":2.0,\"y\":3.0}}"; - Box reference = new Box(new Point(1, 2), new Point(2, 3)); + var json = "{\"first\":{\"x\":1.0,\"y\":2.0},\"second\":{\"x\":2.0,\"y\":3.0}}"; + var reference = new Box(new Point(1, 2), new Point(2, 3)); assertThat(mapper.readValue(json, Box.class)).isEqualTo(reference); assertThat(mapper.writeValueAsString(reference)).isEqualTo(json); @@ -81,8 +81,8 @@ class GeoModuleIntegrationTests { @Test // DATACMNS-475 void deserializesPolygon() throws Exception { - String json = "{\"points\":[{\"x\":1.0,\"y\":2.0},{\"x\":2.0,\"y\":3.0},{\"x\":3.0,\"y\":4.0}]}"; - Polygon reference = new Polygon(new Point(1, 2), new Point(2, 3), new Point(3, 4)); + var json = "{\"points\":[{\"x\":1.0,\"y\":2.0},{\"x\":2.0,\"y\":3.0},{\"x\":3.0,\"y\":4.0}]}"; + var reference = new Polygon(new Point(1, 2), new Point(2, 3), new Point(3, 4)); assertThat(mapper.readValue(json, Polygon.class)).isEqualTo(reference); assertThat(mapper.writeValueAsString(reference)).isEqualTo(json); diff --git a/src/test/java/org/springframework/data/geo/GeoResultUnitTests.java b/src/test/java/org/springframework/data/geo/GeoResultUnitTests.java index 680bfb30d..a2c78b1cf 100755 --- a/src/test/java/org/springframework/data/geo/GeoResultUnitTests.java +++ b/src/test/java/org/springframework/data/geo/GeoResultUnitTests.java @@ -60,10 +60,10 @@ class GeoResultUnitTests { @Test // DATACMNS-482 void testSerialization() { - GeoResult result = new GeoResult<>("test", new Distance(2)); + var result = new GeoResult("test", new Distance(2)); @SuppressWarnings("unchecked") - GeoResult serialized = (GeoResult) SerializationUtils.deserialize(SerializationUtils.serialize(result)); + var serialized = (GeoResult) SerializationUtils.deserialize(SerializationUtils.serialize(result)); assertThat(serialized).isEqualTo(result); } } diff --git a/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java b/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java index ae1906432..c17b080b8 100755 --- a/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java +++ b/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java @@ -35,9 +35,9 @@ class GeoResultsUnitTests { @SuppressWarnings("unchecked") void calculatesAverageForGivenGeoResults() { - GeoResult first = new GeoResult<>(new Object(), new Distance(2)); - GeoResult second = new GeoResult<>(new Object(), new Distance(5)); - GeoResults geoResults = new GeoResults<>(Arrays.asList(first, second)); + var first = new GeoResult(new Object(), new Distance(2)); + var second = new GeoResult(new Object(), new Distance(5)); + var geoResults = new GeoResults(Arrays.asList(first, second)); assertThat(geoResults.getAverageDistance()).isEqualTo(new Distance(3.5)); } @@ -45,11 +45,11 @@ class GeoResultsUnitTests { @Test // DATACMNS-482 void testSerialization() { - GeoResult result = new GeoResult<>("test", new Distance(2)); - GeoResults geoResults = new GeoResults<>(Collections.singletonList(result)); + var result = new GeoResult("test", new Distance(2)); + var geoResults = new GeoResults(Collections.singletonList(result)); @SuppressWarnings("unchecked") - GeoResults serialized = (GeoResults) SerializationUtils + var serialized = (GeoResults) SerializationUtils .deserialize(SerializationUtils.serialize(geoResults)); assertThat(serialized).isEqualTo(geoResults); } diff --git a/src/test/java/org/springframework/data/geo/PointUnitTests.java b/src/test/java/org/springframework/data/geo/PointUnitTests.java index 6e829daf3..aa5d13c69 100755 --- a/src/test/java/org/springframework/data/geo/PointUnitTests.java +++ b/src/test/java/org/springframework/data/geo/PointUnitTests.java @@ -49,9 +49,9 @@ class PointUnitTests { @Test // DATACMNS-482 void testSerialization() { - Point point = new Point(1.5, 1.5); + var point = new Point(1.5, 1.5); - Point serialized = (Point) SerializationUtils.deserialize(SerializationUtils.serialize(point)); + var serialized = (Point) SerializationUtils.deserialize(SerializationUtils.serialize(point)); assertThat(serialized).isEqualTo(point); } } diff --git a/src/test/java/org/springframework/data/geo/PolygonUnitTests.java b/src/test/java/org/springframework/data/geo/PolygonUnitTests.java index 60125275f..16ae89b85 100755 --- a/src/test/java/org/springframework/data/geo/PolygonUnitTests.java +++ b/src/test/java/org/springframework/data/geo/PolygonUnitTests.java @@ -40,7 +40,7 @@ class PolygonUnitTests { @Test // DATACMNS-437 void createsSimplePolygon() { - Polygon polygon = new Polygon(third, second, first); + var polygon = new Polygon(third, second, first); assertThat(polygon).isNotNull(); } @@ -48,8 +48,8 @@ class PolygonUnitTests { @Test // DATACMNS-437 void isEqualForSamePoints() { - Polygon left = new Polygon(third, second, first); - Polygon right = new Polygon(third, second, first); + var left = new Polygon(third, second, first); + var right = new Polygon(third, second, first); assertThat(left).isEqualTo(right); assertThat(right).isEqualTo(left); @@ -65,9 +65,9 @@ class PolygonUnitTests { @Test // DATACMNS-482 void testSerialization() { - Polygon polygon = new Polygon(third, second, first); + var polygon = new Polygon(third, second, first); - Polygon serialized = (Polygon) SerializationUtils.deserialize(SerializationUtils.serialize(polygon)); + var serialized = (Polygon) SerializationUtils.deserialize(SerializationUtils.serialize(polygon)); assertThat(serialized).isEqualTo(polygon); } } diff --git a/src/test/java/org/springframework/data/history/AnnotationRevisionMetadataUnitTests.java b/src/test/java/org/springframework/data/history/AnnotationRevisionMetadataUnitTests.java index 1a1a5be6a..e82beeb69 100644 --- a/src/test/java/org/springframework/data/history/AnnotationRevisionMetadataUnitTests.java +++ b/src/test/java/org/springframework/data/history/AnnotationRevisionMetadataUnitTests.java @@ -41,8 +41,8 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1173 void exposesNoInformationOnEmptyProbe() { - Sample sample = new Sample(); - RevisionMetadata metadata = getMetadata(sample); + var sample = new Sample(); + var metadata = getMetadata(sample); assertThat(metadata.getRevisionNumber()).isEmpty(); @@ -57,10 +57,10 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1173 void exposesRevisionNumber() { - Sample sample = new Sample(); + var sample = new Sample(); sample.revisionNumber = 1L; - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); softly.assertThat(metadata.getRevisionNumber()).hasValue(1L); softly.assertThat(metadata.getRequiredRevisionNumber()).isEqualTo(1L); @@ -71,11 +71,11 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1173 void exposesRevisionDateAndInstantForLocalDateTime() { - Sample sample = new Sample(); + var sample = new Sample(); sample.revisionDate = LocalDateTime.now(); - Instant expectedInstant = sample.revisionDate.atZone(ZoneOffset.systemDefault()).toInstant(); + var expectedInstant = sample.revisionDate.atZone(ZoneOffset.systemDefault()).toInstant(); - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); softly.assertThat(metadata.getRevisionInstant()).hasValue(expectedInstant); softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(expectedInstant); @@ -86,11 +86,11 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1251 void exposesRevisionDateAndInstantForInstant() { - SampleWithInstant sample = new SampleWithInstant(); + var sample = new SampleWithInstant(); sample.revisionInstant = Instant.now(); - LocalDateTime expectedLocalDateTime = LocalDateTime.ofInstant(sample.revisionInstant, ZoneOffset.systemDefault()); + var expectedLocalDateTime = LocalDateTime.ofInstant(sample.revisionInstant, ZoneOffset.systemDefault()); - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); softly.assertThat(metadata.getRevisionInstant()).hasValue(sample.revisionInstant); softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(sample.revisionInstant); @@ -101,13 +101,13 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1290 void exposesRevisionDateAndInstantForLong() { - SampleWithLong sample = new SampleWithLong(); + var sample = new SampleWithLong(); sample.revisionLong = 4711L; - Instant expectedInstant = Instant.ofEpochMilli(sample.revisionLong); - LocalDateTime expectedLocalDateTime = LocalDateTime.ofInstant(expectedInstant, ZoneOffset.systemDefault()); + var expectedInstant = Instant.ofEpochMilli(sample.revisionLong); + var expectedLocalDateTime = LocalDateTime.ofInstant(expectedInstant, ZoneOffset.systemDefault()); - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); softly.assertThat(metadata.getRevisionInstant()).hasValue(expectedInstant); softly.assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(expectedInstant); @@ -118,11 +118,11 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1384 void supportsTimestampRevisionInstant() { - SampleWithTimestamp sample = new SampleWithTimestamp(); - Instant now = Instant.now(); + var sample = new SampleWithTimestamp(); + var now = Instant.now(); sample.revision = Timestamp.from(now); - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(now); } @@ -130,11 +130,11 @@ class AnnotationRevisionMetadataUnitTests { @Test // DATACMNS-1384 void supportsDateRevisionInstant() { - SampleWithDate sample = new SampleWithDate(); - Date date = new Date(); + var sample = new SampleWithDate(); + var date = new Date(); sample.revision = date; - RevisionMetadata metadata = getMetadata(sample); + var metadata = getMetadata(sample); assertThat(metadata.getRequiredRevisionInstant()).isEqualTo(date.toInstant()); } diff --git a/src/test/java/org/springframework/data/history/RevisionUnitTests.java b/src/test/java/org/springframework/data/history/RevisionUnitTests.java index da44b6669..e1a40c2a6 100755 --- a/src/test/java/org/springframework/data/history/RevisionUnitTests.java +++ b/src/test/java/org/springframework/data/history/RevisionUnitTests.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; import java.time.Instant; -import java.util.List; import java.util.Optional; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -46,10 +45,10 @@ class RevisionUnitTests { when(firstMetadata.getRevisionNumber()).thenReturn(Optional.of(1)); when(secondMetadata.getRevisionNumber()).thenReturn(Optional.of(2)); - Revision first = Revision.of(firstMetadata, new Object()); - Revision second = Revision.of(secondMetadata, new Object()); + var first = Revision.of(firstMetadata, new Object()); + var second = Revision.of(secondMetadata, new Object()); - List> revisions = Stream.of(second, first).sorted().collect(Collectors.toList()); + var revisions = Stream.of(second, first).sorted().collect(Collectors.toList()); assertThat(revisions.get(0)).isEqualTo(first); assertThat(revisions.get(1)).isEqualTo(second); @@ -58,7 +57,7 @@ class RevisionUnitTests { @Test // DATACMNS-187 void returnsRevisionNumber() { - Optional reference = Optional.of(4711); + var reference = Optional.of(4711); when(firstMetadata.getRevisionNumber()).thenReturn(reference); assertThat(Revision.of(firstMetadata, new Object()).getRevisionNumber()).isEqualTo(reference); @@ -67,7 +66,7 @@ class RevisionUnitTests { @Test // DATACMNS-1251 void returnsRevisionInstant() { - Optional reference = Optional.of(Instant.now()); + var reference = Optional.of(Instant.now()); when(firstMetadata.getRevisionInstant()).thenReturn(reference); assertThat(Revision.of(firstMetadata, new Object()).getRevisionInstant()).isEqualTo(reference); diff --git a/src/test/java/org/springframework/data/history/RevisionsUnitTests.java b/src/test/java/org/springframework/data/history/RevisionsUnitTests.java index c32e8f9a8..877d4fe1d 100755 --- a/src/test/java/org/springframework/data/history/RevisionsUnitTests.java +++ b/src/test/java/org/springframework/data/history/RevisionsUnitTests.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; import java.util.Arrays; -import java.util.Iterator; import java.util.Optional; import org.junit.jupiter.api.BeforeEach; @@ -58,8 +57,8 @@ class RevisionsUnitTests { @Test void iteratesInCorrectOrder() { - Revisions revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision)); - Iterator> iterator = revisions.iterator(); + var revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision)); + var iterator = revisions.iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo(firstRevision); @@ -77,8 +76,8 @@ class RevisionsUnitTests { @Test void iteratesReversedRevisionsInCorrectOrder() { - Revisions revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision)); - Iterator> iterator = revisions.reverse().iterator(); + var revisions = Revisions.of(Arrays.asList(firstRevision, secondRevision)); + var iterator = revisions.reverse().iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo(secondRevision); @@ -90,8 +89,8 @@ class RevisionsUnitTests { @Test void forcesInvalidlyOrderedRevisionsToBeOrdered() { - Revisions revisions = Revisions.of(Arrays.asList(secondRevision, firstRevision)); - Iterator> iterator = revisions.iterator(); + var revisions = Revisions.of(Arrays.asList(secondRevision, firstRevision)); + var iterator = revisions.iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo(firstRevision); diff --git a/src/test/java/org/springframework/data/mapping/InstantiationAwarePersistentPropertyAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/InstantiationAwarePersistentPropertyAccessorUnitTests.java index 7314ee3d4..a5819663e 100644 --- a/src/test/java/org/springframework/data/mapping/InstantiationAwarePersistentPropertyAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/InstantiationAwarePersistentPropertyAccessorUnitTests.java @@ -36,12 +36,12 @@ class InstantiationAwarePersistentPropertyAccessorUnitTests { @Test // DATACMNS-1639 void shouldCreateNewInstance() { - EntityInstantiators instantiators = new EntityInstantiators(); - SampleMappingContext context = new SampleMappingContext(); + var instantiators = new EntityInstantiators(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Sample.class); - Sample sample = new Sample("Dave", "Matthews", 42); + var sample = new Sample("Dave", "Matthews", 42); PersistentPropertyAccessor wrapper = new InstantiationAwarePropertyAccessor<>(sample, entity::getPropertyAccessor, @@ -55,12 +55,12 @@ class InstantiationAwarePersistentPropertyAccessorUnitTests { @Test // DATACMNS-1768 void shouldSetMultipleProperties() { - EntityInstantiators instantiators = new EntityInstantiators(); - SampleMappingContext context = new SampleMappingContext(); + var instantiators = new EntityInstantiators(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Sample.class); - Sample bean = new Sample("Dave", "Matthews", 42); + var bean = new Sample("Dave", "Matthews", 42); PersistentPropertyAccessor wrapper = new InstantiationAwarePropertyAccessor<>(bean, entity::getPropertyAccessor, instantiators); diff --git a/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java b/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java index 7ae23d23b..9d2139f5f 100755 --- a/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java @@ -45,8 +45,8 @@ class ParameterUnitTests

> { @Test void twoParametersWithIdenticalSetupEqual() { - Parameter left = new Parameter<>("name", type, annotations, entity); - Parameter right = new Parameter<>("name", type, annotations, entity); + var left = new Parameter("name", type, annotations, entity); + var right = new Parameter("name", type, annotations, entity); assertThat(left).isEqualTo(right); assertThat(left.hashCode()).isEqualTo(right.hashCode()); @@ -55,8 +55,8 @@ class ParameterUnitTests

> { @Test void twoParametersWithIdenticalSetupAndNullNameEqual() { - Parameter left = new Parameter<>(null, type, annotations, entity); - Parameter right = new Parameter<>(null, type, annotations, entity); + var left = new Parameter(null, type, annotations, entity); + var right = new Parameter(null, type, annotations, entity); assertThat(left).isEqualTo(right); assertThat(left.hashCode()).isEqualTo(right.hashCode()); @@ -65,8 +65,8 @@ class ParameterUnitTests

> { @Test void twoParametersWithIdenticalAndNullEntitySetupEqual() { - Parameter left = new Parameter<>("name", type, annotations, null); - Parameter right = new Parameter<>("name", type, annotations, null); + var left = new Parameter("name", type, annotations, null); + var right = new Parameter("name", type, annotations, null); assertThat(left).isEqualTo(right); assertThat(left.hashCode()).isEqualTo(right.hashCode()); @@ -75,8 +75,8 @@ class ParameterUnitTests

> { @Test void twoParametersWithDifferentNameAreNotEqual() { - Parameter left = new Parameter<>("first", type, annotations, entity); - Parameter right = new Parameter<>("second", type, annotations, entity); + var left = new Parameter("first", type, annotations, entity); + var right = new Parameter("second", type, annotations, entity); assertThat(left).isNotEqualTo(right); } @@ -84,8 +84,8 @@ class ParameterUnitTests

> { @Test void twoParametersWithDifferenTypeAreNotEqual() { - Parameter left = new Parameter<>("name", type, annotations, entity); - Parameter right = new Parameter<>("name", ClassTypeInformation.from(String.class), annotations, + var left = new Parameter("name", type, annotations, entity); + var right = new Parameter("name", ClassTypeInformation.from(String.class), annotations, stringEntity); assertThat(left).isNotEqualTo(right); diff --git a/src/test/java/org/springframework/data/mapping/PersistentPropertyAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/PersistentPropertyAccessorUnitTests.java index f4a9c3536..659271d40 100644 --- a/src/test/java/org/springframework/data/mapping/PersistentPropertyAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/PersistentPropertyAccessorUnitTests.java @@ -61,7 +61,7 @@ public class PersistentPropertyAccessorUnitTests { @Test // DATACMNS-1275 public void looksUpValueForPropertyPath() { - Order order = new Order(new Customer("Dave")); + var order = new Order(new Customer("Dave")); setUp(order, "customer.firstname"); @@ -71,8 +71,8 @@ public class PersistentPropertyAccessorUnitTests { @Test // DATACMNS-1275 public void setsPropertyOnNestedPath() { - Customer customer = new Customer("Dave"); - Order order = new Order(customer); + var customer = new Customer("Dave"); + var order = new Order(customer); setUp(order, "customer.firstname"); @@ -112,16 +112,16 @@ public class PersistentPropertyAccessorUnitTests { public void correctlyReplacesObjectInstancesWhenSettingPropertyPathOnImmutableObjects() { PersistentEntity entity = context.getPersistentEntity(Outer.class); - PersistentPropertyPath path = context.getPersistentPropertyPath("immutable.value", + var path = context.getPersistentPropertyPath("immutable.value", entity.getType()); - NestedImmutable immutable = new NestedImmutable("foo"); - Outer outer = new Outer(immutable); + var immutable = new NestedImmutable("foo"); + var outer = new Outer(immutable); PersistentPropertyAccessor accessor = entity.getPropertyAccessor(outer); accessor.setProperty(path, "bar"); - Object result = accessor.getBean(); + var result = accessor.getBean(); assertThat(result).isInstanceOfSatisfying(Outer.class, it -> { assertThat(it.immutable).isNotSameAs(immutable); @@ -132,13 +132,13 @@ public class PersistentPropertyAccessorUnitTests { @Test // DATACMNS-1377 public void shouldConvertToPropertyPathLeafType() { - Order order = new Order(new Customer("1")); + var order = new Order(new Customer("1")); - PersistentPropertyAccessor accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order); - ConvertingPropertyAccessor convertingAccessor = new ConvertingPropertyAccessor<>(accessor, + var accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order); + var convertingAccessor = new ConvertingPropertyAccessor(accessor, new DefaultConversionService()); - PersistentPropertyPath path = context.getPersistentPropertyPath("customer.firstname", + var path = context.getPersistentPropertyPath("customer.firstname", Order.class); convertingAccessor.setProperty(path, 2); @@ -149,7 +149,7 @@ public class PersistentPropertyAccessorUnitTests { @Test // DATACMNS-1555 public void usesTraversalContextToTraverseCollections() { - WithContext withContext = WithContext.builder() // + var withContext = WithContext.builder() // .collection(Collections.singleton("value")) // .list(Collections.singletonList("value")) // .set(Collections.singleton("value")) // @@ -157,24 +157,24 @@ public class PersistentPropertyAccessorUnitTests { .string(" value ") // .build(); - Spec collectionHelper = Spec.of("collection", + var collectionHelper = Spec.of("collection", (context, property) -> context.registerCollectionHandler(property, it -> it.iterator().next())); - Spec listHelper = Spec.of("list", (context, property) -> context.registerListHandler(property, it -> it.get(0))); - Spec setHelper = Spec.of("set", + var listHelper = Spec.of("list", (context, property) -> context.registerListHandler(property, it -> it.get(0))); + var setHelper = Spec.of("set", (context, property) -> context.registerSetHandler(property, it -> it.iterator().next())); - Spec mapHelper = Spec.of("map", (context, property) -> context.registerMapHandler(property, it -> it.get("key"))); - Spec stringHelper = Spec.of("string", + var mapHelper = Spec.of("map", (context, property) -> context.registerMapHandler(property, it -> it.get("key"))); + var stringHelper = Spec.of("string", (context, property) -> context.registerHandler(property, String.class, it -> it.trim())); Stream.of(collectionHelper, listHelper, setHelper, mapHelper, stringHelper).forEach(it -> { PersistentEntity entity = context.getPersistentEntity(WithContext.class); PersistentProperty property = entity.getRequiredPersistentProperty(it.name); - PersistentPropertyAccessor accessor = entity.getPropertyAccessor(withContext); + var accessor = entity.getPropertyAccessor(withContext); - TraversalContext traversalContext = it.registrar.apply(new TraversalContext(), property); + var traversalContext = it.registrar.apply(new TraversalContext(), property); - PersistentPropertyPath propertyPath = context.getPersistentPropertyPath(it.name, + var propertyPath = context.getPersistentPropertyPath(it.name, WithContext.class); assertThat(accessor.getProperty(propertyPath, traversalContext)).isEqualTo("value"); @@ -187,7 +187,7 @@ public class PersistentPropertyAccessorUnitTests { PersistentEntity entity = context.getPersistentEntity(WithContext.class); PersistentProperty property = entity.getRequiredPersistentProperty("collection"); - TraversalContext traversal = new TraversalContext(); + var traversal = new TraversalContext(); assertThatIllegalArgumentException() // .isThrownBy(() -> traversal.registerHandler(property, Map.class, Function.identity())); diff --git a/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java b/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java index 35136de9c..817b8ace0 100755 --- a/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java @@ -112,7 +112,7 @@ class PreferredConstructorDiscovererUnitTests

> { assertThat(PreferredConstructorDiscoverer.discover(entity)).satisfies(constructor -> { - PersistenceConstructor annotation = constructor.getConstructor().getAnnotation(PersistenceConstructor.class); + var annotation = constructor.getConstructor().getAnnotation(PersistenceConstructor.class); assertThat(annotation).isNotNull(); assertThat(constructor.getConstructor().isSynthetic()).isFalse(); }); diff --git a/src/test/java/org/springframework/data/mapping/PropertyPathUnitTests.java b/src/test/java/org/springframework/data/mapping/PropertyPathUnitTests.java index 7e9e94e8a..f5a0f9853 100755 --- a/src/test/java/org/springframework/data/mapping/PropertyPathUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/PropertyPathUnitTests.java @@ -18,7 +18,6 @@ package org.springframework.data.mapping; import static org.assertj.core.api.Assertions.*; import static org.springframework.data.mapping.PropertyPath.from; -import java.util.Iterator; import java.util.Map; import java.util.Set; import java.util.regex.Pattern; @@ -41,7 +40,7 @@ class PropertyPathUnitTests { @Test void parsesSimplePropertyCorrectly() { - PropertyPath reference = PropertyPath.from("userName", Foo.class); + var reference = PropertyPath.from("userName", Foo.class); assertThat(reference.hasNext()).isFalse(); assertThat(reference.toDotPath()).isEqualTo("userName"); @@ -51,7 +50,7 @@ class PropertyPathUnitTests { @Test void parsesPathPropertyCorrectly() { - PropertyPath reference = PropertyPath.from("userName", Bar.class); + var reference = PropertyPath.from("userName", Bar.class); assertThat(reference.hasNext()).isTrue(); assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class)); assertThat(reference.toDotPath()).isEqualTo("user.name"); @@ -60,7 +59,7 @@ class PropertyPathUnitTests { @Test void prefersLongerMatches() { - PropertyPath reference = PropertyPath.from("userName", Sample.class); + var reference = PropertyPath.from("userName", Sample.class); assertThat(reference.hasNext()).isFalse(); assertThat(reference.toDotPath()).isEqualTo("userName"); } @@ -68,7 +67,7 @@ class PropertyPathUnitTests { @Test void testname() { - PropertyPath reference = PropertyPath.from("userName", Sample2.class); + var reference = PropertyPath.from("userName", Sample2.class); assertThat(reference.getSegment()).isEqualTo("user"); assertThat(reference.hasNext()).isTrue(); assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class)); @@ -77,7 +76,7 @@ class PropertyPathUnitTests { @Test void prefersExplicitPaths() { - PropertyPath reference = PropertyPath.from("user_name", Sample.class); + var reference = PropertyPath.from("user_name", Sample.class); assertThat(reference.getSegment()).isEqualTo("user"); assertThat(reference.hasNext()).isTrue(); assertThat(reference.next()).isEqualTo(new PropertyPath("name", FooBar.class)); @@ -86,7 +85,7 @@ class PropertyPathUnitTests { @Test void handlesGenericsCorrectly() { - PropertyPath reference = PropertyPath.from("usersName", Bar.class); + var reference = PropertyPath.from("usersName", Bar.class); assertThat(reference.getSegment()).isEqualTo("users"); assertThat(reference.isCollection()).isTrue(); assertThat(reference.hasNext()).isTrue(); @@ -96,7 +95,7 @@ class PropertyPathUnitTests { @Test void handlesMapCorrectly() { - PropertyPath reference = PropertyPath.from("userMapName", Bar.class); + var reference = PropertyPath.from("userMapName", Bar.class); assertThat(reference.getSegment()).isEqualTo("userMap"); assertThat(reference.isCollection()).isFalse(); assertThat(reference.hasNext()).isTrue(); @@ -106,7 +105,7 @@ class PropertyPathUnitTests { @Test void handlesArrayCorrectly() { - PropertyPath reference = PropertyPath.from("userArrayName", Bar.class); + var reference = PropertyPath.from("userArrayName", Bar.class); assertThat(reference.getSegment()).isEqualTo("userArray"); assertThat(reference.isCollection()).isTrue(); assertThat(reference.hasNext()).isTrue(); @@ -137,7 +136,7 @@ class PropertyPathUnitTests { @Test void findsNested() { - PropertyPath from = PropertyPath.from("barUserName", Sample.class); + var from = PropertyPath.from("barUserName", Sample.class); assertThat(from).isNotNull(); assertThat(from.getLeafProperty()).isEqualTo(PropertyPath.from("name", FooBar.class)); @@ -146,7 +145,7 @@ class PropertyPathUnitTests { @Test // DATACMNS-45 void handlesEmptyUnderscoresCorrectly() { - PropertyPath propertyPath = PropertyPath.from("_foo", Sample2.class); + var propertyPath = PropertyPath.from("_foo", Sample2.class); assertThat(propertyPath.getSegment()).isEqualTo("_foo"); assertThat(propertyPath.getType()).isEqualTo(Foo.class); @@ -157,7 +156,7 @@ class PropertyPathUnitTests { @Test void supportsDotNotationAsWell() { - PropertyPath propertyPath = PropertyPath.from("bar.userMap.name", Sample.class); + var propertyPath = PropertyPath.from("bar.userMap.name", Sample.class); assertThat(propertyPath).isNotNull(); assertThat(propertyPath.getSegment()).isEqualTo("bar"); @@ -167,9 +166,9 @@ class PropertyPathUnitTests { @Test void returnsCorrectIteratorForSingleElement() { - PropertyPath propertyPath = PropertyPath.from("userName", Foo.class); + var propertyPath = PropertyPath.from("userName", Foo.class); - Iterator iterator = propertyPath.iterator(); + var iterator = propertyPath.iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo(propertyPath); assertThat(iterator.hasNext()).isFalse(); @@ -178,9 +177,9 @@ class PropertyPathUnitTests { @Test void returnsCorrectIteratorForMultipleElement() { - PropertyPath propertyPath = PropertyPath.from("user.name", Bar.class); + var propertyPath = PropertyPath.from("user.name", Bar.class); - Iterator iterator = propertyPath.iterator(); + var iterator = propertyPath.iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo(propertyPath); assertThat(iterator.hasNext()).isTrue(); @@ -243,10 +242,10 @@ class PropertyPathUnitTests { @Test void samePathsEqual() { - PropertyPath left = PropertyPath.from("user.name", Bar.class); - PropertyPath right = PropertyPath.from("user.name", Bar.class); + var left = PropertyPath.from("user.name", Bar.class); + var right = PropertyPath.from("user.name", Bar.class); - PropertyPath shortPath = PropertyPath.from("user", Bar.class); + var shortPath = PropertyPath.from("user", Bar.class); assertThat(left).isEqualTo(right); assertThat(right).isEqualTo(left); @@ -259,10 +258,10 @@ class PropertyPathUnitTests { @Test void hashCodeTests() { - PropertyPath left = PropertyPath.from("user.name", Bar.class); - PropertyPath right = PropertyPath.from("user.name", Bar.class); + var left = PropertyPath.from("user.name", Bar.class); + var right = PropertyPath.from("user.name", Bar.class); - PropertyPath shortPath = PropertyPath.from("user", Bar.class); + var shortPath = PropertyPath.from("user", Bar.class); assertThat(left.hashCode()).isEqualTo(right.hashCode()); assertThat(left.hashCode()).isNotEqualTo(shortPath.hashCode()); @@ -271,7 +270,7 @@ class PropertyPathUnitTests { @Test // DATACMNS-257 void findsAllUppercaseProperty() { - PropertyPath path = PropertyPath.from("UUID", Foo.class); + var path = PropertyPath.from("UUID", Foo.class); assertThat(path).isNotNull(); assertThat(path.getSegment()).isEqualTo("UUID"); @@ -280,7 +279,7 @@ class PropertyPathUnitTests { @Test // DATACMNS-257 void findsNestedAllUppercaseProperty() { - PropertyPath path = PropertyPath.from("_fooUUID", Sample2.class); + var path = PropertyPath.from("_fooUUID", Sample2.class); assertThat(path).isNotNull(); assertThat(path.getSegment()).isEqualTo("_foo"); @@ -344,7 +343,7 @@ class PropertyPathUnitTests { @Test // DATACMNS-867 void preservesUnderscoresForQuotedNames() { - PropertyPath path = from(Pattern.quote("var_name_with_underscore"), Foo.class); + var path = from(Pattern.quote("var_name_with_underscore"), Foo.class); assertThat(path).isNotNull(); assertThat(path.getSegment()).isEqualTo("var_name_with_underscore"); @@ -378,15 +377,15 @@ class PropertyPathUnitTests { @Test // DATACMNS-1285 void rejectsTooLongPath() { - String source = "foo.bar"; + var source = "foo.bar"; - for (int i = 0; i < 9; i++) { + for (var i = 0; i < 9; i++) { source = source + "." + source; } assertThat(source.split("\\.").length).isGreaterThan(1000); - final String path = source; + final var path = source; assertThatIllegalArgumentException() // .isThrownBy(() -> PropertyPath.from(path, Left.class)); diff --git a/src/test/java/org/springframework/data/mapping/PropertyReferenceExceptionUnitTests.java b/src/test/java/org/springframework/data/mapping/PropertyReferenceExceptionUnitTests.java index aaa1daa6e..245e222c9 100755 --- a/src/test/java/org/springframework/data/mapping/PropertyReferenceExceptionUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/PropertyReferenceExceptionUnitTests.java @@ -17,7 +17,6 @@ package org.springframework.data.mapping; import static org.assertj.core.api.Assertions.*; -import java.util.Collection; import java.util.Collections; import java.util.List; @@ -61,9 +60,9 @@ public class PropertyReferenceExceptionUnitTests { @Test // DATACMNS-801 public void exposesPotentialMatch() { - PropertyReferenceException exception = new PropertyReferenceException("nme", TYPE_INFO, NO_PATHS); + var exception = new PropertyReferenceException("nme", TYPE_INFO, NO_PATHS); - Collection matches = exception.getPropertyMatches(); + var matches = exception.getPropertyMatches(); assertThat(matches).containsExactly("name"); } diff --git a/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java b/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java index eabdc33f6..48c65de83 100755 --- a/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java @@ -48,7 +48,7 @@ public class SimpleTypeHolderUnitTests { @Test // DATACMNS-31 public void rejectsNullTypeForIsSimpleTypeCall() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThatIllegalArgumentException().isThrownBy(() -> holder.isSimpleType(null)); } @@ -56,7 +56,7 @@ public class SimpleTypeHolderUnitTests { @Test public void addsDefaultTypes() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(String.class)).isTrue(); } @@ -64,7 +64,7 @@ public class SimpleTypeHolderUnitTests { @Test public void doesNotAddDefaultConvertersIfConfigured() { - SimpleTypeHolder holder = new SimpleTypeHolder(new HashSet<>(), false); + var holder = new SimpleTypeHolder(new HashSet<>(), false); assertThat(holder.isSimpleType(UUID.class)).isFalse(); } @@ -72,7 +72,7 @@ public class SimpleTypeHolderUnitTests { @Test public void addsCustomTypesToSimpleOnes() { - SimpleTypeHolder holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true); + var holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true); assertThat(holder.isSimpleType(SimpleTypeHolder.class)).isTrue(); assertThat(holder.isSimpleType(SimpleTypeHolderUnitTests.class)).isFalse(); @@ -81,8 +81,8 @@ public class SimpleTypeHolderUnitTests { @Test public void createsHolderFromAnotherOneCorrectly() { - SimpleTypeHolder holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true); - SimpleTypeHolder second = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolderUnitTests.class), holder); + var holder = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolder.class), true); + var second = new SimpleTypeHolder(Collections.singleton(SimpleTypeHolderUnitTests.class), holder); assertThat(holder.isSimpleType(SimpleTypeHolder.class)).isTrue(); assertThat(holder.isSimpleType(SimpleTypeHolderUnitTests.class)).isFalse(); @@ -92,28 +92,28 @@ public class SimpleTypeHolderUnitTests { @Test public void considersObjectToBeSimpleType() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(Object.class)).isTrue(); } @Test public void considersSimpleEnumAsSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(SimpleEnum.FOO.getClass())).isTrue(); } @Test public void considersComplexEnumAsSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(ComplexEnum.FOO.getClass())).isTrue(); } @Test // DATACMNS-1006 public void considersJavaLangTypesSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(Type.class)).isTrue(); } @@ -121,7 +121,7 @@ public class SimpleTypeHolderUnitTests { @Test // DATACMNS-1294 public void considersJavaTimeTypesSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(Instant.class)).isTrue(); } @@ -129,7 +129,7 @@ public class SimpleTypeHolderUnitTests { @Test // DATACMNS-1101 public void considersExtendedTypeAsSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(ExtendedPerson.class)).isFalse(); } @@ -137,7 +137,7 @@ public class SimpleTypeHolderUnitTests { @Test // DATACMNS-1101 public void considersExtendedTypeAsSimpleSeenBaseClassBefore() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(Person.class)).isFalse(); assertThat(holder.isSimpleType(ExtendedPerson.class)).isFalse(); @@ -146,7 +146,7 @@ public class SimpleTypeHolderUnitTests { @Test // DATACMNS-1278 public void alwaysConsidersEnumsSimple() { - SimpleTypeHolder holder = SimpleTypeHolder.DEFAULT; + var holder = SimpleTypeHolder.DEFAULT; assertThat(holder.isSimpleType(SomeInterface.class)).isFalse(); assertThat(holder.isSimpleType(InterfacedEnum.class)).isTrue(); diff --git a/src/test/java/org/springframework/data/mapping/TargetAwareIdentifierAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/TargetAwareIdentifierAccessorUnitTests.java index f979d2414..88388b64e 100644 --- a/src/test/java/org/springframework/data/mapping/TargetAwareIdentifierAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/TargetAwareIdentifierAccessorUnitTests.java @@ -31,7 +31,7 @@ public class TargetAwareIdentifierAccessorUnitTests { @Test // DATACMNS-1015 public void throwsExceptionContainingInformationAboutTargetIfIdentifierAbsent() { - Object sample = new Object(); + var sample = new Object(); IdentifierAccessor accessor = new TargetAwareIdentifierAccessor(sample) { diff --git a/src/test/java/org/springframework/data/mapping/callback/DefaultEntityCallbacksUnitTests.java b/src/test/java/org/springframework/data/mapping/callback/DefaultEntityCallbacksUnitTests.java index 3278014db..adbac5be8 100644 --- a/src/test/java/org/springframework/data/mapping/callback/DefaultEntityCallbacksUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/callback/DefaultEntityCallbacksUnitTests.java @@ -43,12 +43,12 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void shouldDispatchCallback() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class); + var ctx = new AnnotationConfigApplicationContext(MyConfig.class); - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx); + var callbacks = new DefaultEntityCallbacks(ctx); - PersonDocument personDocument = new PersonDocument(null, "Walter", null); - PersonDocument afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument); + var personDocument = new PersonDocument(null, "Walter", null); + var afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument); assertThat(afterCallback.getSsn()).isEqualTo(6); } @@ -56,12 +56,12 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void shouldDispatchCallsToLambdaReceivers() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(LambdaConfig.class); + var ctx = new AnnotationConfigApplicationContext(LambdaConfig.class); - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx); + var callbacks = new DefaultEntityCallbacks(ctx); - PersonDocument personDocument = new PersonDocument(null, "Walter", null); - PersonDocument afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument); + var personDocument = new PersonDocument(null, "Walter", null); + var afterCallback = callbacks.callback(BeforeSaveCallback.class, personDocument); assertThat(afterCallback).isSameAs(personDocument); } @@ -69,7 +69,7 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void invokeGenericEvent() { - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(new GenericPersonCallback()); Person afterCallback = callbacks.callback(GenericPersonCallback.class, new PersonDocument(null, "Walter", null)); @@ -80,7 +80,7 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void invokeGenericEventWithArgs() { - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(new GenericPersonCallbackWithArgs()); Person afterCallback = callbacks.callback(GenericPersonCallbackWithArgs.class, @@ -92,7 +92,7 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void invokeInvalidEvent() { - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(new InvalidEntityCallback() {}); assertThatIllegalStateException() @@ -106,11 +106,11 @@ class DefaultEntityCallbacksUnitTests { CapturingEntityCallback first = new FirstCallback(); CapturingEntityCallback second = new SecondCallback(); - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(first); callbacks.addEntityCallback(second); - PersonDocument initial = new PersonDocument(null, "Walter", null); + var initial = new PersonDocument(null, "Walter", null); callbacks.callback(CapturingEntityCallback.class, initial); @@ -123,7 +123,7 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void errorsOnNullEntity() { - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(new CapturingEntityCallback()); assertThatIllegalArgumentException() @@ -137,12 +137,12 @@ class DefaultEntityCallbacksUnitTests { CapturingEntityCallback second = new SecondCallback(null); CapturingEntityCallback third = new ThirdCallback(); - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(); + var callbacks = new DefaultEntityCallbacks(); callbacks.addEntityCallback(first); callbacks.addEntityCallback(second); callbacks.addEntityCallback(third); - PersonDocument initial = new PersonDocument(null, "Walter", null); + var initial = new PersonDocument(null, "Walter", null); assertThatIllegalArgumentException() .isThrownBy(() -> callbacks.callback(CapturingEntityCallback.class, initial)); @@ -155,11 +155,11 @@ class DefaultEntityCallbacksUnitTests { @Test // DATACMNS-1467 void detectsMultipleCallbacksWithinOneClass() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MultipleCallbacksInOneClassConfig.class); + var ctx = new AnnotationConfigApplicationContext(MultipleCallbacksInOneClassConfig.class); - DefaultEntityCallbacks callbacks = new DefaultEntityCallbacks(ctx); + var callbacks = new DefaultEntityCallbacks(ctx); - PersonDocument personDocument = new PersonDocument(null, "Walter", null); + var personDocument = new PersonDocument(null, "Walter", null); callbacks.callback(BeforeSaveCallback.class, personDocument); assertThat(ctx.getBean("callbacks", MultipleCallbacks.class).invocations).containsExactly("save"); diff --git a/src/test/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacksUnitTests.java b/src/test/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacksUnitTests.java index b5f29c177..8b108531b 100644 --- a/src/test/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacksUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/callback/DefaultReactiveEntityCallbacksUnitTests.java @@ -41,12 +41,12 @@ class DefaultReactiveEntityCallbacksUnitTests { @Test // DATACMNS-1467 void dispatchResolvesOnSubscribe() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class); + var ctx = new AnnotationConfigApplicationContext(MyConfig.class); - DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(ctx); + var callbacks = new DefaultReactiveEntityCallbacks(ctx); - PersonDocument personDocument = new PersonDocument(null, "Walter", null); - Mono afterCallback = callbacks.callback(ReactiveBeforeSaveCallback.class, personDocument); + var personDocument = new PersonDocument(null, "Walter", null); + var afterCallback = callbacks.callback(ReactiveBeforeSaveCallback.class, personDocument); assertThat(personDocument.getSsn()).isNull(); @@ -58,7 +58,7 @@ class DefaultReactiveEntityCallbacksUnitTests { @Test // DATACMNS-1467 void invokeGenericEvent() { - DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(); + var callbacks = new DefaultReactiveEntityCallbacks(); callbacks.addEntityCallback(new GenericPersonCallback()); callbacks.callback(GenericPersonCallback.class, new PersonDocument(null, "Walter", null)) // @@ -73,11 +73,11 @@ class DefaultReactiveEntityCallbacksUnitTests { CapturingEntityCallback first = new FirstCallback(); CapturingEntityCallback second = new SecondCallback(); - DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(); + var callbacks = new DefaultReactiveEntityCallbacks(); callbacks.addEntityCallback(first); callbacks.addEntityCallback(second); - PersonDocument initial = new PersonDocument(null, "Walter", null); + var initial = new PersonDocument(null, "Walter", null); callbacks.callback(CapturingEntityCallback.class, initial) // .as(StepVerifier::create) // @@ -93,7 +93,7 @@ class DefaultReactiveEntityCallbacksUnitTests { @Test // DATACMNS-1467 void errorsOnNullEntity() { - DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(); + var callbacks = new DefaultReactiveEntityCallbacks(); callbacks.addEntityCallback(new CapturingEntityCallback()); assertThatIllegalArgumentException() @@ -107,12 +107,12 @@ class DefaultReactiveEntityCallbacksUnitTests { CapturingEntityCallback second = new SecondCallback(null); CapturingEntityCallback third = new ThirdCallback(); - DefaultReactiveEntityCallbacks callbacks = new DefaultReactiveEntityCallbacks(); + var callbacks = new DefaultReactiveEntityCallbacks(); callbacks.addEntityCallback(first); callbacks.addEntityCallback(second); callbacks.addEntityCallback(third); - PersonDocument initial = new PersonDocument(null, "Walter", null); + var initial = new PersonDocument(null, "Walter", null); callbacks.callback(CapturingEntityCallback.class, initial) // .as(StepVerifier::create) // @@ -143,7 +143,7 @@ class DefaultReactiveEntityCallbacksUnitTests { @Override public Mono onBeforeSave(Person object) { - PersonDocument result = new PersonDocument(object.getFirstName().length(), object.getFirstName(), + var result = new PersonDocument(object.getFirstName().length(), object.getFirstName(), object.getLastName()); return Mono.just(result); diff --git a/src/test/java/org/springframework/data/mapping/callback/EntityCallbackDiscovererUnitTests.java b/src/test/java/org/springframework/data/mapping/callback/EntityCallbackDiscovererUnitTests.java index f4bc28782..6b2d929f3 100644 --- a/src/test/java/org/springframework/data/mapping/callback/EntityCallbackDiscovererUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/callback/EntityCallbackDiscovererUnitTests.java @@ -49,9 +49,9 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1467 void shouldDiscoverCallbackType() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class); + var ctx = new AnnotationConfigApplicationContext(MyConfig.class); - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx); + var discoverer = new EntityCallbackDiscoverer(ctx); Collection> entityCallbacks = discoverer.getEntityCallbacks(PersonDocument.class, ResolvableType.forType(BeforeSaveCallback.class)); @@ -62,17 +62,17 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1735 void shouldDiscoverCallbackTypeConcurrencyCache() throws InterruptedException { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class); + var ctx = new AnnotationConfigApplicationContext(MyConfig.class); - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx); - int poolSize = Runtime.getRuntime().availableProcessors(); - ThreadPoolExecutor executor = new ThreadPoolExecutor(poolSize, poolSize, 20, TimeUnit.SECONDS, + var discoverer = new EntityCallbackDiscoverer(ctx); + var poolSize = Runtime.getRuntime().availableProcessors(); + var executor = new ThreadPoolExecutor(poolSize, poolSize, 20, TimeUnit.SECONDS, new LinkedBlockingDeque<>()); - CountDownLatch startLatch = new CountDownLatch(poolSize); - CountDownLatch doneLatch = new CountDownLatch(poolSize); + var startLatch = new CountDownLatch(poolSize); + var doneLatch = new CountDownLatch(poolSize); List exceptions = new CopyOnWriteArrayList<>(); - for (int i = 0; i < poolSize; i++) { + for (var i = 0; i < poolSize; i++) { executor.submit(() -> { try { startLatch.countDown(); @@ -97,9 +97,9 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1467 void shouldDiscoverCallbackTypeByName() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(MyConfig.class); + var ctx = new AnnotationConfigApplicationContext(MyConfig.class); - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx); + var discoverer = new EntityCallbackDiscoverer(ctx); discoverer.clear(); discoverer.addEntityCallbackBean("namedCallback"); @@ -112,7 +112,7 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1467 void shouldSupportCallbackTypes() { - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(); + var discoverer = new EntityCallbackDiscoverer(); assertThat(discoverer.supportsEvent(MyBeforeSaveCallback.class, ResolvableType.forClass(Person.class))).isTrue(); assertThat(discoverer.supportsEvent(MyBeforeSaveCallback.class, ResolvableType.forClass(Child.class))).isTrue(); @@ -126,9 +126,9 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1467 void shouldSupportInstanceCallbackTypes() { - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(); + var discoverer = new EntityCallbackDiscoverer(); - MyBeforeSaveCallback callback = new MyBeforeSaveCallback(); + var callback = new MyBeforeSaveCallback(); assertThat(discoverer.supportsEvent(callback, ResolvableType.forClass(Person.class), ResolvableType.forClass(BeforeSaveCallback.class))).isTrue(); @@ -146,9 +146,9 @@ class EntityCallbackDiscovererUnitTests { @Test // DATACMNS-1467 void shouldDispatchInOrder() { - AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(OrderedConfig.class); + var ctx = new AnnotationConfigApplicationContext(OrderedConfig.class); - EntityCallbackDiscoverer discoverer = new EntityCallbackDiscoverer(ctx); + var discoverer = new EntityCallbackDiscoverer(ctx); Collection> entityCallbacks = discoverer.getEntityCallbacks(PersonDocument.class, ResolvableType.forType(EntityCallback.class)); diff --git a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java index 61967c2a7..1eb5874be 100755 --- a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java +++ b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java @@ -41,7 +41,7 @@ class AbstractMappingContextIntegrationTests> { @Test // DATACMNS-457 void returnsManagedType() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.setInitialEntitySet(Collections.singleton(Person.class)); context.initialize(); @@ -51,7 +51,7 @@ class AbstractMappingContextIntegrationTests> { @Test // DATACMNS-457 void indicatesManagedType() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.setInitialEntitySet(Collections.singleton(Person.class)); context.initialize(); @@ -61,7 +61,7 @@ class AbstractMappingContextIntegrationTests> { @Test // DATACMNS-243 void createsPersistentEntityForInterfaceCorrectly() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context .getRequiredPersistentEntity(InterfaceOnly.class); @@ -71,11 +71,11 @@ class AbstractMappingContextIntegrationTests> { @Test // DATACMNS-65 void foo() throws InterruptedException { - final DummyMappingContext context = new DummyMappingContext(); + final var context = new DummyMappingContext(); - Thread a = new Thread(() -> context.getPersistentEntity(Person.class)); + var a = new Thread(() -> context.getPersistentEntity(Person.class)); - Thread b = new Thread(() -> { + var b = new Thread(() -> { PersistentEntity entity = context.getRequiredPersistentEntity(Person.class); @@ -109,7 +109,7 @@ class AbstractMappingContextIntegrationTests> { protected T createPersistentProperty(Property property, BasicPersistentEntity owner, SimpleTypeHolder simpleTypeHolder) { - PersistentProperty prop = mock(PersistentProperty.class); + var prop = mock(PersistentProperty.class); when(prop.getTypeInformation()).thenReturn(owner.getTypeInformation()); when(prop.getName()).thenReturn(property.getName()); diff --git a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java index 905d25020..b646a1dfe 100755 --- a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java @@ -30,7 +30,6 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; -import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Optional; @@ -41,6 +40,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.aop.SpringProxy; import org.springframework.aop.framework.Advised; + import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationEvent; import org.springframework.data.annotation.Id; @@ -88,7 +88,7 @@ class AbstractMappingContextUnitTests { @Test void registersEntitiesOnInitialization() { - ApplicationContext applicationContext = mock(ApplicationContext.class); + var applicationContext = mock(ApplicationContext.class); context.setInitialEntitySet(Collections.singleton(Person.class)); context.setApplicationEventPublisher(applicationContext); @@ -102,7 +102,7 @@ class AbstractMappingContextUnitTests { @Test // DATACMNS-214 void returnsNullPersistentEntityForSimpleTypes() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); assertThat(context.getPersistentEntity(String.class)).isNull(); } @@ -119,7 +119,7 @@ class AbstractMappingContextUnitTests { @Test // DATACMNS-228 void doesNotCreatePersistentPropertyForGroovyMetaClass() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); mappingContext.initialize(); PersistentEntity entity = mappingContext @@ -130,7 +130,7 @@ class AbstractMappingContextUnitTests { @Test // DATACMNS-332 void usesMostConcreteProperty() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); PersistentEntity entity = mappingContext .getRequiredPersistentEntity(Extension.class); @@ -141,7 +141,7 @@ class AbstractMappingContextUnitTests { @SuppressWarnings("rawtypes") void returnsEntityForComponentType() { - SampleMappingContext mappingContext = new SampleMappingContext(); + var mappingContext = new SampleMappingContext(); PersistentEntity entity = mappingContext .getRequiredPersistentEntity(Sample.class); @@ -153,10 +153,10 @@ class AbstractMappingContextUnitTests { @Test // DATACMNS-390 void exposesCopyOfPersistentEntitiesToAvoidConcurrentModificationException() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(ClassTypeInformation.MAP); - Iterator> iterator = context.getPersistentEntities() + var iterator = context.getPersistentEntities() .iterator(); while (iterator.hasNext()) { @@ -208,7 +208,7 @@ class AbstractMappingContextUnitTests { void doesNotReturnPersistentEntityForCustomSimpleTypeProperty() { PersistentEntity entity = context.getRequiredPersistentEntity(Person.class); - SamplePersistentProperty property = entity.getRequiredPersistentProperty("date"); + var property = entity.getRequiredPersistentProperty("date"); assertThat(context.getPersistentEntity(property)).isNull(); } @@ -216,7 +216,7 @@ class AbstractMappingContextUnitTests { @Test // DATACMNS-1574 void cleansUpCacheForRuntimeException() { - TypeRejectingMappingContext context = TypeRejectingMappingContext.rejecting(() -> new RuntimeException(), + var context = TypeRejectingMappingContext.rejecting(() -> new RuntimeException(), Unsupported.class); assertThatExceptionOfType(RuntimeException.class) // @@ -231,7 +231,7 @@ class AbstractMappingContextUnitTests { @Test // GH-3113 void shouldIgnoreKotlinOverrideCtorPropertyInSuperClass() { - BasicPersistentEntity entity = context + var entity = context .getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyTypeWithCtor.class)); entity.doWithProperties((PropertyHandler) property -> { assertThat(property.getField().getDeclaringClass()).isIn(ShadowingPropertyTypeWithCtor.class, @@ -242,7 +242,7 @@ class AbstractMappingContextUnitTests { @Test // GH-3113 void shouldIncludeAssignableKotlinOverridePropertyInSuperClass() { - BasicPersistentEntity entity = context + var entity = context .getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyType.class)); entity.doWithProperties((PropertyHandler) property -> { assertThat(property.getField().getDeclaringClass()).isIn(ShadowedPropertyType.class, ShadowingPropertyType.class); @@ -252,7 +252,7 @@ class AbstractMappingContextUnitTests { @Test // GH-3113 void shouldIncludeAssignableShadowedPropertyInSuperClass() { - BasicPersistentEntity entity = context + var entity = context .getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyAssignable.class)); assertThat(StreamUtils.createStreamFromIterator(entity.iterator()) @@ -270,7 +270,7 @@ class AbstractMappingContextUnitTests { @Test // GH-3113 void shouldIgnoreNonAssignableOverridePropertyInSuperClass() { - BasicPersistentEntity entity = context + var entity = context .getPersistentEntity(ClassTypeInformation.from(ShadowingPropertyNotAssignable.class)); entity.doWithProperties((PropertyHandler) property -> { assertThat(property.getField().getDeclaringClass()).isEqualTo(ShadowingPropertyNotAssignable.class); @@ -367,9 +367,9 @@ class AbstractMappingContextUnitTests { private static void assertHasEntityFor(Class type, SampleMappingContext context, boolean expected) { - boolean found = false; + var found = false; - for (BasicPersistentEntity entity : context.getPersistentEntities()) { + for (var entity : context.getPersistentEntities()) { if (entity.getType().equals(type)) { found = true; break; diff --git a/src/test/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPathUnitTests.java b/src/test/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPathUnitTests.java index c5a32c037..4ce9ece04 100755 --- a/src/test/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPathUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPathUnitTests.java @@ -99,7 +99,7 @@ class DefaultPersistentPropertyPathUnitTests

> { @Test void calculatesExtensionCorrectly() { - PersistentPropertyPath

extension = twoLegs.getExtensionForBaseOf(oneLeg); + var extension = twoLegs.getExtensionForBaseOf(oneLeg); assertThat(extension).isEqualTo(new DefaultPersistentPropertyPath<>(Collections.singletonList(second))); } @@ -117,8 +117,8 @@ class DefaultPersistentPropertyPathUnitTests

> { @Test void returnItselfForEmptyPath() { - PersistentPropertyPath

parent = oneLeg.getParentPath(); - PersistentPropertyPath

parentsParent = parent.getParentPath(); + var parent = oneLeg.getParentPath(); + var parentsParent = parent.getParentPath(); assertThat(parentsParent).isEmpty(); assertThat(parentsParent).isSameAs(parent); diff --git a/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java b/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java index de4b9e08a..3711547fd 100755 --- a/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java @@ -42,21 +42,21 @@ class MappingContextEventUnitTests, P extends P @Test void returnsPersistentEntityHandedToTheEvent() { - MappingContextEvent event = new MappingContextEvent<>(mappingContext, entity); + var event = new MappingContextEvent(mappingContext, entity); assertThat(event.getPersistentEntity()).isEqualTo(entity); } @Test void usesMappingContextAsEventSource() { - MappingContextEvent event = new MappingContextEvent<>(mappingContext, entity); + var event = new MappingContextEvent(mappingContext, entity); assertThat(event.getSource()).isEqualTo(mappingContext); } @Test void detectsEmittingMappingContextCorrectly() { - MappingContextEvent event = new MappingContextEvent<>(mappingContext, entity); + var event = new MappingContextEvent(mappingContext, entity); assertThat(event.wasEmittedBy(mappingContext)).isTrue(); assertThat(event.wasEmittedBy(otherMappingContext)).isFalse(); } diff --git a/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java b/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java index 0fa5d4379..69fc6e132 100755 --- a/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java @@ -28,7 +28,6 @@ import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.data.annotation.Id; import org.springframework.data.annotation.Reference; import org.springframework.data.mapping.MappingException; -import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.model.BasicPersistentEntity; import org.springframework.data.util.ClassTypeInformation; @@ -69,11 +68,11 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-458 void indicatesManagedType() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.setInitialEntitySet(Collections.singleton(Sample.class)); context.initialize(); - PersistentEntities entities = PersistentEntities.of(context); + var entities = PersistentEntities.of(context); assertThat(entities.getPersistentEntity(Sample.class)).isPresent(); assertThat(entities.getPersistentEntity(Object.class)).isNotPresent(); @@ -85,13 +84,13 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-1318 void detectsReferredToEntity() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(Sample.class); - SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class)// + var property = context.getRequiredPersistentEntity(WithReference.class)// .getPersistentProperty("sampleId"); - PersistentEntity referredToEntity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); + var referredToEntity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); assertThat(referredToEntity).isNotNull(); assertThat(referredToEntity.getType()).isEqualTo(Sample.class); @@ -100,14 +99,14 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-1318 void rejectsAmbiguousIdentifierType() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(FirstWithLongId.class); context.getPersistentEntity(SecondWithLongId.class); - SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) // + var property = context.getRequiredPersistentEntity(WithReference.class) // .getPersistentProperty("longId"); - PersistentEntities entities = PersistentEntities.of(context); + var entities = PersistentEntities.of(context); assertThatIllegalStateException()// .isThrownBy(() -> entities.getEntityUltimatelyReferredToBy(property)) // @@ -119,14 +118,14 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-1318 void allowsExplicitlyQualifiedReference() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(FirstWithLongId.class); context.getPersistentEntity(SecondWithLongId.class); - SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) // + var property = context.getRequiredPersistentEntity(WithReference.class) // .getPersistentProperty("qualifiedLongId"); - PersistentEntity entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); + var entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); assertThat(entity).isNotNull(); assertThat(entity.getType()).isEqualTo(FirstWithLongId.class); @@ -135,14 +134,14 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-1318 void allowsGenericReference() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); context.getPersistentEntity(FirstWithGenericId.class); context.getPersistentEntity(SecondWithGenericId.class); - SamplePersistentProperty property = context.getRequiredPersistentEntity(WithReference.class) // + var property = context.getRequiredPersistentEntity(WithReference.class) // .getPersistentProperty("generic"); - PersistentEntity entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); + var entity = PersistentEntities.of(context).getEntityUltimatelyReferredToBy(property); assertThat(entity).isNotNull(); assertThat(entity.getType()).isEqualTo(SecondWithGenericId.class); @@ -151,7 +150,7 @@ class PersistentEntitiesUnitTests { @Test // DATACMNS-1780 void getRequiredPersistentEntityAllowsInFlightEntityCreationForUnknownTypesWhenHavingJustASingleMappingContext() { - SampleMappingContext mappingContext = spy(new SampleMappingContext()); + var mappingContext = spy(new SampleMappingContext()); mappingContext.afterPropertiesSet(); assertThat(PersistentEntities.of(mappingContext).getRequiredPersistentEntity(Sample.class)).isNotNull(); diff --git a/src/test/java/org/springframework/data/mapping/context/PersistentPropertyPathFactoryUnitTests.java b/src/test/java/org/springframework/data/mapping/context/PersistentPropertyPathFactoryUnitTests.java index 6a345a951..a1d3eb4ab 100644 --- a/src/test/java/org/springframework/data/mapping/context/PersistentPropertyPathFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/PersistentPropertyPathFactoryUnitTests.java @@ -29,7 +29,6 @@ import org.springframework.data.mapping.PersistentPropertyPath; import org.springframework.data.mapping.PersistentPropertyPaths; import org.springframework.data.mapping.PropertyPath; import org.springframework.data.mapping.model.BasicPersistentEntity; -import org.springframework.data.util.Streamable; import org.springframework.util.StringUtils; /** @@ -51,7 +50,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-380 void returnsPersistentPropertyPathForDotPath() { - PersistentPropertyPath path = factory.from(PersonSample.class, "persons.name"); + var path = factory.from(PersonSample.class, "persons.name"); assertThat(path.getLength()).isEqualTo(2); assertThat(path.getBaseProperty().getName()).isEqualTo("persons"); @@ -114,7 +113,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-1275 void returnsShortestsPathsFirst() { - Streamable paths = factory.from(First.class, it -> true, it -> true) // + var paths = factory.from(First.class, it -> true, it -> true) // .map(PersistentPropertyPath::toDotPath); assertThat(paths).containsExactly("third", "second", "third.lastname", "second.firstname"); @@ -123,7 +122,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-1275 void doesNotTraverseAssociationsByDefault() { - Streamable paths = factory.from(First.class, it -> true) // + var paths = factory.from(First.class, it -> true) // .map(PersistentPropertyPath::toDotPath); assertThat(paths) // @@ -134,7 +133,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-1275 void traversesAssociationsIfTraversalGuardAllowsIt() { - PersistentPropertyPaths paths = // + var paths = // factory.from(First.class, it -> true, it -> true); assertThat(paths.contains("third.lastname")).isTrue(); @@ -144,7 +143,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-1275 void returnsEmptyPropertyPathsIfNoneSelected() { - PersistentPropertyPaths paths = factory.from(Third.class, it -> false); + var paths = factory.from(Third.class, it -> false); assertThat(paths).isEmpty(); assertThat(paths.getFirst()).isEmpty(); @@ -153,7 +152,7 @@ class PersistentPropertyPathFactoryUnitTests { @Test // DATACMNS-1275 void returnsShortestPathFirst() { - PersistentPropertyPaths paths = factory.from(First.class, it -> !it.isEntity(), + var paths = factory.from(First.class, it -> !it.isEntity(), it -> true); assertThat(paths.contains("second.firstname")).isTrue(); diff --git a/src/test/java/org/springframework/data/mapping/context/PropertyMatchUnitTests.java b/src/test/java/org/springframework/data/mapping/context/PropertyMatchUnitTests.java index 46d1019d7..446e45a79 100755 --- a/src/test/java/org/springframework/data/mapping/context/PropertyMatchUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/PropertyMatchUnitTests.java @@ -36,7 +36,7 @@ class PropertyMatchUnitTests { @Test void matchesFieldByConcreteNameAndType() throws Exception { - PropertyMatch match = new PropertyMatch("name", "java.lang.String"); + var match = new PropertyMatch("name", "java.lang.String"); assertThat(match.matches("this$0", Object.class)).isFalse(); assertThat(match.matches("this$1", Object.class)).isFalse(); assertThat(match.matches("name", String.class)).isTrue(); @@ -45,7 +45,7 @@ class PropertyMatchUnitTests { @Test void matchesFieldByNamePattern() throws Exception { - PropertyMatch match = new PropertyMatch("this\\$.*", "java.lang.Object"); + var match = new PropertyMatch("this\\$.*", "java.lang.Object"); assertThat(match.matches("this$0", Object.class)).isTrue(); assertThat(match.matches("this$1", Object.class)).isTrue(); assertThat(match.matches("name", String.class)).isFalse(); @@ -54,7 +54,7 @@ class PropertyMatchUnitTests { @Test void matchesFieldByNameOnly() throws Exception { - PropertyMatch match = new PropertyMatch("this\\$.*", null); + var match = new PropertyMatch("this\\$.*", null); assertThat(match.matches("this$0", Object.class)).isTrue(); assertThat(match.matches("this$1", Object.class)).isTrue(); assertThat(match.matches("name", String.class)).isFalse(); @@ -63,7 +63,7 @@ class PropertyMatchUnitTests { @Test void matchesFieldByTypeNameOnly() throws Exception { - PropertyMatch match = new PropertyMatch(null, "java.lang.Object"); + var match = new PropertyMatch(null, "java.lang.Object"); assertThat(match.matches("this$0", Object.class)).isTrue(); assertThat(match.matches("this$1", Object.class)).isTrue(); assertThat(match.matches("name", String.class)).isFalse(); diff --git a/src/test/java/org/springframework/data/mapping/model/AbstractPersistentPropertyUnitTests.java b/src/test/java/org/springframework/data/mapping/model/AbstractPersistentPropertyUnitTests.java index f9d11f075..a2921a0a7 100755 --- a/src/test/java/org/springframework/data/mapping/model/AbstractPersistentPropertyUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/AbstractPersistentPropertyUnitTests.java @@ -24,7 +24,6 @@ import java.beans.IntrospectionException; import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.lang.annotation.Annotation; -import java.lang.reflect.Field; import java.util.Arrays; import java.util.Collection; import java.util.Map; @@ -36,6 +35,7 @@ import org.jmolecules.ddd.types.AggregateRoot; import org.jmolecules.ddd.types.Identifier; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.data.mapping.Association; import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.PersistentProperty; @@ -89,8 +89,8 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-121 void considersPropertiesEqualIfFieldEquals() { - SamplePersistentProperty firstProperty = getProperty(FirstConcrete.class, "genericField"); - SamplePersistentProperty secondProperty = getProperty(SecondConcrete.class, "genericField"); + var firstProperty = getProperty(FirstConcrete.class, "genericField"); + var secondProperty = getProperty(SecondConcrete.class, "genericField"); assertThat(firstProperty).isEqualTo(secondProperty); assertThat(firstProperty.hashCode()).isEqualTo(secondProperty.hashCode()); @@ -104,7 +104,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-206 void findsSimpleGettersAndASetters() { - SamplePersistentProperty property = getProperty(AccessorTestClass.class, "id"); + var property = getProperty(AccessorTestClass.class, "id"); assertThat(property.getGetter()).isNotNull(); assertThat(property.getSetter()).isNotNull(); @@ -113,7 +113,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-206 void doesNotUseInvalidGettersAndASetters() { - SamplePersistentProperty property = getProperty(AccessorTestClass.class, "anotherId"); + var property = getProperty(AccessorTestClass.class, "anotherId"); assertThat(property.getGetter()).isNull(); assertThat(property.getSetter()).isNull(); @@ -122,7 +122,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-206 void usesCustomGetter() { - SamplePersistentProperty property = getProperty(AccessorTestClass.class, "yetAnotherId"); + var property = getProperty(AccessorTestClass.class, "yetAnotherId"); assertThat(property.getGetter()).isNotNull(); assertThat(property.getSetter()).isNull(); @@ -131,7 +131,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-206 void usesCustomSetter() { - SamplePersistentProperty property = getProperty(AccessorTestClass.class, "yetYetAnotherId"); + var property = getProperty(AccessorTestClass.class, "yetYetAnotherId"); assertThat(property.getGetter()).isNull(); assertThat(property.getSetter()).isNotNull(); @@ -140,8 +140,8 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-206 void doesNotDiscoverGetterAndSetterIfNoPropertyDescriptorGiven() { - Field field = ReflectionUtils.findField(AccessorTestClass.class, "id"); - Property property = Property.of(ClassTypeInformation.from(AccessorTestClass.class), field); + var field = ReflectionUtils.findField(AccessorTestClass.class, "id"); + var property = Property.of(ClassTypeInformation.from(AccessorTestClass.class), field); PersistentProperty persistentProperty = new SamplePersistentProperty(property, getEntity(AccessorTestClass.class), typeHolder); @@ -153,7 +153,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-337 void resolvesActualType() { - SamplePersistentProperty property = getProperty(Sample.class, "person"); + var property = getProperty(Sample.class, "person"); assertThat(property.getActualType()).isEqualTo(Person.class); property = getProperty(Sample.class, "persons"); @@ -169,35 +169,35 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-462 void considersCollectionPropertyEntitiesIfComponentTypeIsEntity() { - SamplePersistentProperty property = getProperty(Sample.class, "persons"); + var property = getProperty(Sample.class, "persons"); assertThat(property.isEntity()).isTrue(); } @Test // DATACMNS-462 void considersMapPropertyEntitiesIfValueTypeIsEntity() { - SamplePersistentProperty property = getProperty(Sample.class, "personMap"); + var property = getProperty(Sample.class, "personMap"); assertThat(property.isEntity()).isTrue(); } @Test // DATACMNS-462 void considersArrayPropertyEntitiesIfComponentTypeIsEntity() { - SamplePersistentProperty property = getProperty(Sample.class, "personArray"); + var property = getProperty(Sample.class, "personArray"); assertThat(property.isEntity()).isTrue(); } @Test // DATACMNS-462 void considersCollectionPropertySimpleIfComponentTypeIsSimple() { - SamplePersistentProperty property = getProperty(Sample.class, "strings"); + var property = getProperty(Sample.class, "strings"); assertThat(property.isEntity()).isFalse(); } @Test // DATACMNS-562 void doesNotConsiderPropertyWithTreeMapMapValueAnEntity() { - SamplePersistentProperty property = getProperty(TreeMapWrapper.class, "map"); + var property = getProperty(TreeMapWrapper.class, "map"); assertThat(property.getPersistentEntityTypeInformation()).isEmpty(); assertThat(property.isEntity()).isFalse(); } @@ -205,14 +205,14 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-867 void resolvesFieldNameWithUnderscoresCorrectly() { - SamplePersistentProperty property = getProperty(TestClassComplex.class, "var_name_with_underscores"); + var property = getProperty(TestClassComplex.class, "var_name_with_underscores"); assertThat(property.getName()).isEqualTo("var_name_with_underscores"); } @Test // DATACMNS-1139 void resolvesGenericsForRawType() { - SamplePersistentProperty property = getProperty(FirstConcrete.class, "genericField"); + var property = getProperty(FirstConcrete.class, "genericField"); assertThat(property.getRawType()).isEqualTo(String.class); } @@ -220,7 +220,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // DATACMNS-1180 void returnsAccessorsForGenericReturnType() { - SamplePersistentProperty property = getProperty(ConcreteGetter.class, "genericField"); + var property = getProperty(ConcreteGetter.class, "genericField"); assertThat(property.getSetter()).isNotNull(); assertThat(property.getGetter()).isNotNull(); @@ -229,7 +229,7 @@ public class AbstractPersistentPropertyUnitTests { @Test // GH-2315 void detectsJMoleculesAssociation() { - SamplePersistentProperty property = getProperty(JMolecules.class, "association"); + var property = getProperty(JMolecules.class, "association"); assertThat(property.isAssociation()).isTrue(); assertThat(property.getAssociationTargetType()).isEqualTo(JMoleculesAggregate.class); @@ -245,10 +245,10 @@ public class AbstractPersistentPropertyUnitTests { private SamplePersistentProperty getProperty(Class type, String name) { TypeInformation typeInformation = ClassTypeInformation.from(type); - Optional field = Optional.ofNullable(ReflectionUtils.findField(type, name)); - Optional descriptor = getPropertyDescriptor(type, name); + var field = Optional.ofNullable(ReflectionUtils.findField(type, name)); + var descriptor = getPropertyDescriptor(type, name); - Property property = Optionals.firstNonEmpty( // + var property = Optionals.firstNonEmpty( // () -> Optionals.mapIfAllPresent(field, descriptor, (left, right) -> Property.of(typeInformation, left, right)), // () -> field.map(it -> Property.of(typeInformation, it)), // () -> descriptor.map(it -> Property.of(typeInformation, it))) // diff --git a/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java b/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java index 913a2e73d..7c8adcb18 100755 --- a/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java @@ -99,7 +99,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ // Assert direct annotations are cached on construction - Map, Annotation> cache = getAnnotationCache(property); + var cache = getAnnotationCache(property); assertThat(cache.containsKey(MyAnnotationAsMeta.class)).isTrue(); assertThat(cache.containsKey(MyAnnotation.class)).isFalse(); @@ -187,13 +187,13 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ assertThat(it.findAnnotation(MyAnnotation.class)).isNull(); - Map, ?> field = (Map, ?>) ReflectionTestUtils.getField(it, "annotationCache"); + var field = (Map, ?>) ReflectionTestUtils.getField(it, "annotationCache"); assertThat(field.containsKey(MyAnnotation.class)).isTrue(); assertThat(field.get(MyAnnotation.class)).isEqualTo(Optional.empty()); @@ -206,7 +206,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ // Assert direct annotations are cached on construction - Map, Annotation> cache = getAnnotationCache(property); + var cache = getAnnotationCache(property); assertThat(cache.containsKey(MyComposedAnnotationUsingAliasFor.class)).isTrue(); assertThat(cache.containsKey(MyAnnotation.class)).isFalse(); @@ -253,14 +253,14 @@ public class AnnotationBasedPersistentPropertyUnitTests

detectsUltimateAssociationTargetClass() { - Function verifier = it -> assertThat( + var verifier = (Function) it -> assertThat( getProperty(WithReferences.class, it).getAssociationTargetType()); - Stream positives = DynamicTest.stream(Stream.of("toSample", "toSample2", "sample"), // + var positives = DynamicTest.stream(Stream.of("toSample", "toSample2", "sample"), // it -> String.format("Property %s resolves to %s.", it, Sample.class.getSimpleName()), // it -> verifier.apply(it).isEqualTo(Sample.class)); - Stream negatives = DynamicTest.stream(Stream.of("withoutAnnotation"), // + var negatives = DynamicTest.stream(Stream.of("withoutAnnotation"), // it -> String.format("Property %s resolves to null.", it), // it -> verifier.apply(it).isNull()); @@ -270,7 +270,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

property.getRequiredGetter()) // @@ -281,7 +281,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

property.getRequiredSetter()) // @@ -292,7 +292,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

property.getRequiredWither()) // @@ -303,7 +303,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

property.getRequiredField()) // @@ -314,7 +314,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

A assertAnnotationPresent(Class annotationType, AnnotationBasedPersistentProperty property) { - A annotation = property.findAnnotation(annotationType); + var annotation = property.findAnnotation(annotationType); assertThat(annotation).isNotNull(); diff --git a/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java b/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java index c94c2c399..b14fbb675 100755 --- a/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java @@ -25,7 +25,6 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.Comparator; -import java.util.Iterator; import java.util.List; import java.util.concurrent.CountDownLatch; import java.util.concurrent.atomic.AtomicBoolean; @@ -37,6 +36,7 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.junit.jupiter.MockitoExtension; + import org.springframework.core.annotation.AliasFor; import org.springframework.data.annotation.AccessType; import org.springframework.data.annotation.AccessType.Type; @@ -108,16 +108,16 @@ class BasicPersistentEntityUnitTests> { @SuppressWarnings("unchecked") void considersComparatorForPropertyOrder() { - BasicPersistentEntity entity = createEntity(Person.class, + var entity = createEntity(Person.class, Comparator.comparing(PersistentProperty::getName)); - T lastName = (T) Mockito.mock(PersistentProperty.class); + var lastName = (T) Mockito.mock(PersistentProperty.class); when(lastName.getName()).thenReturn("lastName"); - T firstName = (T) Mockito.mock(PersistentProperty.class); + var firstName = (T) Mockito.mock(PersistentProperty.class); when(firstName.getName()).thenReturn("firstName"); - T ssn = (T) Mockito.mock(PersistentProperty.class); + var ssn = (T) Mockito.mock(PersistentProperty.class); when(ssn.getName()).thenReturn("ssn"); entity.addPersistentProperty(lastName); @@ -125,10 +125,10 @@ class BasicPersistentEntityUnitTests> { entity.addPersistentProperty(ssn); entity.verify(); - List properties = (List) ReflectionTestUtils.getField(entity, "properties"); + var properties = (List) ReflectionTestUtils.getField(entity, "properties"); assertThat(properties).hasSize(3); - Iterator iterator = properties.iterator(); + var iterator = properties.iterator(); assertThat(entity.getPersistentProperty("firstName")).isEqualTo(iterator.next()); assertThat(entity.getPersistentProperty("lastName")).isEqualTo(iterator.next()); @@ -164,10 +164,10 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-365 void detectsPropertyWithAnnotation() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); - SamplePersistentProperty property = entity.getPersistentProperty(LastModifiedBy.class); + var property = entity.getPersistentProperty(LastModifiedBy.class); assertThat(property.getName()).isEqualTo("field"); @@ -181,7 +181,7 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-1122 void reportsRequiredPropertyName() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); assertThatThrownBy(() -> entity.getRequiredPersistentProperty("foo")) @@ -192,19 +192,19 @@ class BasicPersistentEntityUnitTests> { @SuppressWarnings("rawtypes") void returnsGeneratedPropertyAccessorForPropertyAccessor() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); - Entity value = new Entity(); + var value = new Entity(); PersistentPropertyAccessor accessor = entity.getPropertyAccessor(value); assertThat(accessor).isNotInstanceOf(BeanWrapper.class); assertThat(accessor).isInstanceOfSatisfying(InstantiationAwarePropertyAccessor.class, it -> { - Function> delegateFunction = (Function>) ReflectionTestUtils + var delegateFunction = (Function>) ReflectionTestUtils .getField(it, "delegateFunction"); - PersistentPropertyAccessor delegate = delegateFunction.apply(value); + var delegate = delegateFunction.apply(value); assertThat(delegate.getClass().getName()).contains("_Accessor_"); assertThat(delegate.getBean()).isEqualTo(value); }); @@ -213,7 +213,7 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-596 void rejectsNullBeanForPropertyAccessor() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); assertThatIllegalArgumentException().isThrownBy(() -> entity.getPropertyAccessor(null)); @@ -222,7 +222,7 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-596 void rejectsNonMatchingBeanForPropertyAccessor() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); assertThatIllegalArgumentException().isThrownBy(() -> entity.getPropertyAccessor("foo")); @@ -231,7 +231,7 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-597 void supportsSubtypeInstancesOnPropertyAccessorLookup() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Entity.class); assertThat(entity.getPropertyAccessor(new Subtype())).isNotNull(); @@ -282,9 +282,9 @@ class BasicPersistentEntityUnitTests> { @Test // DATACMNS-1210 void findAnnotationShouldBeThreadSafe() throws InterruptedException { - CountDownLatch latch = new CountDownLatch(2); - CountDownLatch syncLatch = new CountDownLatch(1); - AtomicBoolean failed = new AtomicBoolean(false); + var latch = new CountDownLatch(2); + var syncLatch = new CountDownLatch(1); + var failed = new AtomicBoolean(false); PersistentEntity entity = new BasicPersistentEntity( ClassTypeInformation.from(EntityWithAnnotation.class), null) { @@ -303,7 +303,7 @@ class BasicPersistentEntityUnitTests> { } }; - Runnable findAccessType = () -> { + var findAccessType = (Runnable) () -> { try { entity.findAnnotation(AccessType.class); @@ -314,7 +314,7 @@ class BasicPersistentEntityUnitTests> { } }; - Runnable findPersistent = () -> { + var findPersistent = (Runnable) () -> { try { entity.findAnnotation(Persistent.class); @@ -383,7 +383,7 @@ class BasicPersistentEntityUnitTests> { private static PersistentEntity createPopulatedPersistentEntity(Class type) { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); return context.getRequiredPersistentEntity(type); } diff --git a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiatorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiatorUnitTests.java index de5e139a9..46f438a94 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiatorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingEntityInstantiatorUnitTests.java @@ -104,15 +104,15 @@ class ClassGeneratingEntityInstantiatorUnitTests

@Test // DATACMNS-134, DATACMNS-578 void createsInnerClassInstanceCorrectly() { - BasicPersistentEntity entity = new BasicPersistentEntity<>(from(Inner.class)); + var entity = new BasicPersistentEntity(from(Inner.class)); assertThat(entity.getPersistenceConstructor()).satisfies(constructor -> { - Parameter parameter = constructor.getParameters().iterator().next(); + var parameter = constructor.getParameters().iterator().next(); Object outer = new Outer(); doReturn(outer).when(provider).getParameterValue(parameter); - Inner instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isNotNull(); @@ -164,7 +164,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

doReturn(2L, "FOO").when(provider).getParameterValue(any(Parameter.class)); - ParameterValueProvider

recursive = new ParameterValueProvider

() { + var recursive = new ParameterValueProvider

() { @Override public T getParameterValue(Parameter parameter) { @@ -181,7 +181,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

} }; - SampleWithReference reference = this.instance.createInstance(outer, recursive); + var reference = this.instance.createInstance(outer, recursive); assertThat(reference.id).isEqualTo(1L); assertThat(reference.sample).isNotNull(); @@ -209,13 +209,13 @@ class ClassGeneratingEntityInstantiatorUnitTests

IntStream.range(0, 2).forEach(i -> { - Object instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isInstanceOf(ObjCtorNoArgs.class); assertThat(((ObjCtorNoArgs) instance).ctorInvoked).isTrue(); }); - ClassGeneratingEntityInstantiator classGeneratingEntityInstantiator = new ClassGeneratingEntityInstantiator(); + var classGeneratingEntityInstantiator = new ClassGeneratingEntityInstantiator(); classGeneratingEntityInstantiator.createInstance(entity, provider); } @@ -229,7 +229,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

IntStream.range(0, 2).forEach(i -> { - Object instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isInstanceOf(ObjCtor1ParamString.class); assertThat(((ObjCtor1ParamString) instance).ctorInvoked).isTrue(); @@ -248,7 +248,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

when(provider.getParameterValue(any())).thenReturn("FOO", "BAR"); - Object instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isInstanceOf(ObjCtor2ParamStringString.class); assertThat(((ObjCtor2ParamStringString) instance).ctorInvoked).isTrue(); @@ -268,7 +268,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

doReturn(42).when(provider).getParameterValue(any()); - Object instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isInstanceOf(ObjectCtor1ParamInt.class); assertThat(((ObjectCtor1ParamInt) instance).param1).isEqualTo(42); @@ -298,11 +298,11 @@ class ClassGeneratingEntityInstantiatorUnitTests

when(provider.getParameterValue(any(Parameter.class))).thenReturn("A", 1, 2, 3, 4, 5, "B"); - Object instance = this.instance.createInstance(entity, provider); + var instance = this.instance.createInstance(entity, provider); assertThat(instance).isInstanceOf(ObjectCtor7ParamsString5IntsString.class); - ObjectCtor7ParamsString5IntsString toTest = (ObjectCtor7ParamsString5IntsString) instance; + var toTest = (ObjectCtor7ParamsString5IntsString) instance; assertThat(toTest.param1).isEqualTo("A"); assertThat(toTest.param2).isEqualTo(1); @@ -352,7 +352,7 @@ class ClassGeneratingEntityInstantiatorUnitTests

@Test // DATACMNS-1373 void shouldInstantiateClassInDefaultPackage() throws ClassNotFoundException { - Class typeInDefaultPackage = Class.forName("TypeInDefaultPackage"); + var typeInDefaultPackage = Class.forName("TypeInDefaultPackage"); prepareMocks(typeInDefaultPackage); assertThat(this.instance.shouldUseReflectionEntityInstantiator(entity)).isFalse(); @@ -374,13 +374,13 @@ class ClassGeneratingEntityInstantiatorUnitTests

this.instance.createInstance(entity, provider); - ClassGeneratingEntityInstantiator instantiator = new ClassGeneratingEntityInstantiator(); + var instantiator = new ClassGeneratingEntityInstantiator(); instantiator.createInstance(entity, provider); - Map, EntityInstantiator> first = (Map, EntityInstantiator>) ReflectionTestUtils + var first = (Map, EntityInstantiator>) ReflectionTestUtils .getField(this.instance, "entityInstantiators"); - Map, EntityInstantiator> second = (Map, EntityInstantiator>) ReflectionTestUtils + var second = (Map, EntityInstantiator>) ReflectionTestUtils .getField(instantiator, "entityInstantiators"); assertThat(first.get(null)).isNotNull().isNotInstanceOf(Enum.class); @@ -390,11 +390,11 @@ class ClassGeneratingEntityInstantiatorUnitTests

@Test // DATACMNS-1422 void shouldUseReflectionIfFrameworkTypesNotVisible() throws Exception { - HidingClassLoader classLoader = HidingClassLoader.hide(ObjectInstantiator.class); + var classLoader = HidingClassLoader.hide(ObjectInstantiator.class); classLoader.excludePackage("org.springframework.data.mapping"); // require type from different package to meet visibility quirks - Class entityType = classLoader.loadClass("org.springframework.data.mapping.Person"); + var entityType = classLoader.loadClass("org.springframework.data.mapping.Person"); prepareMocks(entityType); diff --git a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java index 41b8aaaf0..95afe066c 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*; import lombok.Data; -import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -32,7 +31,6 @@ import org.springframework.data.annotation.AccessType.Type; import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.PersistentPropertyAccessor; import org.springframework.data.mapping.context.SampleMappingContext; -import org.springframework.data.mapping.context.SamplePersistentProperty; import org.springframework.test.util.ReflectionTestUtils; /** @@ -49,7 +47,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { static List parameters() throws Exception { List parameters = new ArrayList<>(); - List> types = Arrays.asList(FieldAccess.class, PropertyAccess.class, PrivateFinalFieldAccess.class, + var types = Arrays.asList(FieldAccess.class, PropertyAccess.class, PrivateFinalFieldAccess.class, PrivateFinalPropertyAccess.class); parameters.addAll(parameters(types, "primitiveInteger", Integer.valueOf(1))); @@ -94,9 +92,9 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { List parameters = new ArrayList<>(); - for (Class type : types) { + for (var type : types) { - Constructor[] constructors = type.getDeclaredConstructors(); + var constructors = type.getDeclaredConstructors(); constructors[0].setAccessible(true); parameters.add(new Object[] { constructors[0].newInstance(), propertyName, value, type.getSimpleName() + "/" + propertyName }); @@ -111,7 +109,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { assertThat(getProperty(bean, propertyName)).satisfies(property -> { - PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean); + var persistentPropertyAccessor = getPersistentPropertyAccessor(bean); persistentPropertyAccessor.setProperty(property, value); assertThat(persistentPropertyAccessor.getProperty(property)).isEqualTo(value); @@ -123,7 +121,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { void shouldUseClassPropertyAccessorFactory(Object bean, String propertyName, Object value, String displayName) throws Exception { - BasicPersistentEntity persistentEntity = mappingContext + var persistentEntity = mappingContext .getRequiredPersistentEntity(bean.getClass()); assertThat(ReflectionTestUtils.getField(persistentEntity, "propertyAccessorFactory")) @@ -139,7 +137,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { private PersistentProperty getProperty(Object bean, String name) { - BasicPersistentEntity persistentEntity = mappingContext + var persistentEntity = mappingContext .getRequiredPersistentEntity(bean.getClass()); return persistentEntity.getPersistentProperty(name); } diff --git a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java index f409bf0b7..b833a7276 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java @@ -21,9 +21,9 @@ import java.io.Serializable; import java.time.LocalDateTime; import org.junit.jupiter.api.Test; + import org.springframework.data.annotation.Id; import org.springframework.data.mapping.PersistentEntity; -import org.springframework.data.mapping.PersistentPropertyAccessor; import org.springframework.data.mapping.context.SampleMappingContext; import org.springframework.data.mapping.context.SamplePersistentProperty; import org.springframework.data.repository.core.EntityInformation; @@ -51,7 +51,7 @@ public class ClassGeneratingPropertyAccessorFactoryEntityTypeTests { @Test // DATACMNS-853 void getIdentifierOfClassBasedEntity() { - Person jonDoe = new Person("JonDoe"); + var jonDoe = new Person("JonDoe"); assertThat(getEntityInformation(Person.class).getId(jonDoe)).isEqualTo(jonDoe.name); } @@ -59,8 +59,8 @@ public class ClassGeneratingPropertyAccessorFactoryEntityTypeTests { @Test // #2324 void shouldGeneratePropertyAccessorForKotlinClassWithMultipleCopyMethods() { - ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory(); - PersistentPropertyAccessor propertyAccessor = factory.getPropertyAccessor( + var factory = new ClassGeneratingPropertyAccessorFactory(); + var propertyAccessor = factory.getPropertyAccessor( mappingContext.getRequiredPersistentEntity(WithCustomCopyMethod.class), new WithCustomCopyMethod("", "", "", 1, LocalDateTime.MAX, LocalDateTime.MAX, "")); diff --git a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java index 686ba8a45..4e11bb43d 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java @@ -18,7 +18,6 @@ package org.springframework.data.mapping.model; import static org.assertj.core.api.Assertions.*; import static org.assertj.core.api.Assumptions.*; -import java.lang.reflect.Constructor; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -32,7 +31,6 @@ import org.springframework.data.annotation.AccessType.Type; import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.mapping.PersistentPropertyAccessor; import org.springframework.data.mapping.context.SampleMappingContext; -import org.springframework.data.mapping.context.SamplePersistentProperty; import org.springframework.data.mapping.model.subpackage.TypeInOtherPackage; import org.springframework.test.util.ReflectionTestUtils; @@ -51,7 +49,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { public static List parameters() throws ReflectiveOperationException { List parameters = new ArrayList<>(); - List propertyNames = Arrays.asList("privateField", "packageDefaultField", "protectedField", "publicField", + var propertyNames = Arrays.asList("privateField", "packageDefaultField", "protectedField", "publicField", "privateProperty", "packageDefaultProperty", "protectedProperty", "publicProperty", "syntheticProperty", "immutable", "wither"); @@ -79,7 +77,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { List parameters = new ArrayList<>(); - for (String propertyName : propertyNames) { + for (var propertyName : propertyNames) { parameters.add(new Object[] { bean, propertyName, expectedConstructorType, bean.getClass().getSimpleName() + "/" + propertyName }); } @@ -103,7 +101,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { assertThat(getProperty(bean, propertyName)).satisfies(property -> { - PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean); + var persistentPropertyAccessor = getPersistentPropertyAccessor(bean); if (property.isImmutable() && property.getWither() == null) { assertThatThrownBy(() -> persistentPropertyAccessor.setProperty(property, "value")) @@ -122,9 +120,9 @@ public class ClassGeneratingPropertyAccessorFactoryTests { void accessorShouldDeclareConstructor(Object bean, String propertyName, Class expectedConstructorType, String displayName) throws Exception { - PersistentPropertyAccessor persistentPropertyAccessor = getPersistentPropertyAccessor(bean); + var persistentPropertyAccessor = getPersistentPropertyAccessor(bean); - Constructor[] declaredConstructors = persistentPropertyAccessor.getClass().getDeclaredConstructors(); + var declaredConstructors = persistentPropertyAccessor.getClass().getDeclaredConstructors(); assertThat(declaredConstructors.length).isEqualTo(1); assertThat(declaredConstructors[0].getParameterCount()).isEqualTo(1); assertThat(declaredConstructors[0].getParameterTypes()[0]).isEqualTo(expectedConstructorType); @@ -162,7 +160,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { void shouldUseClassPropertyAccessorFactory(Object bean, String propertyName, Class expectedConstructorType, String displayName) throws Exception { - BasicPersistentEntity persistentEntity = mappingContext + var persistentEntity = mappingContext .getRequiredPersistentEntity(bean.getClass()); assertThat(ReflectionTestUtils.getField(persistentEntity, "propertyAccessorFactory")) @@ -178,7 +176,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { private PersistentProperty getProperty(Object bean, String name) { - BasicPersistentEntity persistentEntity = mappingContext + var persistentEntity = mappingContext .getRequiredPersistentEntity(bean.getClass()); return persistentEntity.getPersistentProperty(name); } diff --git a/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java index f79b3cede..68d06889a 100755 --- a/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java @@ -23,10 +23,10 @@ import lombok.Data; import lombok.Value; import org.junit.jupiter.api.Test; + import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.data.mapping.PersistentPropertyAccessor; -import org.springframework.data.mapping.PersistentPropertyPath; import org.springframework.data.mapping.context.SampleMappingContext; import org.springframework.data.mapping.context.SamplePersistentProperty; import org.springframework.format.support.DefaultFormattingConversionService; @@ -62,7 +62,7 @@ public class ConvertingPropertyAccessorUnitTests { @Test // DATACMNS-596 public void convertsPropertyValueToExpectedType() { - Entity entity = new Entity(); + var entity = new Entity(); entity.id = 1L; assertThat(getIdProperty()).satisfies( @@ -72,7 +72,7 @@ public class ConvertingPropertyAccessorUnitTests { @Test // DATACMNS-596 public void doesNotInvokeConversionForNullValues() { - ConversionService conversionService = mock(ConversionService.class); + var conversionService = mock(ConversionService.class); assertThat(getIdProperty()).satisfies(it -> { assertThat(getAccessor(new Entity(), conversionService).getProperty(it, Number.class)).isNull(); @@ -83,10 +83,10 @@ public class ConvertingPropertyAccessorUnitTests { @Test // DATACMNS-596 public void doesNotInvokeConversionIfTypeAlreadyMatches() { - Entity entity = new Entity(); + var entity = new Entity(); entity.id = 1L; - ConversionService conversionService = mock(ConversionService.class); + var conversionService = mock(ConversionService.class); assertThat(getIdProperty()).satisfies(it -> { assertThat(getAccessor(entity, conversionService).getProperty(it, Number.class)).isEqualTo(1L); @@ -97,7 +97,7 @@ public class ConvertingPropertyAccessorUnitTests { @Test // DATACMNS-596 public void convertsValueOnSetIfTypesDontMatch() { - Entity entity = new Entity(); + var entity = new Entity(); assertThat(getIdProperty()).satisfies(property -> { getAccessor(entity, CONVERSION_SERVICE).setProperty(property, "1"); @@ -117,15 +117,15 @@ public class ConvertingPropertyAccessorUnitTests { @Test // DATACMNS-1377 public void shouldConvertToPropertyPathLeafType() { - Order order = new Order(new Customer("1")); + var order = new Order(new Customer("1")); - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); - PersistentPropertyAccessor accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order); - ConvertingPropertyAccessor convertingAccessor = new ConvertingPropertyAccessor<>(accessor, + var accessor = context.getPersistentEntity(Order.class).getPropertyAccessor(order); + var convertingAccessor = new ConvertingPropertyAccessor(accessor, new DefaultConversionService()); - PersistentPropertyPath path = context.getPersistentPropertyPath("customer.firstname", + var path = context.getPersistentPropertyPath("customer.firstname", Order.class); convertingAccessor.setProperty(path, 2); @@ -141,8 +141,8 @@ public class ConvertingPropertyAccessorUnitTests { private static SamplePersistentProperty getIdProperty() { - SampleMappingContext mappingContext = new SampleMappingContext(); - BasicPersistentEntity entity = mappingContext + var mappingContext = new SampleMappingContext(); + var entity = mappingContext .getRequiredPersistentEntity(Entity.class); return entity.getPersistentProperty("id"); } diff --git a/src/test/java/org/springframework/data/mapping/model/EntityInstantiatorsUnitTests.java b/src/test/java/org/springframework/data/mapping/model/EntityInstantiatorsUnitTests.java index f615ac26f..7ff832b61 100755 --- a/src/test/java/org/springframework/data/mapping/model/EntityInstantiatorsUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/EntityInstantiatorsUnitTests.java @@ -47,7 +47,7 @@ class EntityInstantiatorsUnitTests { @Test void usesReflectionEntityInstantiatorAsDefaultFallback() { - EntityInstantiators instantiators = new EntityInstantiators(); + var instantiators = new EntityInstantiators(); assertThat(instantiators.getInstantiatorFor(entity)).isInstanceOf(ClassGeneratingEntityInstantiator.class); } @@ -58,7 +58,7 @@ class EntityInstantiatorsUnitTests { Map, EntityInstantiator> customInstantiators = Collections.singletonMap(String.class, customInstantiator); - EntityInstantiators instantiators = new EntityInstantiators(customInstantiators); + var instantiators = new EntityInstantiators(customInstantiators); assertThat(instantiators.getInstantiatorFor(entity)).isEqualTo(customInstantiator); } @@ -70,7 +70,7 @@ class EntityInstantiatorsUnitTests { Map, EntityInstantiator> customInstantiators = Collections.singletonMap(String.class, ReflectionEntityInstantiator.INSTANCE); - EntityInstantiators instantiators = new EntityInstantiators(customInstantiator, customInstantiators); + var instantiators = new EntityInstantiators(customInstantiator, customInstantiators); instantiators.getInstantiatorFor(entity); assertThat(instantiators.getInstantiatorFor(entity)).isEqualTo(customInstantiator); diff --git a/src/test/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessorUnitTests.java index 84fc84f86..ccede1201 100755 --- a/src/test/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessorUnitTests.java @@ -45,7 +45,7 @@ class IdPropertyIdentifierAccessorUnitTests { @Test // DATACMNS-599 void returnsIdentifierValue() { - SampleWithId sample = new SampleWithId(); + var sample = new SampleWithId(); sample.id = 1L; IdentifierAccessor accessor = new IdPropertyIdentifierAccessor( diff --git a/src/test/java/org/springframework/data/mapping/model/KotlinCopyMethodUnitTests.java b/src/test/java/org/springframework/data/mapping/model/KotlinCopyMethodUnitTests.java index f6937aa37..5de0f55b3 100644 --- a/src/test/java/org/springframework/data/mapping/model/KotlinCopyMethodUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/KotlinCopyMethodUnitTests.java @@ -17,8 +17,6 @@ package org.springframework.data.mapping.model; import static org.assertj.core.api.Assertions.*; -import java.util.Optional; - import org.junit.jupiter.api.Test; import org.springframework.data.mapping.context.SampleMappingContext; @@ -35,7 +33,7 @@ class KotlinCopyMethodUnitTests { @Test // #2324 void shouldLookupPrimaryConstructor() { - Optional optional = KotlinCopyMethod.findCopyMethod(DataClassKt.class); + var optional = KotlinCopyMethod.findCopyMethod(DataClassKt.class); assertThat(optional).hasValueSatisfying(actual -> { // $this, 1 component, 1 defaulting mask, 1 Object marker @@ -49,7 +47,7 @@ class KotlinCopyMethodUnitTests { @Test // #2324 void shouldLookupPrimaryConstructorWhenTwoCopyMethodsArePresent() { - Optional optional = KotlinCopyMethod.findCopyMethod(WithCustomCopyMethod.class); + var optional = KotlinCopyMethod.findCopyMethod(WithCustomCopyMethod.class); assertThat(optional).hasValueSatisfying(actual -> { // $this, 7 components, 1 defaulting mask, 1 Object marker @@ -67,7 +65,7 @@ class KotlinCopyMethodUnitTests { @Test // #2324 void shouldUsePublicKotlinMethodForSinglePropertyEntities() { - KotlinCopyMethod copyMethod = KotlinCopyMethod.findCopyMethod(DataClassKt.class).get(); + var copyMethod = KotlinCopyMethod.findCopyMethod(DataClassKt.class).get(); assertThat(copyMethod.shouldUsePublicCopyMethod(mappingContext.getRequiredPersistentEntity(DataClassKt.class))) .isTrue(); diff --git a/src/test/java/org/springframework/data/mapping/model/ParameterizedKotlinInstantiatorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/ParameterizedKotlinInstantiatorUnitTests.java index e092b66fc..3378417b7 100644 --- a/src/test/java/org/springframework/data/mapping/model/ParameterizedKotlinInstantiatorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ParameterizedKotlinInstantiatorUnitTests.java @@ -62,10 +62,10 @@ public class ParameterizedKotlinInstantiatorUnitTests { @Parameters(name = "{5}") public static List parameters() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); - KotlinClassGeneratingEntityInstantiator generatingInstantiator = new KotlinClassGeneratingEntityInstantiator(); - ReflectionEntityInstantiator reflectionInstantiator = ReflectionEntityInstantiator.INSTANCE; + var generatingInstantiator = new KotlinClassGeneratingEntityInstantiator(); + var reflectionInstantiator = ReflectionEntityInstantiator.INSTANCE; List fixtures = new ArrayList<>(); fixtures.addAll(createFixture(context, With32Args.class, 32, generatingInstantiator)); @@ -79,7 +79,7 @@ public class ParameterizedKotlinInstantiatorUnitTests { private static List createFixture(SampleMappingContext context, Class entityType, int propertyCount, EntityInstantiator entityInstantiator) { - BasicPersistentEntity persistentEntity = context.getPersistentEntity(entityType); + var persistentEntity = context.getPersistentEntity(entityType); return IntStream.range(0, propertyCount).mapToObj(i -> { @@ -92,11 +92,11 @@ public class ParameterizedKotlinInstantiatorUnitTests { @Test // DATACMNS-1402 public void shouldCreateInstanceWithSinglePropertySet() { - Object instance = entityInstantiator.createInstance(entity, new SingleParameterValueProvider()); + var instance = entityInstantiator.createInstance(entity, new SingleParameterValueProvider()); - for (int i = 0; i < propertyCount; i++) { + for (var i = 0; i < propertyCount; i++) { - Object value = ReflectionTestUtils.getField(instance, Integer.toString(i)); + var value = ReflectionTestUtils.getField(instance, Integer.toString(i)); if (propertyUnderTestIndex == i) { assertThat(value).describedAs("Property " + i + " of " + entity).isEqualTo(valueToSet); @@ -109,11 +109,11 @@ public class ParameterizedKotlinInstantiatorUnitTests { @Test // DATACMNS-1402 public void shouldCreateInstanceWithAllExceptSinglePropertySet() { - Object instance = entityInstantiator.createInstance(entity, new AllButParameterValueProvider()); + var instance = entityInstantiator.createInstance(entity, new AllButParameterValueProvider()); - for (int i = 0; i < propertyCount; i++) { + for (var i = 0; i < propertyCount; i++) { - Object value = ReflectionTestUtils.getField(instance, Integer.toString(i)); + var value = ReflectionTestUtils.getField(instance, Integer.toString(i)); if (propertyUnderTestIndex == i) { assertThat(value).describedAs("Property " + i + " of " + entity).isEqualTo(""); diff --git a/src/test/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategyUnitTests.java b/src/test/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategyUnitTests.java index ba6e4f6e5..082caa7c8 100644 --- a/src/test/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategyUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PersistentEntityIsNewStrategyUnitTests.java @@ -42,7 +42,7 @@ class PersistentEntityIsNewStrategyUnitTests { PersistentEntity entity = context.getRequiredPersistentEntity(PrimitiveIdEntity.class); - PrimitiveIdEntity bean = new PrimitiveIdEntity(); + var bean = new PrimitiveIdEntity(); assertThat(entity.isNew(bean)).isTrue(); } @@ -51,7 +51,7 @@ class PersistentEntityIsNewStrategyUnitTests { PersistentEntity entity = context.getRequiredPersistentEntity(PrimitiveIdEntity.class); - PrimitiveIdEntity bean = new PrimitiveIdEntity(); + var bean = new PrimitiveIdEntity(); bean.id = 1L; assertThat(entity.isNew(bean)).isFalse(); @@ -62,7 +62,7 @@ class PersistentEntityIsNewStrategyUnitTests { PersistentEntity entity = context.getRequiredPersistentEntity(PrimitiveWrapperIdEntity.class); - PrimitiveWrapperIdEntity bean = new PrimitiveWrapperIdEntity(); + var bean = new PrimitiveWrapperIdEntity(); assertThat(entity.isNew(bean)).isTrue(); } @@ -71,7 +71,7 @@ class PersistentEntityIsNewStrategyUnitTests { PersistentEntity entity = context.getRequiredPersistentEntity(PrimitiveWrapperIdEntity.class); - PrimitiveWrapperIdEntity bean = new PrimitiveWrapperIdEntity(); + var bean = new PrimitiveWrapperIdEntity(); bean.id = 0L; assertThat(entity.isNew(bean)).isFalse(); @@ -108,7 +108,7 @@ class PersistentEntityIsNewStrategyUnitTests { PersistentEntity entity = context.getRequiredPersistentEntity(VersionedEntity.class); - VersionedEntity bean = new VersionedEntity(); + var bean = new VersionedEntity(); bean.id = 1L; assertThat(entity.isNew(bean)).isTrue(); diff --git a/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java b/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java index 6423f45fa..997d8282d 100755 --- a/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java @@ -17,7 +17,6 @@ package org.springframework.data.mapping.model; import static org.assertj.core.api.Assertions.*; -import java.util.Iterator; import java.util.Optional; import org.junit.jupiter.api.Test; @@ -28,7 +27,6 @@ import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.data.mapping.MappingException; import org.springframework.data.mapping.PersistentEntity; import org.springframework.data.mapping.PersistentProperty; -import org.springframework.data.mapping.PreferredConstructor.Parameter; import org.springframework.data.mapping.model.PersistentEntityParameterValueProviderUnitTests.Outer.Inner; import org.springframework.data.util.ClassTypeInformation; @@ -59,7 +57,7 @@ class PersistentEntityParameterValueProviderUnitTests

{ - Iterator> iterator = constructor.getParameters().iterator(); + var iterator = constructor.getParameters().iterator(); ParameterValueProvider

provider = new PersistentEntityParameterValueProvider<>(entity, propertyValueProvider, outer); diff --git a/src/test/java/org/springframework/data/mapping/model/PersistentPropertyAccessorTests.java b/src/test/java/org/springframework/data/mapping/model/PersistentPropertyAccessorTests.java index 437d8a5cf..1da1ddd7f 100644 --- a/src/test/java/org/springframework/data/mapping/model/PersistentPropertyAccessorTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PersistentPropertyAccessorTests.java @@ -51,10 +51,10 @@ public class PersistentPropertyAccessorTests { List parameters = new ArrayList<>(); - ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory(); + var factory = new ClassGeneratingPropertyAccessorFactory(); - Function> beanWrapper = BeanWrapper::new; - Function> classGenerating = it -> factory + var beanWrapper = (Function>) BeanWrapper::new; + var classGenerating = (Function>) it -> factory .getPropertyAccessor(MAPPING_CONTEXT.getRequiredPersistentEntity(it.getClass()), it); parameters.add(new Object[] { beanWrapper, "BeanWrapper" }); @@ -67,9 +67,9 @@ public class PersistentPropertyAccessorTests { @MethodSource("parameters") void shouldSetProperty(Function> propertyAccessorFunction) { - DataClass bean = new DataClass(); + var bean = new DataClass(); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "id"); + var property = getProperty(bean, "id"); accessor.setProperty(property, "value"); @@ -82,9 +82,9 @@ public class PersistentPropertyAccessorTests { @MethodSource("parameters") void shouldSetKotlinDataClassProperty(Function> propertyAccessorFunction) { - DataClassKt bean = new DataClassKt("foo"); + var bean = new DataClassKt("foo"); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "id"); + var property = getProperty(bean, "id"); accessor.setProperty(property, "value"); @@ -98,9 +98,9 @@ public class PersistentPropertyAccessorTests { void shouldSetExtendedKotlinDataClassProperty( Function> propertyAccessorFunction) { - ExtendedDataClassKt bean = new ExtendedDataClassKt(0, "bar"); + var bean = new ExtendedDataClassKt(0, "bar"); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "id"); + var property = getProperty(bean, "id"); accessor.setProperty(property, 1L); @@ -113,9 +113,9 @@ public class PersistentPropertyAccessorTests { @MethodSource("parameters") void shouldUseKotlinGeneratedCopyMethod(Function> propertyAccessorFunction) { - UnusedCustomCopy bean = new UnusedCustomCopy(new Timestamp(100)); + var bean = new UnusedCustomCopy(new Timestamp(100)); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "date"); + var property = getProperty(bean, "date"); accessor.setProperty(property, new Timestamp(200)); @@ -129,9 +129,9 @@ public class PersistentPropertyAccessorTests { void kotlinCopyMethodShouldNotSetUnsettableProperty( Function> propertyAccessorFunction) { - SingleSettableProperty bean = new SingleSettableProperty(1.1); + var bean = new SingleSettableProperty(1.1); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "version"); + var property = getProperty(bean, "version"); assertThatThrownBy(() -> accessor.setProperty(property, 1)).isInstanceOf(UnsupportedOperationException.class); } @@ -141,13 +141,13 @@ public class PersistentPropertyAccessorTests { void shouldSet17thImmutableNullableKotlinProperty( Function> propertyAccessorFunction) { - With33Args bean = new With33Args(); + var bean = new With33Args(); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "17"); + var property = getProperty(bean, "17"); accessor.setProperty(property, "foo"); - With33Args updated = (With33Args) accessor.getBean(); + var updated = (With33Args) accessor.getBean(); assertThat(updated.get17()).isEqualTo("foo"); } @@ -155,9 +155,9 @@ public class PersistentPropertyAccessorTests { @MethodSource("parameters") void shouldWitherProperty(Function> propertyAccessorFunction) { - ValueClass bean = new ValueClass("foo", "bar"); + var bean = new ValueClass("foo", "bar"); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "id"); + var property = getProperty(bean, "id"); accessor.setProperty(property, "value"); @@ -170,9 +170,9 @@ public class PersistentPropertyAccessorTests { @MethodSource("parameters") void shouldRejectImmutablePropertyUpdate(Function> propertyAccessorFunction) { - ValueClass bean = new ValueClass("foo", "bar"); + var bean = new ValueClass("foo", "bar"); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "immutable"); + var property = getProperty(bean, "immutable"); assertThatThrownBy(() -> accessor.setProperty(property, "value")).isInstanceOf(UnsupportedOperationException.class); } @@ -182,9 +182,9 @@ public class PersistentPropertyAccessorTests { void shouldRejectImmutableKotlinClassPropertyUpdate( Function> propertyAccessorFunction) { - ValueClassKt bean = new ValueClassKt("foo"); + var bean = new ValueClassKt("foo"); PersistentPropertyAccessor accessor = propertyAccessorFunction.apply(bean); - SamplePersistentProperty property = getProperty(bean, "immutable"); + var property = getProperty(bean, "immutable"); assertThatThrownBy(() -> accessor.setProperty(property, "value")).isInstanceOf(UnsupportedOperationException.class); } @@ -192,14 +192,14 @@ public class PersistentPropertyAccessorTests { @Test // DATACMNS-1422 void shouldUseReflectionIfFrameworkTypesNotVisible() throws Exception { - HidingClassLoader classLoader = HidingClassLoader.hide(Assert.class); + var classLoader = HidingClassLoader.hide(Assert.class); classLoader.excludePackage("org.springframework.data.mapping.model"); - Class entityType = classLoader + var entityType = classLoader .loadClass("org.springframework.data.mapping.model.PersistentPropertyAccessorTests$ClassLoaderTest"); - ClassGeneratingPropertyAccessorFactory factory = new ClassGeneratingPropertyAccessorFactory(); - BasicPersistentEntity entity = MAPPING_CONTEXT + var factory = new ClassGeneratingPropertyAccessorFactory(); + var entity = MAPPING_CONTEXT .getRequiredPersistentEntity(entityType); assertThat(factory.isSupported(entity)).isFalse(); diff --git a/src/test/java/org/springframework/data/mapping/model/PropertyAccessorClassGeneratorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/PropertyAccessorClassGeneratorUnitTests.java index 9f47b31b4..319a2b610 100644 --- a/src/test/java/org/springframework/data/mapping/model/PropertyAccessorClassGeneratorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PropertyAccessorClassGeneratorUnitTests.java @@ -33,7 +33,7 @@ class PropertyAccessorClassGeneratorUnitTests { @Test // DATACMNS-1602 void reusesAlreadyDeclaredClass() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Sample.class); PropertyAccessorClassGenerator.generateCustomAccessorClass(entity); diff --git a/src/test/java/org/springframework/data/mapping/model/PropertyUnitTests.java b/src/test/java/org/springframework/data/mapping/model/PropertyUnitTests.java index 67a83a288..4d8fae02d 100644 --- a/src/test/java/org/springframework/data/mapping/model/PropertyUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PropertyUnitTests.java @@ -45,7 +45,7 @@ class PropertyUnitTests { @Test // DATACMNS-1322 void shouldDiscoverWitherMethod() { - Property property = Property.of(ClassTypeInformation.from(WitherType.class), + var property = Property.of(ClassTypeInformation.from(WitherType.class), ReflectionUtils.findField(WitherType.class, "id")); assertThat(property.getWither()).isPresent().hasValueSatisfying(actual -> { @@ -57,7 +57,7 @@ class PropertyUnitTests { @Test // DATACMNS-1421 void shouldDiscoverDerivedWitherMethod() { - Property property = Property.of(ClassTypeInformation.from(DerivedWitherClass.class), + var property = Property.of(ClassTypeInformation.from(DerivedWitherClass.class), ReflectionUtils.findField(DerivedWitherClass.class, "id")); assertThat(property.getWither()).isPresent().hasValueSatisfying(actual -> { @@ -70,7 +70,7 @@ class PropertyUnitTests { @Test // DATACMNS-1421 void shouldNotDiscoverWitherMethodWithIncompatibleReturnType() { - Property property = Property.of(ClassTypeInformation.from(AnotherLevel.class), + var property = Property.of(ClassTypeInformation.from(AnotherLevel.class), ReflectionUtils.findField(AnotherLevel.class, "id")); assertThat(property.getWither()).isEmpty(); diff --git a/src/test/java/org/springframework/data/mapping/model/ReflectionEntityInstantiatorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/ReflectionEntityInstantiatorUnitTests.java index 5b40f5b7f..788d4231a 100755 --- a/src/test/java/org/springframework/data/mapping/model/ReflectionEntityInstantiatorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ReflectionEntityInstantiatorUnitTests.java @@ -71,7 +71,7 @@ class ReflectionEntityInstantiatorUnitTests

> { doReturn(constructor).when(entity).getPersistenceConstructor(); - Object instance = INSTANCE.createInstance(entity, provider); + var instance = INSTANCE.createInstance(entity, provider); assertThat(instance).isInstanceOf(Foo.class); assertThat(constructor) @@ -91,15 +91,15 @@ class ReflectionEntityInstantiatorUnitTests

> { @Test // DATACMNS-134 void createsInnerClassInstanceCorrectly() { - BasicPersistentEntity entity = new BasicPersistentEntity<>(from(Inner.class)); + var entity = new BasicPersistentEntity(from(Inner.class)); assertThat(entity.getPersistenceConstructor()).satisfies(it -> { - Parameter parameter = it.getParameters().iterator().next(); + var parameter = it.getParameters().iterator().next(); Object outer = new Outer(); when(provider.getParameterValue(parameter)).thenReturn(outer); - Inner instance = INSTANCE.createInstance(entity, provider); + var instance = INSTANCE.createInstance(entity, provider); assertThat(instance).isNotNull(); diff --git a/src/test/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessorUnitTests.java b/src/test/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessorUnitTests.java index 0855370d3..454ffe776 100644 --- a/src/test/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/SimplePersistentPropertyPathAccessorUnitTests.java @@ -30,10 +30,10 @@ import java.util.Map; import java.util.stream.Stream; import org.junit.jupiter.api.Test; + import org.springframework.data.mapping.AccessOptions; import org.springframework.data.mapping.AccessOptions.SetOptions.SetNulls; import org.springframework.data.mapping.PersistentEntity; -import org.springframework.data.mapping.PersistentPropertyPath; import org.springframework.data.mapping.PersistentPropertyPathAccessor; import org.springframework.data.mapping.context.SampleMappingContext; import org.springframework.data.mapping.context.SamplePersistentProperty; @@ -55,7 +55,7 @@ class SimplePersistentPropertyPathAccessorUnitTests { @Test // DATACMNS-1438 void setsPropertyContainingCollectionPathForAllElements() { - Customers customers = new Customers(Arrays.asList(first, second), Collections.emptyMap()); + var customers = new Customers(Arrays.asList(first, second), Collections.emptyMap()); assertFirstnamesSetFor(customers, "customers.firstname"); } @@ -67,7 +67,7 @@ class SimplePersistentPropertyPathAccessorUnitTests { map.put("1", first); map.put("2", second); - Customers customers = new Customers(Collections.emptyList(), map); + var customers = new Customers(Collections.emptyList(), map); assertFirstnamesSetFor(customers, "customerMap.firstname"); } @@ -75,10 +75,10 @@ class SimplePersistentPropertyPathAccessorUnitTests { @Test // DATACMNS-1461 void skipsNullValueIfConfigured() { - CustomerWrapper wrapper = new CustomerWrapper(null); + var wrapper = new CustomerWrapper(null); - PersistentPropertyPathAccessor accessor = getAccessor(wrapper); - PersistentPropertyPath path = context.getPersistentPropertyPath("customer.firstname", + var accessor = getAccessor(wrapper); + var path = context.getPersistentPropertyPath("customer.firstname", CustomerWrapper.class); assertThatCode(() -> { @@ -89,10 +89,10 @@ class SimplePersistentPropertyPathAccessorUnitTests { @Test // DATACMNS-1296 void skipsIntermediateNullsWhenSettingNestedValues() { - CustomerWrapperWrapper wrapper = new CustomerWrapperWrapper(null); + var wrapper = new CustomerWrapperWrapper(null); - PersistentPropertyPathAccessor accessor = getAccessor(wrapper); - PersistentPropertyPath path = context + var accessor = getAccessor(wrapper); + var path = context .getPersistentPropertyPath("wrapper.customer.firstname", CustomerWrapperWrapper.class); assertThatCode(() -> { @@ -102,7 +102,7 @@ class SimplePersistentPropertyPathAccessorUnitTests { private void assertFirstnamesSetFor(Customers customers, String path) { - PersistentPropertyPath propertyPath = context.getPersistentPropertyPath(path, + var propertyPath = context.getPersistentPropertyPath(path, Customers.class); getAccessor(customers).setProperty(propertyPath, "firstname"); @@ -114,10 +114,10 @@ class SimplePersistentPropertyPathAccessorUnitTests { private PersistentPropertyPathAccessor getAccessor(T source) { - Class type = source.getClass(); + var type = source.getClass(); PersistentEntity entity = context.getRequiredPersistentEntity(type); - PersistentPropertyPathAccessor accessor = entity.getPropertyPathAccessor(source); + var accessor = entity.getPropertyPathAccessor(source); return accessor; } diff --git a/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java index 6ab941795..908e22fae 100755 --- a/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java @@ -51,8 +51,8 @@ class MapAccessingMethodInterceptorUnitTests { when(invocation.proceed()).thenReturn(map.toString()); when(invocation.getMethod()).thenReturn(Object.class.getMethod("toString")); - MapAccessingMethodInterceptor interceptor = new MapAccessingMethodInterceptor(map); - Object result = interceptor.invoke(invocation); + var interceptor = new MapAccessingMethodInterceptor(map); + var result = interceptor.invoke(invocation); assertThat(result).isEqualTo(map.toString()); } @@ -65,7 +65,7 @@ class MapAccessingMethodInterceptorUnitTests { when(invocation.getMethod()).thenReturn(Sample.class.getMethod("setName", String.class)); when(invocation.getArguments()).thenReturn(new Object[] { "Foo" }); - Object result = new MapAccessingMethodInterceptor(map).invoke(invocation); + var result = new MapAccessingMethodInterceptor(map).invoke(invocation); assertThat(result).isNull(); assertThat(map.get("name")).isEqualTo("Foo"); @@ -79,7 +79,7 @@ class MapAccessingMethodInterceptorUnitTests { when(invocation.getMethod()).thenReturn(Sample.class.getMethod("getName")); - Object result = new MapAccessingMethodInterceptor(map).invoke(invocation); + var result = new MapAccessingMethodInterceptor(map).invoke(invocation); assertThat(result).isEqualTo("Foo"); } diff --git a/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java index 5051f7087..b06e72b58 100755 --- a/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java @@ -117,12 +117,12 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Object result = methodInterceptor + var result = methodInterceptor .invoke(mockInvocationOf("getHelperCollection", Collections.singleton(mock(Helper.class)))); assertThat(result).isInstanceOf(Set.class); - Set projections = (Set) result; + var projections = (Set) result; assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class); } @@ -132,12 +132,12 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Object result = methodInterceptor + var result = methodInterceptor .invoke(mockInvocationOf("getHelperList", Collections.singletonList(mock(Helper.class)))); assertThat(result).isInstanceOf(List.class); - List projections = (List) result; + var projections = (List) result; assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class); } @@ -148,11 +148,11 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Object result = methodInterceptor.invoke(mockInvocationOf("getHelperArray", new Helper[] { mock(Helper.class) })); + var result = methodInterceptor.invoke(mockInvocationOf("getHelperArray", new Helper[] { mock(Helper.class) })); assertThat(result).isInstanceOf(Collection.class); - Collection projections = (Collection) result; + var projections = (Collection) result; assertThat(projections).hasSize(1).hasOnlyElementsOfType(HelperProjection.class); } @@ -164,12 +164,12 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Object result = methodInterceptor + var result = methodInterceptor .invoke(mockInvocationOf("getHelperMap", Collections.singletonMap("foo", mock(Helper.class)))); assertThat(result).isInstanceOf(Map.class); - Map projections = (Map) result; + var projections = (Map) result; assertThat(projections).hasSize(1).matches(map -> map.get("foo") instanceof HelperProjection); } @@ -180,12 +180,12 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Helper reference = mock(Helper.class); - Object result = methodInterceptor.invoke(mockInvocationOf("getHelperCollection", reference)); + var reference = mock(Helper.class); + var result = methodInterceptor.invoke(mockInvocationOf("getHelperCollection", reference)); assertThat(result).isInstanceOf(Collection.class); - Collection collection = (Collection) result; + var collection = (Collection) result; assertThat(collection).hasSize(1).hasOnlyElementsOfType(HelperProjection.class); } @@ -196,12 +196,12 @@ class ProjectingMethodInterceptorUnitTests { MethodInterceptor methodInterceptor = new ProjectingMethodInterceptor(new ProxyProjectionFactory(), interceptor, conversionService); - Object result = methodInterceptor + var result = methodInterceptor .invoke(mockInvocationOf("getHelperEnumSet", Collections.singletonList(HelperEnum.Helpful))); assertThat(result).isInstanceOf(EnumSet.class); - Collection collection = (Collection) result; + var collection = (Collection) result; assertThat(collection).containsOnly(HelperEnum.Helpful); } diff --git a/src/test/java/org/springframework/data/projection/ProjectionIntegrationTests.java b/src/test/java/org/springframework/data/projection/ProjectionIntegrationTests.java index 4cd6f0cc8..1d078aff3 100755 --- a/src/test/java/org/springframework/data/projection/ProjectionIntegrationTests.java +++ b/src/test/java/org/springframework/data/projection/ProjectionIntegrationTests.java @@ -21,10 +21,8 @@ import org.junit.jupiter.api.Test; import com.fasterxml.jackson.databind.ObjectMapper; import com.jayway.jsonpath.Configuration.ConfigurationBuilder; -import com.jayway.jsonpath.DocumentContext; import com.jayway.jsonpath.JsonPath; import com.jayway.jsonpath.Option; -import com.jayway.jsonpath.ParseContext; /** * Integration tests for projections. @@ -36,11 +34,11 @@ class ProjectionIntegrationTests { @Test // DATACMNS-909 void jacksonSerializationDoesNotExposeDecoratedClass() throws Exception { - ProxyProjectionFactory factory = new ProxyProjectionFactory(); - SampleProjection projection = factory.createProjection(SampleProjection.class); + var factory = new ProxyProjectionFactory(); + var projection = factory.createProjection(SampleProjection.class); - ParseContext context = JsonPath.using(new ConfigurationBuilder().options(Option.SUPPRESS_EXCEPTIONS).build()); - DocumentContext json = context.parse(new ObjectMapper().writeValueAsString(projection)); + var context = JsonPath.using(new ConfigurationBuilder().options(Option.SUPPRESS_EXCEPTIONS).build()); + var json = context.parse(new ObjectMapper().writeValueAsString(projection)); assertThat(json.read("$.decoratedClass", String.class)).isNull(); } diff --git a/src/test/java/org/springframework/data/projection/PropertyAccessingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/PropertyAccessingMethodInterceptorUnitTests.java index c82720997..152b11a63 100755 --- a/src/test/java/org/springframework/data/projection/PropertyAccessingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/PropertyAccessingMethodInterceptorUnitTests.java @@ -42,7 +42,7 @@ class PropertyAccessingMethodInterceptorUnitTests { @Test // DATAREST-221 void triggersPropertyAccessOnTarget() throws Throwable { - Source source = new Source(); + var source = new Source(); source.firstname = "Dave"; when(invocation.getMethod()).thenReturn(Projection.class.getMethod("getFirstname")); @@ -79,7 +79,7 @@ class PropertyAccessingMethodInterceptorUnitTests { @Test // DATACMNS-820 void triggersWritePropertyAccessOnTarget() throws Throwable { - Source source = new Source(); + var source = new Source(); source.firstname = "Dave"; when(invocation.getMethod()).thenReturn(Projection.class.getMethod("setFirstname", String.class)); @@ -93,7 +93,7 @@ class PropertyAccessingMethodInterceptorUnitTests { @Test // DATACMNS-820 void throwsAppropriateExceptionIfTheInvocationHasNoArguments() throws Throwable { - Source source = new Source(); + var source = new Source(); when(invocation.getMethod()).thenReturn(Projection.class.getMethod("setFirstname", String.class)); when(invocation.getArguments()).thenReturn(new Object[0]); diff --git a/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java b/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java index bc10a3441..d31458583 100755 --- a/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java @@ -17,7 +17,6 @@ package org.springframework.data.projection; import static org.assertj.core.api.Assertions.*; -import java.beans.PropertyDescriptor; import java.lang.reflect.Proxy; import java.time.LocalDateTime; import java.util.Calendar; @@ -25,12 +24,11 @@ import java.util.Collections; import java.util.Date; import java.util.GregorianCalendar; import java.util.HashMap; -import java.util.List; import java.util.Map; import java.util.Optional; import org.junit.jupiter.api.Test; -import org.springframework.aop.Advisor; + import org.springframework.aop.TargetClassAware; import org.springframework.aop.framework.Advised; import org.springframework.test.util.ReflectionTestUtils; @@ -70,7 +68,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATAREST-221, DATACMNS-630 void createsProjectingProxy() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; customer.lastname = "Matthews"; @@ -78,7 +76,7 @@ class ProxyProjectionFactoryUnitTests { customer.address.city = "New York"; customer.address.zipCode = "ZIP"; - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); assertThat(excerpt.getFirstname()).isEqualTo("Dave"); assertThat(excerpt.getAddress().getZipCode()).isEqualTo("ZIP"); @@ -87,7 +85,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATAREST-221, DATACMNS-630 void proxyExposesTargetClassAware() { - CustomerExcerpt proxy = factory.createProjection(CustomerExcerpt.class); + var proxy = factory.createProjection(CustomerExcerpt.class); assertThat(proxy).isInstanceOf(TargetClassAware.class); assertThat(((TargetClassAware) proxy).getTargetClass()).isEqualTo(HashMap.class); @@ -101,7 +99,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-630 void createsMapBasedProxyFromSource() { - HashMap addressSource = new HashMap<>(); + var addressSource = new HashMap(); addressSource.put("zipCode", "ZIP"); addressSource.put("city", "NewYork"); @@ -110,11 +108,11 @@ class ProxyProjectionFactoryUnitTests { source.put("lastname", "Matthews"); source.put("address", addressSource); - CustomerExcerpt projection = factory.createProjection(CustomerExcerpt.class, source); + var projection = factory.createProjection(CustomerExcerpt.class, source); assertThat(projection.getFirstname()).isEqualTo("Dave"); - AddressExcerpt address = projection.getAddress(); + var address = projection.getAddress(); assertThat(address).isNotNull(); assertThat(address.getZipCode()).isEqualTo("ZIP"); } @@ -122,7 +120,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-630 void createsEmptyMapBasedProxy() { - CustomerProxy proxy = factory.createProjection(CustomerProxy.class); + var proxy = factory.createProjection(CustomerProxy.class); assertThat(proxy).isNotNull(); @@ -133,8 +131,8 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-630 void returnsAllPropertiesAsInputProperties() { - ProjectionInformation projectionInformation = factory.getProjectionInformation(CustomerExcerpt.class); - List result = projectionInformation.getInputProperties(); + var projectionInformation = factory.getProjectionInformation(CustomerExcerpt.class); + var result = projectionInformation.getInputProperties(); assertThat(result).hasSize(6); } @@ -142,10 +140,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-655 void invokesDefaultMethodOnProxy() { - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class); + var excerpt = factory.createProjection(CustomerExcerpt.class); - Advised advised = (Advised) ReflectionTestUtils.getField(Proxy.getInvocationHandler(excerpt), "advised"); - Advisor[] advisors = advised.getAdvisors(); + var advised = (Advised) ReflectionTestUtils.getField(Proxy.getInvocationHandler(excerpt), "advised"); + var advisors = advised.getAdvisors(); assertThat(advisors.length).isGreaterThan(0); assertThat(advisors[0].getAdvice()).isInstanceOf(DefaultMethodInvokingMethodInterceptor.class); @@ -154,7 +152,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-648 void exposesProxyTarget() { - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class); + var excerpt = factory.createProjection(CustomerExcerpt.class); assertThat(excerpt).isInstanceOf(TargetAware.class); assertThat(((TargetAware) excerpt).getTarget()).isInstanceOf(Map.class); @@ -163,10 +161,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-722 void doesNotProjectPrimitiveArray() { - Customer customer = new Customer(); + var customer = new Customer(); customer.picture = "binarydata".getBytes(); - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); assertThat(excerpt.getPicture()).isEqualTo(customer.picture); } @@ -174,14 +172,14 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-722 void projectsNonPrimitiveArray() { - Address address = new Address(); + var address = new Address(); address.city = "New York"; address.zipCode = "ZIP"; - Customer customer = new Customer(); + var customer = new Customer(); customer.shippingAddresses = new Address[] { address }; - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); assertThat(excerpt.getShippingAddresses()).hasSize(1); } @@ -189,10 +187,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-782 void convertsPrimitiveValues() { - Customer customer = new Customer(); + var customer = new Customer(); customer.id = 1L; - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); assertThat(excerpt.getId()).isEqualTo(customer.id.toString()); } @@ -200,7 +198,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-89 void exposesProjectionInformationCorrectly() { - ProjectionInformation information = factory.getProjectionInformation(CustomerExcerpt.class); + var information = factory.getProjectionInformation(CustomerExcerpt.class); assertThat(information.getType()).isEqualTo(CustomerExcerpt.class); assertThat(information.isClosed()).isTrue(); @@ -209,10 +207,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-829 void projectsMapOfStringToObjectCorrectly() { - Customer customer = new Customer(); + var customer = new Customer(); customer.data = Collections.singletonMap("key", null); - Map data = factory.createProjection(CustomerExcerpt.class, customer).getData(); + var data = factory.createProjection(CustomerExcerpt.class, customer).getData(); assertThat(data).isNotNull(); assertThat(data.containsKey("key")).isTrue(); @@ -222,7 +220,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1121 void doesNotCreateWrappingProxyIfTargetImplementsProjectionInterface() { - Customer customer = new Customer(); + var customer = new Customer(); assertThat(factory.createProjection(Contact.class, customer)).isSameAs(customer); } @@ -230,10 +228,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1762 void supportsOptionalAsReturnTypeIfEmpty() { - Customer customer = new Customer(); + var customer = new Customer(); customer.picture = null; - CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer); + var excerpt = factory.createProjection(CustomerWithOptional.class, customer); assertThat(excerpt.getPicture()).isEmpty(); } @@ -241,10 +239,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1762 void supportsOptionalAsReturnTypeIfPresent() { - Customer customer = new Customer(); + var customer = new Customer(); customer.picture = new byte[] { 1, 2, 3 }; - CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer); + var excerpt = factory.createProjection(CustomerWithOptional.class, customer); assertThat(excerpt.getPicture()).hasValueSatisfying(bytes -> { assertThat(bytes).isEqualTo(new byte[] { 1, 2, 3 }); @@ -254,10 +252,10 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1762 void supportsOptionalBackedByOptional() { - Customer customer = new Customer(); + var customer = new Customer(); customer.optional = Optional.of("foo"); - CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer); + var excerpt = factory.createProjection(CustomerWithOptional.class, customer); assertThat(excerpt.getOptional()).hasValue("foo"); } @@ -265,7 +263,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1762 void supportsOptionalWithProjectionAsReturnTypeIfPresent() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; customer.lastname = "Matthews"; @@ -273,7 +271,7 @@ class ProxyProjectionFactoryUnitTests { customer.address.city = "New York"; customer.address.zipCode = "ZIP"; - CustomerWithOptionalHavingProjection excerpt = factory.createProjection(CustomerWithOptionalHavingProjection.class, + var excerpt = factory.createProjection(CustomerWithOptionalHavingProjection.class, customer); assertThat(excerpt.getFirstname()).isEqualTo("Dave"); @@ -285,7 +283,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1836 void supportsDateToLocalDateTimeConversion() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; customer.birthdate = new GregorianCalendar(1967, Calendar.JANUARY, 9).getTime(); @@ -293,7 +291,7 @@ class ProxyProjectionFactoryUnitTests { customer.address.city = "New York"; customer.address.zipCode = "ZIP"; - CustomerWithLocalDateTime excerpt = factory.createProjection(CustomerWithLocalDateTime.class, customer); + var excerpt = factory.createProjection(CustomerWithLocalDateTime.class, customer); assertThat(excerpt.getFirstname()).isEqualTo("Dave"); assertThat(excerpt.getBirthdate()).isEqualTo(LocalDateTime.of(1967, 1, 9, 0, 0)); @@ -302,7 +300,7 @@ class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-1836 void supportsNullableWrapperDateToLocalDateTimeConversion() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; customer.birthdate = new GregorianCalendar(1967, Calendar.JANUARY, 9).getTime(); @@ -310,7 +308,7 @@ class ProxyProjectionFactoryUnitTests { customer.address.city = "New York"; customer.address.zipCode = "ZIP"; - CustomerWithOptional excerpt = factory.createProjection(CustomerWithOptional.class, customer); + var excerpt = factory.createProjection(CustomerWithOptional.class, customer); assertThat(excerpt.getFirstname()).isEqualTo("Dave"); assertThat(excerpt.getBirthdate()).contains(LocalDateTime.of(1967, 1, 9, 0, 0)); diff --git a/src/test/java/org/springframework/data/projection/SpelAwareProxyProjectionFactoryUnitTests.java b/src/test/java/org/springframework/data/projection/SpelAwareProxyProjectionFactoryUnitTests.java index a2189192e..014bb2ada 100755 --- a/src/test/java/org/springframework/data/projection/SpelAwareProxyProjectionFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/projection/SpelAwareProxyProjectionFactoryUnitTests.java @@ -18,7 +18,6 @@ package org.springframework.data.projection; import static org.assertj.core.api.Assertions.*; import java.beans.PropertyDescriptor; -import java.util.List; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -45,18 +44,18 @@ class SpelAwareProxyProjectionFactoryUnitTests { @Test // DATAREST-221, DATACMNS-630 void exposesSpelInvokingMethod() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; customer.lastname = "Matthews"; - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); assertThat(excerpt.getFullName()).isEqualTo("Dave Matthews"); } @Test // DATACMNS-630 void excludesAtValueAnnotatedMethodsForInputProperties() { - List properties = factory // + var properties = factory // .getProjectionInformation(CustomerExcerpt.class) // .getInputProperties(); @@ -68,7 +67,7 @@ class SpelAwareProxyProjectionFactoryUnitTests { @Test // DATACMNS-89 void considersProjectionUsingAtValueNotClosed() { - ProjectionInformation information = factory.getProjectionInformation(CustomerExcerpt.class); + var information = factory.getProjectionInformation(CustomerExcerpt.class); assertThat(information.isClosed()).isFalse(); } @@ -76,10 +75,10 @@ class SpelAwareProxyProjectionFactoryUnitTests { @Test // DATACMNS-820 void setsValueUsingProjection() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; - CustomerExcerpt excerpt = factory.createProjection(CustomerExcerpt.class, customer); + var excerpt = factory.createProjection(CustomerExcerpt.class, customer); excerpt.setFirstname("Carl"); assertThat(customer.firstname).isEqualTo("Carl"); @@ -88,10 +87,10 @@ class SpelAwareProxyProjectionFactoryUnitTests { @Test // DATACMNS-820 void settingNotWriteablePropertyFails() { - Customer customer = new Customer(); + var customer = new Customer(); customer.firstname = "Dave"; - ProjectionWithNotWriteableProperty projection = factory.createProjection(ProjectionWithNotWriteableProperty.class, + var projection = factory.createProjection(ProjectionWithNotWriteableProperty.class, customer); assertThatExceptionOfType(NotWritablePropertyException.class).isThrownBy(() -> projection.setFirstName("Carl")); diff --git a/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java index b8f75fbae..a78d6c876 100755 --- a/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java @@ -62,10 +62,10 @@ class SpelEvaluatingMethodInterceptorUnitTests { when(invocation.getMethod()).thenReturn(Projection.class.getMethod("invokeBean")); - DefaultListableBeanFactory factory = new DefaultListableBeanFactory(); + var factory = new DefaultListableBeanFactory(); factory.registerSingleton("someBean", new SomeBean()); - SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), factory, + var interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), factory, parser, Projection.class); assertThat(interceptor.invoke(invocation)).isEqualTo("value"); @@ -76,7 +76,7 @@ class SpelEvaluatingMethodInterceptorUnitTests { when(invocation.getMethod()).thenReturn(Projection.class.getMethod("getName")); - SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), + var interceptor = new SpelEvaluatingMethodInterceptor(delegate, new Target(), new DefaultListableBeanFactory(), parser, Projection.class); interceptor.invoke(invocation); @@ -98,7 +98,7 @@ class SpelEvaluatingMethodInterceptorUnitTests { when(invocation.getMethod()).thenReturn(Projection.class.getMethod("propertyFromTarget")); - SpelEvaluatingMethodInterceptor interceptor = new SpelEvaluatingMethodInterceptor(delegate, map, + var interceptor = new SpelEvaluatingMethodInterceptor(delegate, map, new DefaultListableBeanFactory(), parser, Projection.class); assertThat(interceptor.invoke(invocation)).isEqualTo("Dave"); @@ -107,7 +107,7 @@ class SpelEvaluatingMethodInterceptorUnitTests { @Test // DATACMNS-1150 void forwardsParameterIntoSpElExpressionEvaluation() throws Throwable { - DefaultListableBeanFactory factory = new DefaultListableBeanFactory(); + var factory = new DefaultListableBeanFactory(); factory.registerSingleton("someBean", new SomeBean()); when(invocation.getMethod()).thenReturn(Projection.class.getMethod("invokeBeanWithParameter", Integer.class)); diff --git a/src/test/java/org/springframework/data/querydsl/QPageRequestUnitTests.java b/src/test/java/org/springframework/data/querydsl/QPageRequestUnitTests.java index 75e7cb221..840ba3edc 100755 --- a/src/test/java/org/springframework/data/querydsl/QPageRequestUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/QPageRequestUnitTests.java @@ -42,8 +42,8 @@ public class QPageRequestUnitTests extends AbstractPageRequestUnitTests { @Test void constructsQPageRequestWithOrderSpecifiers() { - QUser user = QUser.user; - QPageRequest pageRequest = QPageRequest.of(0, 10, user.firstname.asc()); + var user = QUser.user; + var pageRequest = QPageRequest.of(0, 10, user.firstname.asc()); assertThat(pageRequest.getSort()).isEqualTo(QSort.by(user.firstname.asc())); } @@ -51,8 +51,8 @@ public class QPageRequestUnitTests extends AbstractPageRequestUnitTests { @Test void constructsQPageRequestWithQSort() { - QUser user = QUser.user; - QPageRequest pageRequest = QPageRequest.ofSize(10).withSort(QSort.by(user.firstname.asc())); + var user = QUser.user; + var pageRequest = QPageRequest.ofSize(10).withSort(QSort.by(user.firstname.asc())); assertThat(pageRequest.getSort()).isEqualTo(QSort.by(user.firstname.asc())); } diff --git a/src/test/java/org/springframework/data/querydsl/QSortUnitTests.java b/src/test/java/org/springframework/data/querydsl/QSortUnitTests.java index f194457a3..3bb0f15f1 100755 --- a/src/test/java/org/springframework/data/querydsl/QSortUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/QSortUnitTests.java @@ -31,7 +31,6 @@ import org.springframework.data.domain.Sort.Order; import com.querydsl.core.annotations.QueryInit; import com.querydsl.core.types.OrderSpecifier; import com.querydsl.core.types.dsl.PathBuilderFactory; -import com.querydsl.core.types.dsl.StringPath; /** * Unit tests for {@link QSort}. @@ -50,8 +49,8 @@ class QSortUnitTests { @Test // DATACMNS-402 void sortBySingleProperty() { - QUser user = QUser.user; - QSort qsort = new QSort(user.firstname.asc()); + var user = QUser.user; + var qsort = new QSort(user.firstname.asc()); assertThat(qsort.getOrderSpecifiers()).hasSize(1); assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc()); @@ -61,8 +60,8 @@ class QSortUnitTests { @Test // DATACMNS-402 void sortByMultiplyProperties() { - QUser user = QUser.user; - QSort qsort = new QSort(user.firstname.asc(), user.lastname.desc()); + var user = QUser.user; + var qsort = new QSort(user.firstname.asc(), user.lastname.desc()); assertThat(qsort.getOrderSpecifiers()).hasSize(2); assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc()); @@ -74,8 +73,8 @@ class QSortUnitTests { @Test // DATACMNS-402 void sortByMultiplyPropertiesWithAnd() { - QUser user = QUser.user; - QSort qsort = new QSort(user.firstname.asc()).and(new QSort(user.lastname.desc())); + var user = QUser.user; + var qsort = new QSort(user.firstname.asc()).and(new QSort(user.lastname.desc())); assertThat(qsort.getOrderSpecifiers()).hasSize(2); assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc()); @@ -87,8 +86,8 @@ class QSortUnitTests { @Test // DATACMNS-402 void sortByMultiplyPropertiesWithAndAndVarArgs() { - QUser user = QUser.user; - QSort qsort = new QSort(user.firstname.asc()).and(user.lastname.desc()); + var user = QUser.user; + var qsort = new QSort(user.firstname.asc()).and(user.lastname.desc()); assertThat(qsort.getOrderSpecifiers()).hasSize(2); assertThat(qsort.getOrderSpecifiers().get(0)).isEqualTo(user.firstname.asc()); @@ -100,8 +99,8 @@ class QSortUnitTests { @Test // DATACMNS-402 void ensureInteroperabilityWithSort() { - QUser user = QUser.user; - QSort qsort = new QSort(user.firstname.asc(), user.lastname.desc()); + var user = QUser.user; + var qsort = new QSort(user.firstname.asc(), user.lastname.desc()); Sort sort = qsort; @@ -112,10 +111,10 @@ class QSortUnitTests { @Test // DATACMNS-402 void concatenatesPlainSortCorrectly() { - QUser user = QUser.user; - QSort sort = new QSort(user.firstname.asc()); + var user = QUser.user; + var sort = new QSort(user.firstname.asc()); - Sort result = sort.and(Sort.by(Direction.ASC, "lastname")); + var result = sort.and(Sort.by(Direction.ASC, "lastname")); assertThat(result).hasSize(2); assertThat(result).contains(new Order(Direction.ASC, "lastname"), new Order(Direction.ASC, "firstname")); } @@ -123,10 +122,10 @@ class QSortUnitTests { @Test // DATACMNS-566 void shouldSupportSortByOperatorExpressions() { - QUser user = QUser.user; - QSort sort = new QSort(user.dateOfBirth.yearMonth().asc()); + var user = QUser.user; + var sort = new QSort(user.dateOfBirth.yearMonth().asc()); - Sort result = sort.and(Sort.by(Direction.ASC, "lastname")); + var result = sort.and(Sort.by(Direction.ASC, "lastname")); assertThat(result).hasSize(2); assertThat(result).contains(new Order(Direction.ASC, "lastname"), new Order(Direction.ASC, user.dateOfBirth.yearMonth().toString())); @@ -135,7 +134,7 @@ class QSortUnitTests { @Test // DATACMNS-621 void shouldCreateSortForNestedPathCorrectly() { - QSort sort = new QSort(userWrapper.user.firstname.asc()); + var sort = new QSort(userWrapper.user.firstname.asc()); assertThat(sort).contains(new Order(Direction.ASC, "user.firstname")); } @@ -143,7 +142,7 @@ class QSortUnitTests { @Test // DATACMNS-621 void shouldCreateSortForDeepNestedPathCorrectly() { - QSort sort = new QSort(wrapperForUserWrapper.wrapper.user.firstname.asc()); + var sort = new QSort(wrapperForUserWrapper.wrapper.user.firstname.asc()); assertThat(sort).contains(new Order(Direction.ASC, "wrapper.user.firstname")); } @@ -151,7 +150,7 @@ class QSortUnitTests { @Test // DATACMNS-621 void shouldCreateSortForReallyDeepNestedPathCorrectly() { - QSort sort = new QSort(wrapperToWrapWrapperForUserWrapper.wrapperForUserWrapper.wrapper.user.firstname.asc()); + var sort = new QSort(wrapperToWrapWrapperForUserWrapper.wrapperForUserWrapper.wrapper.user.firstname.asc()); assertThat(sort).contains(new Order(Direction.ASC, "wrapperForUserWrapper.wrapper.user.firstname")); } @@ -159,9 +158,9 @@ class QSortUnitTests { @Test // DATACMNS-755 void handlesPlainStringPathsCorrectly() { - StringPath path = new PathBuilderFactory().create(User.class).getString("firstname"); + var path = new PathBuilderFactory().create(User.class).getString("firstname"); - QSort sort = new QSort(new OrderSpecifier<>(com.querydsl.core.types.Order.ASC, path)); + var sort = new QSort(new OrderSpecifier<>(com.querydsl.core.types.Order.ASC, path)); assertThat(sort).contains(new Order(Direction.ASC, "firstname")); } diff --git a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java index eb91b1aef..2e91f528a 100755 --- a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java @@ -54,7 +54,7 @@ class QuerydslRepositoryInvokerAdapterUnitTests { @Test // DATACMNS-669 void forwardsFindAllToExecutorWithPredicate() { - Sort sort = Sort.by("firstname"); + var sort = Sort.by("firstname"); adapter.invokeFindAll(sort); verify(executor, times(1)).findAll(predicate, sort); @@ -64,7 +64,7 @@ class QuerydslRepositoryInvokerAdapterUnitTests { @Test // DATACMNS-669 void forwardsFindAllWithPageableToExecutorWithPredicate() { - PageRequest pageable = PageRequest.of(0, 10); + var pageable = PageRequest.of(0, 10); adapter.invokeFindAll(pageable); verify(executor, times(1)).findAll(predicate, pageable); diff --git a/src/test/java/org/springframework/data/querydsl/binding/PropertyPathInformationUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/PropertyPathInformationUnitTests.java index 593205fbd..0de15ef85 100644 --- a/src/test/java/org/springframework/data/querydsl/binding/PropertyPathInformationUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/PropertyPathInformationUnitTests.java @@ -32,9 +32,9 @@ class PropertyPathInformationUnitTests { @Test // GH-2418 void shouldEqualsCorrectly() { - PropertyPathInformation information = PropertyPathInformation.of("address.description", User.class); + var information = PropertyPathInformation.of("address.description", User.class); - QuerydslPathInformation querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description); + var querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description); assertThat(information).isEqualTo(querydslPathInformation); assertThat(querydslPathInformation).isEqualTo(information); @@ -43,9 +43,9 @@ class PropertyPathInformationUnitTests { @Test // GH-2418 void shouldHashCodeCorrectly() { - PropertyPathInformation information = PropertyPathInformation.of("address.description", User.class); + var information = PropertyPathInformation.of("address.description", User.class); - QuerydslPathInformation querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description); + var querydslPathInformation = QuerydslPathInformation.of(QUser.user.address.description); assertThat(information).hasSameHashCodeAs(querydslPathInformation); assertThat(querydslPathInformation).hasSameHashCodeAs(information); diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java index f8a00c776..946cabb2b 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java @@ -60,15 +60,15 @@ class QuerydslBindingsFactoryUnitTests { @SuppressWarnings({ "unchecked", "rawtypes" }) void createBindingsShouldHonorQuerydslBinderCustomizerHookWhenPresent() { - Repositories repositories = mock(Repositories.class); + var repositories = mock(Repositories.class); when(repositories.hasRepositoryFor(User.class)).thenReturn(true); when(repositories.getRepositoryFor(User.class)).thenReturn(Optional.of(new SampleRepo())); - QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); + var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); ReflectionTestUtils.setField(factory, "repositories", Optional.of(repositories)); - QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE); + var bindings = factory.createBindingsFor(USER_TYPE); Optional, Object>> binding = bindings .getBindingForPath(PropertyPathInformation.of("firstname", User.class)); @@ -82,13 +82,13 @@ class QuerydslBindingsFactoryUnitTests { @SuppressWarnings({ "unchecked", "rawtypes" }) void shouldReuseExistingQuerydslBinderCustomizer() { - AutowireCapableBeanFactory beanFactory = mock(AutowireCapableBeanFactory.class); + var beanFactory = mock(AutowireCapableBeanFactory.class); when(beanFactory.getBean(SpecificBinding.class)).thenReturn(new SpecificBinding()); - QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); + var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); ReflectionTestUtils.setField(factory, "beanFactory", Optional.of(beanFactory)); - QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class); + var bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class); Optional, Object>> binding = bindings .getBindingForPath(PropertyPathInformation.of("firstname", User.class)); @@ -102,14 +102,14 @@ class QuerydslBindingsFactoryUnitTests { @SuppressWarnings({ "unchecked", "rawtypes" }) void shouldApplyDefaultCustomizers() { - GenericApplicationContext context = new GenericApplicationContext(); + var context = new GenericApplicationContext(); context.registerBean(DefaultCustomizer.class); context.refresh(); - QuerydslBindingsFactory factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); + var factory = new QuerydslBindingsFactory(SimpleEntityPathResolver.INSTANCE); factory.setApplicationContext(context); - QuerydslBindings bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class); + var bindings = factory.createBindingsFor(USER_TYPE, SpecificBinding.class); Optional, Object>> binding = bindings .getBindingForPath(PropertyPathInformation.of("inceptionYear", User.class)); diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java index 8c09af0b5..5bd30d4f5 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsUnitTests.java @@ -230,7 +230,7 @@ class QuerydslBindingsUnitTests { bindings.bind(QUser.user.address.city).as("city").first(CONTAINS_BINDING); - PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); + var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); assertThat(path).isNotNull(); assertThat(bindings.isPathAvailable("city", User.class)).isTrue(); @@ -245,14 +245,14 @@ class QuerydslBindingsUnitTests { bindings.including(QUser.user.address.city); bindings.bind(QUser.user.address.city).as("city").first(CONTAINS_BINDING); - PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); + var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); assertThat(path).isNotNull(); assertThat(bindings.isPathAvailable("city", User.class)).isTrue(); assertThat(bindings.isPathAvailable("address.city", User.class)).isTrue(); - PathInformation propertyPath = bindings.getPropertyPath("address.city", ClassTypeInformation.from(User.class)); + var propertyPath = bindings.getPropertyPath("address.city", ClassTypeInformation.from(User.class)); assertThat(propertyPath).isNotNull(); assertAdapterWithTargetBinding(bindings.getBindingForPath(propertyPath), CONTAINS_BINDING); @@ -263,7 +263,7 @@ class QuerydslBindingsUnitTests { bindings.bind(QUser.user.address.city).as("city").withDefaultBinding(); - PathInformation path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); + var path = bindings.getPropertyPath("city", ClassTypeInformation.from(User.class)); assertThat(path).isNotNull(); assertThat(bindings.getBindingForPath(path)).isNotPresent(); diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java index 297018145..1cb7f0c30 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java @@ -19,13 +19,11 @@ import static org.assertj.core.api.Assertions.*; import java.util.Arrays; import java.util.Collections; -import java.util.Optional; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.data.querydsl.QUser; -import com.querydsl.core.types.Predicate; +import org.springframework.data.querydsl.QUser; /** * @author Christoph Strobl @@ -44,7 +42,7 @@ class QuerydslDefaultBindingUnitTests { @Test // DATACMNS-669 void shouldCreatePredicateCorrectlyWhenPropertyIsInRoot() { - Optional predicate = binding.bind(QUser.user.firstname, Collections.singleton("tam")); + var predicate = binding.bind(QUser.user.firstname, Collections.singleton("tam")); assertThat(predicate).hasValue(QUser.user.firstname.eq("tam")); } @@ -52,7 +50,7 @@ class QuerydslDefaultBindingUnitTests { @Test // DATACMNS-669 void shouldCreatePredicateCorrectlyWhenPropertyIsInNestedElement() { - Optional predicate = binding.bind(QUser.user.address.city, Collections.singleton("two rivers")); + var predicate = binding.bind(QUser.user.address.city, Collections.singleton("two rivers")); assertThat(predicate).hasValueSatisfying( it -> assertThat(it.toString()).isEqualTo(QUser.user.address.city.eq("two rivers").toString())); @@ -61,7 +59,7 @@ class QuerydslDefaultBindingUnitTests { @Test // DATACMNS-669 void shouldCreatePredicateWithContainingWhenPropertyIsCollectionLikeAndValueIsObject() { - Optional predicate = binding.bind(QUser.user.nickNames, Collections.singleton("dragon reborn")); + var predicate = binding.bind(QUser.user.nickNames, Collections.singleton("dragon reborn")); assertThat(predicate).hasValue(QUser.user.nickNames.contains("dragon reborn")); } @@ -69,7 +67,7 @@ class QuerydslDefaultBindingUnitTests { @Test // DATACMNS-669 void shouldCreatePredicateWithInWhenPropertyIsAnObjectAndValueIsACollection() { - Optional predicate = binding.bind(QUser.user.firstname, Arrays.asList("dragon reborn", "shadowkiller")); + var predicate = binding.bind(QUser.user.firstname, Arrays.asList("dragon reborn", "shadowkiller")); assertThat(predicate).hasValue(QUser.user.firstname.in(Arrays.asList("dragon reborn", "shadowkiller"))); } @@ -82,7 +80,7 @@ class QuerydslDefaultBindingUnitTests { @Test // DATACMNS-1578 void shouldCreatePredicateWithIsNullWhenPropertyIsANestedObjectAndValueIsNull() { - Optional predicate = binding.bind(QUser.user.address.city, Collections.singleton(null)); + var predicate = binding.bind(QUser.user.address.city, Collections.singleton(null)); assertThat(predicate).hasValueSatisfying(it -> { assertThat(it.toString()).isEqualTo(QUser.user.address.city.isNull().toString()); diff --git a/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java b/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java index 328dca6a5..f6fb3388d 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java @@ -40,7 +40,6 @@ import org.springframework.util.MultiValueMap; import com.querydsl.collections.CollQueryFactory; import com.querydsl.core.types.Constant; -import com.querydsl.core.types.Predicate; import com.querydsl.core.types.dsl.StringPath; /** @@ -90,7 +89,7 @@ class QuerydslPredicateBuilderUnitTests { DEFAULT_BINDINGS.bind(QUser.user.description).first(CONTAINS_BINDING); values.add("description", "Linz"); - Predicate predicate = this.builder.getPredicate(ClassTypeInformation.from(User.class), values, DEFAULT_BINDINGS); + var predicate = this.builder.getPredicate(ClassTypeInformation.from(User.class), values, DEFAULT_BINDINGS); assertThat(predicate).hasToString("contains(user.description,Linz)"); @@ -107,11 +106,11 @@ class QuerydslPredicateBuilderUnitTests { values.add("firstname", "Oliver"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); assertThat(predicate).isEqualTo(QUser.user.firstname.eq("Oliver")); - List result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults(); + var result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults(); assertThat(result).containsExactly(Users.OLIVER); } @@ -124,11 +123,11 @@ class QuerydslPredicateBuilderUnitTests { values.add("address.city", "Linz"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); assertThat(predicate).isEqualTo(QUser.user.address.city.eq("Linz")); - List result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults(); + var result = CollQueryFactory.from(QUser.user, Users.USERS).where(predicate).fetchResults().getResults(); assertThat(result).containsExactly(Users.CHRISTOPH); } @@ -139,7 +138,7 @@ class QuerydslPredicateBuilderUnitTests { values.add("firstname", "rand"); values.add("lastname".toUpperCase(), "al'thor"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); assertThat(predicate).isEqualTo(QUser.user.firstname.eq("rand")); } @@ -149,7 +148,7 @@ class QuerydslPredicateBuilderUnitTests { values.add("lastname", null); - QuerydslBindings bindings = new QuerydslBindings(); + var bindings = new QuerydslBindings(); bindings.bind(QUser.user.lastname).firstOptional((path, value) -> value.map(path::contains)); builder.getPredicate(USER_TYPE, values, bindings); @@ -161,9 +160,9 @@ class QuerydslPredicateBuilderUnitTests { values.add("address.lonLat", "40.740337,-73.995146"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); - Constant constant = (Constant) ((List) getField(getField(predicate, "mixin"), "args")).get(1); + var constant = (Constant) ((List) getField(getField(predicate, "mixin"), "args")).get(1); assertThat(constant.getConstant()).isEqualTo(new Double[] { 40.740337D, -73.995146D }); } @@ -174,9 +173,9 @@ class QuerydslPredicateBuilderUnitTests { values.add("address.city", "rivers,two"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); - Constant constant = (Constant) ((List) getField(getField(predicate, "mixin"), "args")).get(1); + var constant = (Constant) ((List) getField(getField(predicate, "mixin"), "args")).get(1); assertThat(constant.getConstant()).isEqualTo("rivers,two"); } @@ -186,7 +185,7 @@ class QuerydslPredicateBuilderUnitTests { values.add("addresses.street", "VALUE"); - Predicate predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); + var predicate = builder.getPredicate(USER_TYPE, values, DEFAULT_BINDINGS); assertThat(predicate).isEqualTo(QUser.user.addresses.any().street.eq("VALUE")); } @@ -196,7 +195,7 @@ class QuerydslPredicateBuilderUnitTests { values.add("specialProperty", "VALUE"); - QuerydslBindings bindings = new QuerydslBindings(); + var bindings = new QuerydslBindings(); bindings.bind(QUser.user.as(QSpecialUser.class).specialProperty)// .first(QuerydslBindingsUnitTests.ContainsBinding.INSTANCE); @@ -209,9 +208,9 @@ class QuerydslPredicateBuilderUnitTests { values.add("user.specialProperty", "VALUE"); - QUserWrapper wrapper = QUserWrapper.userWrapper; + var wrapper = QUserWrapper.userWrapper; - QuerydslBindings bindings = new QuerydslBindings(); + var bindings = new QuerydslBindings(); bindings.bind(wrapper.user.as(QSpecialUser.class).specialProperty)// .first(QuerydslBindingsUnitTests.ContainsBinding.INSTANCE); diff --git a/src/test/java/org/springframework/data/repository/cdi/CdiConfigurationIntegrationTests.java b/src/test/java/org/springframework/data/repository/cdi/CdiConfigurationIntegrationTests.java index 481244a13..1427756f2 100644 --- a/src/test/java/org/springframework/data/repository/cdi/CdiConfigurationIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/cdi/CdiConfigurationIntegrationTests.java @@ -47,7 +47,7 @@ class CdiConfigurationIntegrationTests { @Test // DATACMNS-1233 void shouldApplyImplementationPostfix() { - IsolatedComposedRepository repository = container.select(IsolatedComposedRepository.class).get(); + var repository = container.select(IsolatedComposedRepository.class).get(); assertThat(repository.getPriority()).isEqualTo(42); } diff --git a/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryBeanUnitTests.java b/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryBeanUnitTests.java index 3b0895d0b..50c0b4124 100755 --- a/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryBeanUnitTests.java +++ b/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryBeanUnitTests.java @@ -27,7 +27,6 @@ import jakarta.inject.Named; import java.io.Serializable; import java.lang.annotation.Annotation; -import java.lang.reflect.Type; import java.util.List; import java.util.Optional; import java.util.Set; @@ -97,7 +96,7 @@ class CdiRepositoryBeanUnitTests { @Test void returnsBasicMetadata() { - DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS, SampleRepository.class, + var bean = new DummyCdiRepositoryBean(NO_ANNOTATIONS, SampleRepository.class, beanManager); assertThat(bean.getBeanClass()).isEqualTo(SampleRepository.class); @@ -108,10 +107,10 @@ class CdiRepositoryBeanUnitTests { @Test void returnsAllImplementedTypes() { - DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS, SampleRepository.class, + var bean = new DummyCdiRepositoryBean(NO_ANNOTATIONS, SampleRepository.class, beanManager); - Set types = bean.getTypes(); + var types = bean.getTypes(); assertThat(types).containsExactlyInAnyOrder(SampleRepository.class, Repository.class); } @@ -119,7 +118,7 @@ class CdiRepositoryBeanUnitTests { @SuppressWarnings("unchecked") void detectsStereotypes() { - DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean<>(NO_ANNOTATIONS, + var bean = new DummyCdiRepositoryBean(NO_ANNOTATIONS, StereotypedSampleRepository.class, beanManager); assertThat(bean.getStereotypes()).containsExactly(StereotypeAnnotation.class); @@ -146,9 +145,9 @@ class CdiRepositoryBeanUnitTests { @Test // DATACMNS-764, DATACMNS-1754 void passesCorrectBeanNameToTheImplementationDetector() { - CustomRepositoryImplementationDetector detector = mock(CustomRepositoryImplementationDetector.class); + var detector = mock(CustomRepositoryImplementationDetector.class); - CdiRepositoryBean bean = new CdiRepositoryBean(SINGLE_ANNOTATION, + var bean = new CdiRepositoryBean(SINGLE_ANNOTATION, SampleRepository.class, beanManager, Optional.of(detector)) { @Override @@ -160,12 +159,12 @@ class CdiRepositoryBeanUnitTests { bean.create(mock(CreationalContext.class), SampleRepository.class); - ArgumentCaptor captor = ArgumentCaptor + var captor = ArgumentCaptor .forClass(ImplementationLookupConfiguration.class); verify(detector, times(2)).detectCustomImplementation(captor.capture()); - ImplementationLookupConfiguration configuration = captor.getAllValues().get(0); + var configuration = captor.getAllValues().get(0); assertThat(configuration.getImplementationBeanName()).isEqualTo("cdiRepositoryBeanUnitTests.SampleRepositoryImpl"); assertThat(configuration.getImplementationClassName()).isEqualTo("SampleRepositoryImpl"); @@ -174,7 +173,7 @@ class CdiRepositoryBeanUnitTests { @Test // DATACMNS-1233 void appliesRepositoryConfiguration() { - DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean(NO_ANNOTATIONS, + var bean = new DummyCdiRepositoryBean(NO_ANNOTATIONS, SampleRepository.class, beanManager) { @Override protected CdiRepositoryConfiguration lookupConfiguration(BeanManager beanManager, Set qualifiers) { diff --git a/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupportIntegrationTests.java b/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupportIntegrationTests.java index f87d1fd28..d9713895c 100755 --- a/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupportIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupportIntegrationTests.java @@ -31,7 +31,7 @@ abstract class CdiRepositoryExtensionSupportIntegrationTests { assertThat(getBean(SampleRepository.class)).isNotNull(); - RepositoryClient client = getBean(RepositoryClient.class); + var client = getBean(RepositoryClient.class); assertThat(client.repository).isNotNull(); } @@ -40,7 +40,7 @@ abstract class CdiRepositoryExtensionSupportIntegrationTests { assertThat(getBean(AnotherRepository.class)).isNotNull(); - RepositoryClient client = getBean(RepositoryClient.class); + var client = getBean(RepositoryClient.class); assertThat(client.anotherRepository).isNotNull(); // this will always return 0 since it's a mock diff --git a/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java b/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java index 7fe151a18..fb35ed994 100644 --- a/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java +++ b/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java @@ -25,7 +25,6 @@ import java.lang.annotation.Annotation; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.HashMap; -import java.util.Map.Entry; import java.util.Optional; import java.util.Set; @@ -49,9 +48,9 @@ public class DummyCdiExtension extends CdiRepositoryExtensionSupport { afterBeanDiscovery.addContext(new MyCustomScope()); - for (Entry, Set> type : getRepositoryTypes()) { + for (var type : getRepositoryTypes()) { - DummyCdiRepositoryBean bean = new DummyCdiRepositoryBean(type.getValue(), type.getKey(), beanManager, + var bean = new DummyCdiRepositoryBean(type.getValue(), type.getKey(), beanManager, Optional.of(getCustomImplementationDetector())); registerBean(bean); afterBeanDiscovery.addBean(bean); @@ -76,7 +75,7 @@ public class DummyCdiExtension extends CdiRepositoryExtensionSupport { @Override protected T create(CreationalContext creationalContext, Class repositoryType) { - T mock = Mockito.mock(repositoryType); + var mock = Mockito.mock(repositoryType); return create(() -> new DummyRepositoryFactory(mock), repositoryType); } diff --git a/src/test/java/org/springframework/data/repository/cdi/RepositoryFragmentsIntegrationTests.java b/src/test/java/org/springframework/data/repository/cdi/RepositoryFragmentsIntegrationTests.java index c8c3f7ac4..999006788 100644 --- a/src/test/java/org/springframework/data/repository/cdi/RepositoryFragmentsIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/cdi/RepositoryFragmentsIntegrationTests.java @@ -50,9 +50,9 @@ class RepositoryFragmentsIntegrationTests { @Test // DATACMNS-1233 void shouldInvokeCustomImplementationLast() { - ComposedRepository repository = getBean(ComposedRepository.class); - ComposedRepositoryImpl customImplementation = getBean(ComposedRepositoryImpl.class); - AnotherFragmentInterfaceImpl shadowed = getBean(AnotherFragmentInterfaceImpl.class); + var repository = getBean(ComposedRepository.class); + var customImplementation = getBean(ComposedRepositoryImpl.class); + var shadowed = getBean(AnotherFragmentInterfaceImpl.class); assertThat(repository.getShadowed()).isEqualTo(2); assertThat(customImplementation.getShadowed()).isEqualTo(1); @@ -62,9 +62,9 @@ class RepositoryFragmentsIntegrationTests { @Test // DATACMNS-1233 void shouldRespectInterfaceOrder() { - ComposedRepository repository = getBean(ComposedRepository.class); - FragmentInterfaceImpl fragment = getBean(FragmentInterfaceImpl.class); - AnotherFragmentInterfaceImpl shadowed = getBean(AnotherFragmentInterfaceImpl.class); + var repository = getBean(ComposedRepository.class); + var fragment = getBean(FragmentInterfaceImpl.class); + var shadowed = getBean(AnotherFragmentInterfaceImpl.class); assertThat(repository.getPriority()).isEqualTo(1); assertThat(fragment.getPriority()).isEqualTo(1); @@ -74,7 +74,7 @@ class RepositoryFragmentsIntegrationTests { @Test // DATACMNS-1754 void shouldFindCustomImplementationForNestedRepository() { - NestedRepository repository = getBean(NestedRepository.class); + var repository = getBean(NestedRepository.class); assertThat(repository.getCustom()).isEqualTo("CustomImpl"); } @@ -82,8 +82,8 @@ class RepositoryFragmentsIntegrationTests { @Test // DATACMNS-1754 void shouldFindImplementationForNestedRepositoryFragment() { - ComposedRepository repository = getBean(ComposedRepository.class); - RepositoryFragments.NestedFragmentInterfaceImpl fragment = getBean( + var repository = getBean(ComposedRepository.class); + var fragment = getBean( RepositoryFragments.NestedFragmentInterfaceImpl.class); assertThat(repository.getKey()).isEqualTo("NestedFragmentImpl"); diff --git a/src/test/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSourceUnitTests.java b/src/test/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSourceUnitTests.java index 33560af5e..342182a90 100755 --- a/src/test/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSourceUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/AnnotationRepositoryConfigurationSourceUnitTests.java @@ -23,7 +23,7 @@ import java.lang.annotation.RetentionPolicy; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.config.BeanDefinition; + import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.context.annotation.ComponentScan.Filter; import org.springframework.context.annotation.Primary; @@ -34,7 +34,6 @@ import org.springframework.core.io.ResourceLoader; import org.springframework.core.type.AnnotationMetadata; import org.springframework.core.type.StandardAnnotationMetadata; import org.springframework.data.repository.PagingAndSortingRepository; -import org.springframework.data.util.Streamable; /** * Unit tests for {@link AnnotationRepositoryConfigurationSource}. @@ -72,7 +71,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests { @Test // DATACMNS-47, DATACMNS-102 void evaluatesExcludeFiltersCorrectly() { - Streamable candidates = source.getCandidates(new DefaultResourceLoader()); + var candidates = source.getCandidates(new DefaultResourceLoader()); assertThat(candidates).extracting("beanClassName") .contains(MyRepository.class.getName(), ComposedRepository.class.getName()) @@ -82,7 +81,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests { @Test // DATACMNS-47 void defaultsToPackageOfAnnotatedClass() { - AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfiguration.class); + var source = getConfigSource(DefaultConfiguration.class); Iterable packages = source.getBasePackages(); assertThat(packages).contains(DefaultConfiguration.class.getPackage().getName()); @@ -92,7 +91,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests { @Test // DATACMNS-47 void returnsConfiguredBasePackage() { - AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfigurationWithBasePackage.class); + var source = getConfigSource(DefaultConfigurationWithBasePackage.class); assertThat(source.getBasePackages()).contains("foo"); } @@ -100,7 +99,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests { @Test // DATACMNS-90 void returnsConsiderNestedRepositories() { - AnnotationRepositoryConfigurationSource source = getConfigSource(DefaultConfigurationWithNestedRepositories.class); + var source = getConfigSource(DefaultConfigurationWithNestedRepositories.class); assertThat(source.shouldConsiderNestedRepositories()).isTrue(); } @@ -114,7 +113,7 @@ class AnnotationRepositoryConfigurationSourceUnitTests { @Test // DATACMNS-502 void returnsEmptyStringForBasePackage() throws Exception { - StandardAnnotationMetadata metadata = new StandardAnnotationMetadata( + var metadata = new StandardAnnotationMetadata( getClass().getClassLoader().loadClass("TypeInDefaultPackage"), true); RepositoryConfigurationSource configurationSource = new AnnotationRepositoryConfigurationSource(metadata, EnableRepositories.class, resourceLoader, environment, registry); diff --git a/src/test/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetectorUnitTests.java b/src/test/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetectorUnitTests.java index c7f83f775..a914ac093 100644 --- a/src/test/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetectorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetectorUnitTests.java @@ -19,12 +19,10 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; -import java.util.Optional; - import org.junit.jupiter.api.Test; import org.mockito.Answers; + import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.core.env.Environment; import org.springframework.core.io.DefaultResourceLoader; import org.springframework.core.io.ResourceLoader; @@ -60,12 +58,12 @@ class CustomRepositoryImplementationDetectorUnitTests { @Test // DATACMNS-764, DATACMNS-1371 void returnsNullWhenNoImplementationFound() { - RepositoryConfiguration mock = mock(RepositoryConfiguration.class); + var mock = mock(RepositoryConfiguration.class); - ImplementationLookupConfiguration lookup = configuration + var lookup = configuration .forRepositoryConfiguration(configFor(NoImplementationRepository.class)); - Optional beanDefinition = detector.detectCustomImplementation(lookup); + var beanDefinition = detector.detectCustomImplementation(lookup); assertThat(beanDefinition).isEmpty(); } @@ -73,10 +71,10 @@ class CustomRepositoryImplementationDetectorUnitTests { @Test // DATACMNS-764, DATACMNS-1371 void returnsBeanDefinitionWhenOneImplementationIsFound() { - ImplementationLookupConfiguration lookup = configuration + var lookup = configuration .forRepositoryConfiguration(configFor(SingleSampleRepository.class)); - Optional beanDefinition = detector.detectCustomImplementation(lookup); + var beanDefinition = detector.detectCustomImplementation(lookup); assertThat(beanDefinition).hasValueSatisfying( it -> assertThat(it.getBeanClassName()).isEqualTo(SingleSampleRepositoryTestImpl.class.getName())); @@ -88,12 +86,12 @@ class CustomRepositoryImplementationDetectorUnitTests { when(configuration.generateBeanName(any())).then(it -> { BeanDefinition definition = it.getArgument(0); - String className = definition.getBeanClassName(); + var className = definition.getBeanClassName(); return className.contains("$First$") ? "canonicalSampleRepositoryTestImpl" : "otherBeanName"; }); - ImplementationLookupConfiguration lookup = configuration + var lookup = configuration .forRepositoryConfiguration(configFor(CanonicalSampleRepository.class)); assertThat(detector.detectCustomImplementation(lookup)) // @@ -106,7 +104,7 @@ class CustomRepositoryImplementationDetectorUnitTests { assertThatIllegalStateException().isThrownBy(() -> { - ImplementationLookupConfiguration lookup = mock(ImplementationLookupConfiguration.class); + var lookup = mock(ImplementationLookupConfiguration.class); when(lookup.hasMatchingBeanName(any())).thenReturn(true); when(lookup.matches(any())).thenReturn(true); diff --git a/src/test/java/org/springframework/data/repository/config/DefaultImplementationLookupConfigurationUnitTests.java b/src/test/java/org/springframework/data/repository/config/DefaultImplementationLookupConfigurationUnitTests.java index 388bd99d8..5f3d8aa54 100644 --- a/src/test/java/org/springframework/data/repository/config/DefaultImplementationLookupConfigurationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/DefaultImplementationLookupConfigurationUnitTests.java @@ -31,7 +31,7 @@ class DefaultImplementationLookupConfigurationUnitTests { @Test // DATACMNS-1439 void shouldConsiderBeanNameDecapitalization() { - ImplementationDetectionConfiguration idcMock = mock(ImplementationDetectionConfiguration.class); + var idcMock = mock(ImplementationDetectionConfiguration.class); when(idcMock.getImplementationPostfix()).thenReturn("Impl"); assertThat(getImplementationBeanName(idcMock, "com.acme.UDPRepository")).isEqualTo("UDPRepositoryImpl"); @@ -41,10 +41,10 @@ class DefaultImplementationLookupConfigurationUnitTests { @Test // DATACMNS-1754 void shouldUseSimpleClassNameWhenDefiningImplementationNames() { - ImplementationDetectionConfiguration idcMock = mock(ImplementationDetectionConfiguration.class); + var idcMock = mock(ImplementationDetectionConfiguration.class); when(idcMock.getImplementationPostfix()).thenReturn("Impl"); - DefaultImplementationLookupConfiguration lookupConfiguration = new DefaultImplementationLookupConfiguration(idcMock, + var lookupConfiguration = new DefaultImplementationLookupConfiguration(idcMock, "com.acme.Repositories$NestedRepository"); assertThat(lookupConfiguration.getImplementationBeanName()).isEqualTo("repositories.NestedRepositoryImpl"); assertThat(lookupConfiguration.getImplementationClassName()).isEqualTo("NestedRepositoryImpl"); @@ -52,7 +52,7 @@ class DefaultImplementationLookupConfigurationUnitTests { private static String getImplementationBeanName(ImplementationDetectionConfiguration idcMock, String interfaceName) { - DefaultImplementationLookupConfiguration configuration = new DefaultImplementationLookupConfiguration(idcMock, + var configuration = new DefaultImplementationLookupConfiguration(idcMock, interfaceName); return configuration.getImplementationBeanName(); } diff --git a/src/test/java/org/springframework/data/repository/config/DefaultRepositoryConfigurationUnitTests.java b/src/test/java/org/springframework/data/repository/config/DefaultRepositoryConfigurationUnitTests.java index 83e336f86..305999465 100755 --- a/src/test/java/org/springframework/data/repository/config/DefaultRepositoryConfigurationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/DefaultRepositoryConfigurationUnitTests.java @@ -86,7 +86,7 @@ class DefaultRepositoryConfigurationUnitTests { private DefaultRepositoryConfiguration getConfiguration( RepositoryConfigurationSource source, String repositoryInterfaceName) { - RootBeanDefinition beanDefinition = createBeanDefinition(repositoryInterfaceName); + var beanDefinition = createBeanDefinition(repositoryInterfaceName); return new DefaultRepositoryConfiguration<>(source, beanDefinition, extension); } @@ -98,9 +98,9 @@ class DefaultRepositoryConfigurationUnitTests { private static RootBeanDefinition createBeanDefinition(String repositoryInterfaceName) { - RootBeanDefinition beanDefinition = new RootBeanDefinition(repositoryInterfaceName); + var beanDefinition = new RootBeanDefinition(repositoryInterfaceName); - ConstructorArgumentValues constructorArgumentValues = new ConstructorArgumentValues(); + var constructorArgumentValues = new ConstructorArgumentValues(); constructorArgumentValues.addGenericArgumentValue(MyRepository.class); beanDefinition.setConstructorArgumentValues(constructorArgumentValues); diff --git a/src/test/java/org/springframework/data/repository/config/ImplementationDetectionConfigurationUnitTests.java b/src/test/java/org/springframework/data/repository/config/ImplementationDetectionConfigurationUnitTests.java index 803231836..060a5dbbc 100644 --- a/src/test/java/org/springframework/data/repository/config/ImplementationDetectionConfigurationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/ImplementationDetectionConfigurationUnitTests.java @@ -41,7 +41,7 @@ class ImplementationDetectionConfigurationUnitTests { private static String getBeanName(String className) { - MockImplementationDetectionConfiguration configuration = new MockImplementationDetectionConfiguration(); + var configuration = new MockImplementationDetectionConfiguration(); return configuration.generateBeanName(BeanDefinitionBuilder.rootBeanDefinition(className).getBeanDefinition()); } diff --git a/src/test/java/org/springframework/data/repository/config/PrimaryRepositoryIntegrationTests.java b/src/test/java/org/springframework/data/repository/config/PrimaryRepositoryIntegrationTests.java index 61bccb78e..76089da99 100644 --- a/src/test/java/org/springframework/data/repository/config/PrimaryRepositoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/config/PrimaryRepositoryIntegrationTests.java @@ -35,7 +35,7 @@ class PrimaryRepositoryIntegrationTests { @Test // DATACMNS-1591 void returnsPrimaryInstance() { - AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(Config.class); + var context = new AnnotationConfigApplicationContext(Config.class); // Two beans available but FirstRepository is the primary one assertThatCode(() -> context.getBean(FirstRepository.class)).doesNotThrowAnyException(); diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportIntegrationTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportIntegrationTests.java index a14cf9dfc..2cdadceea 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportIntegrationTests.java @@ -21,7 +21,6 @@ import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @@ -80,7 +79,7 @@ class RepositoryBeanDefinitionRegistrarSupportIntegrationTests { @Test // DATACMNS-47 void beanDefinitionSourceIsSetForJavaConfigScannedBeans() { - BeanDefinition definition = context.getBeanDefinition("myRepository"); + var definition = context.getBeanDefinition("myRepository"); assertThat(definition.getSource()).isNotNull(); } @@ -97,7 +96,7 @@ class RepositoryBeanDefinitionRegistrarSupportIntegrationTests { @Test // DATACMNS-1620 void registeredBeanDefinitionsContainHumanReadableResourceDescription() { - BeanDefinition definition = context.getBeanDefinition("myRepository"); + var definition = context.getBeanDefinition("myRepository"); assertThat(definition.getResourceDescription()) // .contains(MyRepository.class.getName()) // diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java index cb4f7f316..7f440f017 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java @@ -81,7 +81,7 @@ class RepositoryBeanDefinitionRegistrarSupportUnitTests { @Test // DATACMNS-1754 void registersBeanDefinitionForNestedRepositories() { - AnnotationMetadata metadata = AnnotationMetadata.introspect(NestedRepositoriesConfiguration.class); + var metadata = AnnotationMetadata.introspect(NestedRepositoriesConfiguration.class); registrar.registerBeanDefinitions(metadata, registry); @@ -118,7 +118,7 @@ class RepositoryBeanDefinitionRegistrarSupportUnitTests { AnnotationMetadata metadata = new StandardAnnotationMetadata(SampleConfiguration.class, true); environment.setActiveProfiles("profile"); - DummyRegistrar registrar = new DummyRegistrar(); + var registrar = new DummyRegistrar(); registrar.setEnvironment(environment); registrar.registerBeanDefinitions(metadata, registry); @@ -131,7 +131,7 @@ class RepositoryBeanDefinitionRegistrarSupportUnitTests { AnnotationMetadata metadata = new StandardAnnotationMetadata(SampleConfiguration.class, true); BeanNameGenerator delegate = new AnnotationBeanNameGenerator(); - DummyRegistrar registrar = new DummyRegistrar(); + var registrar = new DummyRegistrar(); registrar.setEnvironment(environment); registrar.registerBeanDefinitions(metadata, registry, (definition, registry) -> delegate.generateBeanName(definition, registry).concat("Hello")); @@ -141,14 +141,14 @@ class RepositoryBeanDefinitionRegistrarSupportUnitTests { private void assertBeanDefinitionRegisteredFor(String... names) { - for (String name : names) { + for (var name : names) { verify(registry, times(1)).registerBeanDefinition(eq(name), any(BeanDefinition.class)); } } private void assertNoBeanDefinitionRegisteredFor(String... names) { - for (String name : names) { + for (var name : names) { verify(registry, times(0)).registerBeanDefinition(eq(name), any(BeanDefinition.class)); } } diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryBeanNameGeneratorUnitTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryBeanNameGeneratorUnitTests.java index fae71069d..641a44f7a 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryBeanNameGeneratorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryBeanNameGeneratorUnitTests.java @@ -31,7 +31,6 @@ import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.SimpleBeanDefinitionRegistry; import org.springframework.context.annotation.AnnotationBeanNameGenerator; import org.springframework.context.annotation.ScannedGenericBeanDefinition; -import org.springframework.core.type.classreading.MetadataReader; import org.springframework.core.type.classreading.MetadataReaderFactory; import org.springframework.core.type.classreading.SimpleMetadataReaderFactory; import org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport; @@ -71,7 +70,7 @@ class RepositoryBeanNameGeneratorUnitTests { void usesClassNameOfScannedBeanDefinition() throws IOException { MetadataReaderFactory factory = new SimpleMetadataReaderFactory(); - MetadataReader reader = factory.getMetadataReader(SomeImplementation.class.getName()); + var reader = factory.getMetadataReader(SomeImplementation.class.getName()); BeanDefinition definition = new ScannedGenericBeanDefinition(reader); @@ -88,7 +87,7 @@ class RepositoryBeanNameGeneratorUnitTests { private BeanDefinition getBeanDefinitionFor(Class repositoryInterface) { - BeanDefinitionBuilder builder = BeanDefinitionBuilder.genericBeanDefinition(RepositoryFactoryBeanSupport.class); + var builder = BeanDefinitionBuilder.genericBeanDefinition(RepositoryFactoryBeanSupport.class); builder.addConstructorArgValue(repositoryInterface.getName()); return builder.getBeanDefinition(); } diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java index 78ec54b13..e383da700 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java @@ -20,7 +20,6 @@ import static org.mockito.Mockito.*; import java.util.Collections; import java.util.List; -import java.util.Set; import org.junit.jupiter.api.Test; @@ -45,8 +44,8 @@ class RepositoryComponentProviderUnitTests { @Test void findsAnnotatedRepositoryInterface() { - RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections.emptyList(), registry); - Set components = provider.findCandidateComponents("org.springframework.data.repository.sample"); + var provider = new RepositoryComponentProvider(Collections.emptyList(), registry); + var components = provider.findCandidateComponents("org.springframework.data.repository.sample"); assertThat(components).hasSize(4); assertThat(components).extracting(BeanDefinition::getBeanClassName) @@ -58,8 +57,8 @@ class RepositoryComponentProviderUnitTests { List filters = Collections.singletonList(new AssignableTypeFilter(MyOtherRepository.class)); - RepositoryComponentProvider provider = new RepositoryComponentProvider(filters, registry); - Set components = provider.findCandidateComponents("org.springframework.data.repository"); + var provider = new RepositoryComponentProvider(filters, registry); + var components = provider.findCandidateComponents("org.springframework.data.repository"); assertThat(components).hasSize(1); assertThat(components).extracting(BeanDefinition::getBeanClassName).contains(MyOtherRepository.class.getName()); @@ -68,11 +67,11 @@ class RepositoryComponentProviderUnitTests { @Test // DATACMNS-90 void shouldConsiderNestedRepositoryInterfacesIfEnabled() { - RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections.emptyList(), registry); + var provider = new RepositoryComponentProvider(Collections.emptyList(), registry); provider.setConsiderNestedRepositoryInterfaces(true); - Set components = provider.findCandidateComponents("org.springframework.data.repository.config"); - String nestedRepositoryClassName = "org.springframework.data.repository.config.RepositoryComponentProviderUnitTests$MyNestedRepository"; + var components = provider.findCandidateComponents("org.springframework.data.repository.config"); + var nestedRepositoryClassName = "org.springframework.data.repository.config.RepositoryComponentProviderUnitTests$MyNestedRepository"; assertThat(components.size()).isGreaterThanOrEqualTo(1); assertThat(components).extracting(BeanDefinition::getBeanClassName).contains(nestedRepositoryClassName); @@ -87,7 +86,7 @@ class RepositoryComponentProviderUnitTests { @Test // DATACMNS-1098 void exposesBeanDefinitionRegistry() { - RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections.emptyList(), registry); + var provider = new RepositoryComponentProvider(Collections.emptyList(), registry); assertThat(provider.getRegistry()).isEqualTo(registry); } diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationDelegateUnitTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationDelegateUnitTests.java index 47881af85..0d11f4358 100644 --- a/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationDelegateUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationDelegateUnitTests.java @@ -25,11 +25,8 @@ import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; -import org.springframework.aop.TargetSource; import org.springframework.aop.framework.Advised; import org.springframework.beans.factory.ListableBeanFactory; -import org.springframework.beans.factory.config.BeanDefinition; -import org.springframework.beans.factory.parsing.BeanComponentDefinition; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.ComponentScan.Filter; @@ -37,7 +34,6 @@ import org.springframework.context.annotation.FilterType; import org.springframework.context.support.GenericApplicationContext; import org.springframework.core.env.StandardEnvironment; import org.springframework.core.metrics.ApplicationStartup; -import org.springframework.core.metrics.StartupStep; import org.springframework.core.type.StandardAnnotationMetadata; import org.springframework.data.repository.config.RepositoryConfigurationDelegate.LazyRepositoryInjectionPointResolver; import org.springframework.data.repository.sample.AddressRepository; @@ -59,18 +55,18 @@ class RepositoryConfigurationDelegateUnitTests { @Test // DATACMNS-892 void registersRepositoryBeanNameAsAttribute() { - StandardEnvironment environment = new StandardEnvironment(); - GenericApplicationContext context = new GenericApplicationContext(); + var environment = new StandardEnvironment(); + var context = new GenericApplicationContext(); RepositoryConfigurationSource configSource = new AnnotationRepositoryConfigurationSource( new StandardAnnotationMetadata(TestConfig.class, true), EnableRepositories.class, context, environment, context.getDefaultListableBeanFactory()); - RepositoryConfigurationDelegate delegate = new RepositoryConfigurationDelegate(configSource, context, environment); + var delegate = new RepositoryConfigurationDelegate(configSource, context, environment); - for (BeanComponentDefinition definition : delegate.registerRepositoriesIn(context, extension)) { + for (var definition : delegate.registerRepositoriesIn(context, extension)) { - BeanDefinition beanDefinition = definition.getBeanDefinition(); + var beanDefinition = definition.getBeanDefinition(); assertThat(beanDefinition.getAttribute(RepositoryConfigurationDelegate.FACTORY_BEAN_OBJECT_TYPE).toString()) .endsWith("Repository"); @@ -85,7 +81,7 @@ class RepositoryConfigurationDelegateUnitTests { @Test // DATACMNS-1368 void registersDeferredRepositoryInitializationListener() { - ListableBeanFactory beanFactory = assertLazyRepositoryBeanSetup(DeferredConfig.class); + var beanFactory = assertLazyRepositoryBeanSetup(DeferredConfig.class); assertThat(beanFactory.getBeanNamesForType(DeferredRepositoryInitializationListener.class)).isNotEmpty(); @@ -93,18 +89,18 @@ class RepositoryConfigurationDelegateUnitTests { private static ListableBeanFactory assertLazyRepositoryBeanSetup(Class configClass) { - StandardEnvironment environment = new StandardEnvironment(); - AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(configClass); + var environment = new StandardEnvironment(); + var context = new AnnotationConfigApplicationContext(configClass); assertThat(context.getDefaultListableBeanFactory().getAutowireCandidateResolver()) .isInstanceOf(LazyRepositoryInjectionPointResolver.class); - AddressRepositoryClient client = context.getBean(AddressRepositoryClient.class); - AddressRepository repository = client.getRepository(); + var client = context.getBean(AddressRepositoryClient.class); + var repository = client.getRepository(); assertThat(Advised.class.isInstance(repository)).isTrue(); - TargetSource targetSource = Advised.class.cast(repository).getTargetSource(); + var targetSource = Advised.class.cast(repository).getTargetSource(); assertThat(targetSource).isNotNull(); return context.getDefaultListableBeanFactory(); @@ -113,17 +109,17 @@ class RepositoryConfigurationDelegateUnitTests { @Test // DATACMNS-1832 void writesRepositoryScanningMetrics() { - ApplicationStartup startup = Mockito.spy(ApplicationStartup.DEFAULT); + var startup = Mockito.spy(ApplicationStartup.DEFAULT); - StandardEnvironment environment = new StandardEnvironment(); - GenericApplicationContext context = new GenericApplicationContext(); + var environment = new StandardEnvironment(); + var context = new GenericApplicationContext(); context.setApplicationStartup(startup); RepositoryConfigurationSource configSource = new AnnotationRepositoryConfigurationSource( new StandardAnnotationMetadata(TestConfig.class, true), EnableRepositories.class, context, environment, context.getDefaultListableBeanFactory()); - RepositoryConfigurationDelegate delegate = new RepositoryConfigurationDelegate(configSource, context, environment); + var delegate = new RepositoryConfigurationDelegate(configSource, context, environment); delegate.registerRepositoriesIn(context, extension); diff --git a/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java b/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java index a95dfb91d..d21600425 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java @@ -23,6 +23,7 @@ import java.util.Collection; import java.util.Collections; import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.context.annotation.ComponentScan.Filter; import org.springframework.context.annotation.FilterType; @@ -36,7 +37,6 @@ import org.springframework.core.type.StandardAnnotationMetadata; import org.springframework.dao.InvalidDataAccessApiUsageException; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.Repository; -import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.AbstractRepositoryMetadata; import org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport; import org.springframework.data.repository.core.support.RepositoryFactorySupport; @@ -54,21 +54,21 @@ class RepositoryConfigurationExtensionSupportUnitTests { @Test // DATACMNS-526 void doesNotConsiderRepositoryForPlainTypeStrictMatch() { - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(PlainTypeRepository.class); + var metadata = AbstractRepositoryMetadata.getMetadata(PlainTypeRepository.class); assertThat(extension.isStrictRepositoryCandidate(metadata)).isFalse(); } @Test // DATACMNS-526 void considersRepositoryWithAnnotatedTypeStrictMatch() { - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(AnnotatedTypeRepository.class); + var metadata = AbstractRepositoryMetadata.getMetadata(AnnotatedTypeRepository.class); assertThat(extension.isStrictRepositoryCandidate(metadata)).isTrue(); } @Test // DATACMNS-526 void considersRepositoryInterfaceExtendingStoreInterfaceStrictMatch() { - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(ExtendingInterface.class); + var metadata = AbstractRepositoryMetadata.getMetadata(ExtendingInterface.class); assertThat(extension.isStrictRepositoryCandidate(metadata)).isTrue(); } @@ -78,7 +78,7 @@ class RepositoryConfigurationExtensionSupportUnitTests { AnnotationMetadata annotationMetadata = new StandardAnnotationMetadata(ReactiveConfiguration.class, true); Environment environment = new StandardEnvironment(); ResourceLoader resourceLoader = new DefaultResourceLoader(); - BeanDefinitionRegistry registry = mock(BeanDefinitionRegistry.class); + var registry = mock(BeanDefinitionRegistry.class); RepositoryConfigurationSource source = new AnnotationRepositoryConfigurationSource(annotationMetadata, EnableRepositories.class, resourceLoader, environment, registry); @@ -91,8 +91,8 @@ class RepositoryConfigurationExtensionSupportUnitTests { @Test // DATACMNS-1596 void doesNotClaimEntityIfNoIdentifyingAnnotationsAreExposed() { - NonIdentifyingConfigurationExtension extension = new NonIdentifyingConfigurationExtension(); - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(AnnotatedTypeRepository.class); + var extension = new NonIdentifyingConfigurationExtension(); + var metadata = AbstractRepositoryMetadata.getMetadata(AnnotatedTypeRepository.class); assertThat(extension.isStrictRepositoryCandidate(metadata)).isFalse(); } diff --git a/src/test/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParserIntegrationTests.java b/src/test/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParserIntegrationTests.java index 807286586..48380925a 100755 --- a/src/test/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParserIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/config/ResourceReaderRepositoryPopulatorBeanDefinitionParserIntegrationTests.java @@ -20,7 +20,7 @@ import static org.assertj.core.api.Assertions.*; import java.util.List; import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.config.BeanDefinition; + import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.beans.factory.xml.XmlBeanDefinitionReader; import org.springframework.core.io.ClassPathResource; @@ -41,51 +41,51 @@ class ResourceReaderRepositoryPopulatorBeanDefinitionParserIntegrationTests { @Test // DATACMNS-333 void registersJackson2InitializerCorrectly() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); - XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory); + var beanFactory = new DefaultListableBeanFactory(); + var reader = new XmlBeanDefinitionReader(beanFactory); reader.loadBeanDefinitions(getPopulatorResource()); - BeanDefinition definition = beanFactory.getBeanDefinition("jackson2-populator"); + var definition = beanFactory.getBeanDefinition("jackson2-populator"); assertThat(definition).isNotNull(); - Object bean = beanFactory.getBean("jackson2-populator"); + var bean = beanFactory.getBean("jackson2-populator"); assertThat(bean).isInstanceOf(ResourceReaderRepositoryPopulator.class); - Object resourceReader = ReflectionTestUtils.getField(bean, "reader"); + var resourceReader = ReflectionTestUtils.getField(bean, "reader"); assertThat(resourceReader).isInstanceOf(Jackson2ResourceReader.class); - Object resources = ReflectionTestUtils.getField(bean, "resources"); + var resources = ReflectionTestUtils.getField(bean, "resources"); assertIsListOfClasspathResourcesWithPath(resources, "org/springframework/data/repository/init/data.json"); } @Test // DATACMNS-58 void registersXmlInitializerCorrectly() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); - XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(beanFactory); + var beanFactory = new DefaultListableBeanFactory(); + var reader = new XmlBeanDefinitionReader(beanFactory); reader.loadBeanDefinitions(getPopulatorResource()); - BeanDefinition definition = beanFactory.getBeanDefinition("xml-populator"); + var definition = beanFactory.getBeanDefinition("xml-populator"); assertThat(definition).isNotNull(); - Object bean = beanFactory.getBean("xml-populator"); + var bean = beanFactory.getBean("xml-populator"); assertThat(bean).isInstanceOf(ResourceReaderRepositoryPopulator.class); - Object resourceReader = ReflectionTestUtils.getField(bean, "reader"); + var resourceReader = ReflectionTestUtils.getField(bean, "reader"); assertThat(resourceReader).isInstanceOf(UnmarshallingResourceReader.class); - Object unmarshaller = ReflectionTestUtils.getField(resourceReader, "unmarshaller"); + var unmarshaller = ReflectionTestUtils.getField(resourceReader, "unmarshaller"); assertThat(unmarshaller).isInstanceOf(Jaxb2Marshaller.class); - Object resources = ReflectionTestUtils.getField(bean, "resources"); + var resources = ReflectionTestUtils.getField(bean, "resources"); assertIsListOfClasspathResourcesWithPath(resources, "org/springframework/data/repository/init/data.xml"); } private static void assertIsListOfClasspathResourcesWithPath(Object source, String path) { assertThat(source).isInstanceOf(List.class); - List list = (List) source; + var list = (List) source; assertThat(list).isNotEmpty(); - Object element = list.get(0); + var element = list.get(0); assertThat(element).isInstanceOf(ClassPathResource.class); - ClassPathResource resource = (ClassPathResource) element; + var resource = (ClassPathResource) element; assertThat(resource.getPath()).isEqualTo(path); } diff --git a/src/test/java/org/springframework/data/repository/config/SelectionSetUnitTests.java b/src/test/java/org/springframework/data/repository/config/SelectionSetUnitTests.java index 11e52e9dd..7df512139 100644 --- a/src/test/java/org/springframework/data/repository/config/SelectionSetUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/SelectionSetUnitTests.java @@ -65,7 +65,7 @@ class SelectionSetUnitTests { @Test // DATACMNS-764 void returnsUniqueResultAfterFilter() { - SelectionSet selection = SelectionSet.of(asList("one", "two", "three")) + var selection = SelectionSet.of(asList("one", "two", "three")) .filterIfNecessary(s -> s.contains("w")); assertThat(selection.uniqueResult()).hasValue("two"); @@ -74,7 +74,7 @@ class SelectionSetUnitTests { @Test // DATACMNS-764 void ignoresFilterWhenResultIsAlreadyUnique() { - SelectionSet selection = SelectionSet.of(asList("one")).filterIfNecessary(s -> s.contains("w")); + var selection = SelectionSet.of(asList("one")).filterIfNecessary(s -> s.contains("w")); assertThat(selection.uniqueResult()).hasValue("one"); } diff --git a/src/test/java/org/springframework/data/repository/core/support/AbstractEntityInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/AbstractEntityInformationUnitTests.java index 2f0bff2ee..e89dc9555 100755 --- a/src/test/java/org/springframework/data/repository/core/support/AbstractEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/AbstractEntityInformationUnitTests.java @@ -52,10 +52,10 @@ class AbstractEntityInformationUnitTests { @Test // DATACMNS-357 void detectsNewStateForPrimitiveIds() { - CustomEntityInformation fooEn = new CustomEntityInformation<>( + var fooEn = new CustomEntityInformation( PrimitiveIdEntity.class); - PrimitiveIdEntity entity = new PrimitiveIdEntity(); + var entity = new PrimitiveIdEntity(); assertThat(fooEn.isNew(entity)).isTrue(); entity.id = 5L; @@ -65,10 +65,10 @@ class AbstractEntityInformationUnitTests { @Test // DATACMNS-357 void detectsNewStateForPrimitiveWrapperIds() { - CustomEntityInformation fooEn = new CustomEntityInformation<>( + var fooEn = new CustomEntityInformation( PrimitiveWrapperIdEntity.class); - PrimitiveWrapperIdEntity entity = new PrimitiveWrapperIdEntity(); + var entity = new PrimitiveWrapperIdEntity(); assertThat(fooEn.isNew(entity)).isTrue(); entity.id = 5L; diff --git a/src/test/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadataUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadataUnitTests.java index 663542761..d10c60928 100755 --- a/src/test/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadataUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/AbstractRepositoryMetadataUnitTests.java @@ -18,11 +18,11 @@ package org.springframework.data.repository.core.support; import static org.assertj.core.api.Assertions.*; import java.io.Serializable; -import java.lang.reflect.Method; import java.util.List; import java.util.Map; import org.junit.jupiter.api.Test; + import org.springframework.core.ResolvableType; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; @@ -44,14 +44,14 @@ class AbstractRepositoryMetadataUnitTests { void discoversSimpleReturnTypeCorrectly() throws Exception { RepositoryMetadata metadata = new DummyRepositoryMetadata(UserRepository.class); - Method method = UserRepository.class.getMethod("findSingle"); + var method = UserRepository.class.getMethod("findSingle"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } @Test // DATACMNS-98 void resolvesTypeParameterReturnType() throws Exception { RepositoryMetadata metadata = new DummyRepositoryMetadata(ConcreteRepository.class); - Method method = ConcreteRepository.class.getMethod("intermediateMethod"); + var method = ConcreteRepository.class.getMethod("intermediateMethod"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } @@ -59,7 +59,7 @@ class AbstractRepositoryMetadataUnitTests { void determinesReturnTypeFromPageable() throws Exception { RepositoryMetadata metadata = new DummyRepositoryMetadata(ExtendingRepository.class); - Method method = ExtendingRepository.class.getMethod("findByFirstname", Pageable.class, String.class); + var method = ExtendingRepository.class.getMethod("findByFirstname", Pageable.class, String.class); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } @@ -80,7 +80,7 @@ class AbstractRepositoryMetadataUnitTests { @Test // DATACMNS-98 void determinesReturnTypeFromGenericType() throws Exception { RepositoryMetadata metadata = new DummyRepositoryMetadata(ExtendingRepository.class); - Method method = ExtendingRepository.class.getMethod("someMethod"); + var method = ExtendingRepository.class.getMethod("someMethod"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(GenericType.class); } @@ -88,7 +88,7 @@ class AbstractRepositoryMetadataUnitTests { void handlesGenericTypeInReturnedCollectionCorrectly() throws SecurityException, NoSuchMethodException { RepositoryMetadata metadata = new DummyRepositoryMetadata(ExtendingRepository.class); - Method method = ExtendingRepository.class.getMethod("anotherMethod"); + var method = ExtendingRepository.class.getMethod("anotherMethod"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(Map.class); } @@ -96,7 +96,7 @@ class AbstractRepositoryMetadataUnitTests { void detectsArrayReturnTypeCorrectly() throws Exception { RepositoryMetadata metadata = new DefaultRepositoryMetadata(PagedRepository.class); - Method method = PagedRepository.class.getMethod("returnsArray"); + var method = PagedRepository.class.getMethod("returnsArray"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } @@ -104,9 +104,9 @@ class AbstractRepositoryMetadataUnitTests { @Test // DATACMNS-1299 void doesNotUnwrapCustomTypeImplementingIterable() throws Exception { - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(ContainerRepository.class); + var metadata = AbstractRepositoryMetadata.getMetadata(ContainerRepository.class); - Method method = ContainerRepository.class.getMethod("someMethod"); + var method = ContainerRepository.class.getMethod("someMethod"); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(Container.class); } diff --git a/src/test/java/org/springframework/data/repository/core/support/DefaultCrudMethodsUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/DefaultCrudMethodsUnitTests.java index 451bcb4a8..b88bfbebb 100755 --- a/src/test/java/org/springframework/data/repository/core/support/DefaultCrudMethodsUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/DefaultCrudMethodsUnitTests.java @@ -45,7 +45,7 @@ class DefaultCrudMethodsUnitTests { @Test void detectsMethodsOnCrudRepository() throws Exception { - Class type = DomainCrudRepository.class; + var type = DomainCrudRepository.class; assertFindAllMethodOn(type, type.getMethod("findAll")); assertDeleteMethodOn(type, type.getMethod("delete", Object.class)); @@ -55,7 +55,7 @@ class DefaultCrudMethodsUnitTests { @Test void detectsMethodsOnPagingAndSortingRepository() throws Exception { - Class type = DomainPagingAndSortingRepository.class; + var type = DomainPagingAndSortingRepository.class; assertFindAllMethodOn(type, type.getMethod("findAll", Pageable.class)); assertDeleteMethodOn(type, type.getMethod("delete", Object.class)); @@ -65,7 +65,7 @@ class DefaultCrudMethodsUnitTests { @Test void detectsFindAllWithSortParameterOnSortingRepository() throws Exception { - Class type = RepositoryWithCustomSortingFindAll.class; + var type = RepositoryWithCustomSortingFindAll.class; assertFindAllMethodOn(type, type.getMethod("findAll", Sort.class)); assertSaveMethodPresent(type, false); @@ -74,7 +74,7 @@ class DefaultCrudMethodsUnitTests { @Test // DATACMNS-393 void selectsFindAllWithSortParameterOnRepositoryAmongUnsuitableAlternatives() throws Exception { - Class type = RepositoryWithInvalidPagingFallbackToSortFindAll.class; + var type = RepositoryWithInvalidPagingFallbackToSortFindAll.class; assertFindAllMethodOn(type, type.getMethod("findAll", Sort.class)); assertSaveMethodPresent(type, false); @@ -83,24 +83,24 @@ class DefaultCrudMethodsUnitTests { @Test void detectsMethodsOnCustomRepository() throws Exception { - Class type = RepositoryWithCustomSortingAndPagingFindAll.class; + var type = RepositoryWithCustomSortingAndPagingFindAll.class; assertFindAllMethodOn(type, type.getMethod("findAll", Pageable.class)); - Class type1 = RepositoryWithIterableDeleteOnly.class; + var type1 = RepositoryWithIterableDeleteOnly.class; assertDeleteMethodOn(type1, type1.getMethod("delete", Iterable.class)); } @Test void doesNotDetectInvalidlyDeclaredMethods() throws Exception { - Class type = RepositoryWithInvalidPagingFindAll.class; + var type = RepositoryWithInvalidPagingFindAll.class; assertFindAllMethodOn(type, Optional.empty()); } @Test // DATACMNS-393 void detectsOverloadedMethodsCorrectly() throws Exception { - Class type = RepositoryWithAllCrudMethodOverloaded.class; + var type = RepositoryWithAllCrudMethodOverloaded.class; assertFindOneMethodOn(type, type.getDeclaredMethod("findById", Long.class)); assertDeleteMethodOn(type, type.getDeclaredMethod("deleteById", Long.class)); assertSaveMethodOn(type, type.getDeclaredMethod("save", Domain.class)); @@ -110,7 +110,7 @@ class DefaultCrudMethodsUnitTests { @Test // DATACMNS-393 void ignoresWrongOverloadedMethods() throws Exception { - Class type = RepositoryWithAllCrudMethodOverloadedWrong.class; + var type = RepositoryWithAllCrudMethodOverloadedWrong.class; assertFindOneMethodOn(type, CrudRepository.class.getDeclaredMethod("findById", Object.class)); assertDeleteMethodOn(type, CrudRepository.class.getDeclaredMethod("delete", Object.class)); assertSaveMethodOn(type, CrudRepository.class.getDeclaredMethod("save", Object.class)); @@ -132,7 +132,7 @@ class DefaultCrudMethodsUnitTests { @Test // DATACMNS-619 void exposedMethodsAreAccessible() { - CrudMethods methods = getMethodsFor(RepositoryWithAllCrudMethodOverloaded.class); + var methods = getMethodsFor(RepositoryWithAllCrudMethodOverloaded.class); Arrays .asList(methods.getSaveMethod(), methods.getDeleteMethod(), methods.getFindAllMethod(), @@ -155,7 +155,7 @@ class DefaultCrudMethodsUnitTests { private static void assertFindAllMethodOn(Class type, Optional method) { - CrudMethods methods = getMethodsFor(type); + var methods = getMethodsFor(type); assertThat(methods.hasFindAllMethod()).isEqualTo(method.isPresent()); assertThat(methods.getFindAllMethod()).isEqualTo(method); @@ -163,7 +163,7 @@ class DefaultCrudMethodsUnitTests { private static void assertFindOneMethodOn(Class type, Method method) { - CrudMethods methods = getMethodsFor(type); + var methods = getMethodsFor(type); assertThat(methods.hasFindOneMethod()).isEqualTo(method != null); assertThat(methods.getFindOneMethod()).hasValue(method); @@ -171,7 +171,7 @@ class DefaultCrudMethodsUnitTests { private static void assertDeleteMethodOn(Class type, Method method) { - CrudMethods methods = getMethodsFor(type); + var methods = getMethodsFor(type); assertThat(methods.hasDelete()).isEqualTo(method != null); assertThat(methods.getDeleteMethod()).hasValue(method); @@ -179,7 +179,7 @@ class DefaultCrudMethodsUnitTests { private static void assertSaveMethodOn(Class type, Method method) { - CrudMethods methods = getMethodsFor(type); + var methods = getMethodsFor(type); assertThat(methods.hasSaveMethod()).isEqualTo(method != null); assertThat(methods.getSaveMethod()).hasValue(method); @@ -187,7 +187,7 @@ class DefaultCrudMethodsUnitTests { private static void assertSaveMethodPresent(Class type, boolean present) { - CrudMethods methods = getMethodsFor(type); + var methods = getMethodsFor(type); assertThat(methods.hasSaveMethod()).isEqualTo(present); assertThat(methods.getSaveMethod().isPresent()).isEqualTo(present); diff --git a/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryInformationUnitTests.java index d64dfddae..d1584fa1e 100755 --- a/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryInformationUnitTests.java @@ -66,12 +66,12 @@ class DefaultRepositoryInformationUnitTests { @Test void discoversRepositoryBaseClassMethod() throws Exception { - Method method = FooRepository.class.getMethod("findById", Integer.class); + var method = FooRepository.class.getMethod("findById", Integer.class); RepositoryMetadata metadata = new DefaultRepositoryMetadata(FooRepository.class); - DefaultRepositoryInformation information = new DefaultRepositoryInformation(metadata, REPOSITORY, + var information = new DefaultRepositoryInformation(metadata, REPOSITORY, RepositoryComposition.empty().withMethodLookup(MethodLookups.forRepositoryTypes(metadata))); - Method reference = information.getTargetClassMethod(method); + var reference = information.getTargetClassMethod(method); assertThat(reference.getDeclaringClass()).isEqualTo(REPOSITORY); assertThat(reference.getName()).isEqualTo("findById"); } @@ -79,10 +79,10 @@ class DefaultRepositoryInformationUnitTests { @Test void discoveresNonRepositoryBaseClassMethod() throws Exception { - Method method = FooRepository.class.getMethod("findById", Long.class); + var method = FooRepository.class.getMethod("findById", Long.class); RepositoryMetadata metadata = new DefaultRepositoryMetadata(FooRepository.class); - DefaultRepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, + var information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty().withMethodLookup(MethodLookups.forRepositoryTypes(metadata))); assertThat(information.getTargetClassMethod(method)).isEqualTo(method); @@ -95,8 +95,8 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.just(customImplementation)); - Method source = FooRepositoryCustom.class.getMethod("save", User.class); - Method expected = customImplementation.getClass().getMethod("save", User.class); + var source = FooRepositoryCustom.class.getMethod("save", User.class); + var expected = customImplementation.getClass().getMethod("save", User.class); assertThat(information.getTargetClassMethod(source)).isEqualTo(expected); } @@ -114,11 +114,11 @@ class DefaultRepositoryInformationUnitTests { @Test void discoversIntermediateMethodsAsBackingMethods() throws NoSuchMethodException, SecurityException { - DefaultRepositoryMetadata metadata = new DefaultRepositoryMetadata(CustomRepository.class); - DefaultRepositoryInformation information = new DefaultRepositoryInformation(metadata, + var metadata = new DefaultRepositoryMetadata(CustomRepository.class); + var information = new DefaultRepositoryInformation(metadata, PagingAndSortingRepository.class, RepositoryComposition.empty()); - Method method = CustomRepository.class.getMethod("findAll", Pageable.class); + var method = CustomRepository.class.getMethod("findAll", Pageable.class); assertThat(information.isBaseClassMethod(method)).isTrue(); method = getMethodFrom(CustomRepository.class, "existsById"); @@ -144,8 +144,8 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty()); - Method saveMethod = BaseRepository.class.getMethod("save", Object.class); - Method deleteMethod = BaseRepository.class.getMethod("delete", Object.class); + var saveMethod = BaseRepository.class.getMethod("save", Object.class); + var deleteMethod = BaseRepository.class.getMethod("delete", Object.class); Iterable queryMethods = information.getQueryMethods(); @@ -159,8 +159,8 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty()); - Method intermediateMethod = BaseRepository.class.getMethod("genericMethodToOverride", String.class); - Method concreteMethod = ConcreteRepository.class.getMethod("genericMethodToOverride", String.class); + var intermediateMethod = BaseRepository.class.getMethod("genericMethodToOverride", String.class); + var concreteMethod = ConcreteRepository.class.getMethod("genericMethodToOverride", String.class); Iterable queryMethods = information.getQueryMethods(); @@ -175,7 +175,7 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty()); - Method queryMethod = getMethodFrom(ConcreteRepository.class, "findBySomethingDifferent"); + var queryMethod = getMethodFrom(ConcreteRepository.class, "findBySomethingDifferent"); assertThat(information.getQueryMethods()).contains(queryMethod); assertThat(information.isQueryMethod(queryMethod)).isTrue(); @@ -188,7 +188,7 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty()); - Method method = BaseRepository.class.getMethod("findById", Object.class); + var method = BaseRepository.class.getMethod("findById", Object.class); assertThat(information.getQueryMethods()).contains(method); } @@ -200,8 +200,8 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.empty()); - Method method = BossRepository.class.getMethod("saveAll", Iterable.class); - Method reference = CrudRepository.class.getMethod("saveAll", Iterable.class); + var method = BossRepository.class.getMethod("saveAll", Iterable.class); + var reference = CrudRepository.class.getMethod("saveAll", Iterable.class); assertThat(information.getTargetClassMethod(method)).isEqualTo(reference); } @@ -223,8 +223,8 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.just(customImplementation)); - Method source = FooRepositoryCustom.class.getMethod("exists", Object.class); - Method expected = customImplementation.getClass().getMethod("exists", Object.class); + var source = FooRepositoryCustom.class.getMethod("exists", Object.class); + var expected = customImplementation.getClass().getMethod("exists", Object.class); assertThat(information.getTargetClassMethod(source)).isEqualTo(expected); } @@ -232,12 +232,12 @@ class DefaultRepositoryInformationUnitTests { @Test // DATACMNS-912 void discoversCustomlyImplementedCrudMethodWithGenericParameters() throws Exception { - GenericsSaveRepositoryImpl customImplementation = new GenericsSaveRepositoryImpl(); + var customImplementation = new GenericsSaveRepositoryImpl(); RepositoryMetadata metadata = new DefaultRepositoryMetadata(GenericsSaveRepository.class); RepositoryInformation information = new DefaultRepositoryInformation(metadata, RepositoryFactorySupport.class, RepositoryComposition.just(customImplementation).withMethodLookup(MethodLookups.forRepositoryTypes(metadata))); - Method customBaseRepositoryMethod = GenericsSaveRepository.class.getMethod("save", Object.class); + var customBaseRepositoryMethod = GenericsSaveRepository.class.getMethod("save", Object.class); assertThat(information.isCustomMethod(customBaseRepositoryMethod)).isTrue(); } @@ -248,7 +248,7 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.just(customImplementation)); - Method method = FooRepository.class.getMethod("staticMethod"); + var method = FooRepository.class.getMethod("staticMethod"); assertThat(information.getQueryMethods()).doesNotContain(method); } @@ -260,7 +260,7 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, CrudRepository.class, RepositoryComposition.just(customImplementation)); - Method method = FooRepository.class.getMethod("defaultMethod"); + var method = FooRepository.class.getMethod("defaultMethod"); assertThat(information.getQueryMethods()).doesNotContain(method); } @@ -272,7 +272,7 @@ class DefaultRepositoryInformationUnitTests { RepositoryInformation information = new DefaultRepositoryInformation(metadata, DummyRepositoryImpl.class, RepositoryComposition.empty()); - Method method = DummyRepository.class.getMethod("saveAll", Iterable.class); + var method = DummyRepository.class.getMethod("saveAll", Iterable.class); assertThat(information.getTargetClassMethod(method)) .isEqualTo(DummyRepositoryImpl.class.getMethod("saveAll", Iterable.class)); @@ -281,12 +281,12 @@ class DefaultRepositoryInformationUnitTests { @Test // DATACMNS-1008, DATACMNS-912, DATACMNS-854 void discoversCustomlyImplementedCrudMethodWithoutGenericParameters() throws Exception { - SimpleSaveRepositoryImpl customImplementation = new SimpleSaveRepositoryImpl(); + var customImplementation = new SimpleSaveRepositoryImpl(); RepositoryMetadata metadata = new DefaultRepositoryMetadata(SimpleSaveRepository.class); RepositoryInformation information = new DefaultRepositoryInformation(metadata, RepositoryFactorySupport.class, RepositoryComposition.just(customImplementation).withMethodLookup(MethodLookups.forRepositoryTypes(metadata))); - Method customBaseRepositoryMethod = SimpleSaveRepository.class.getMethod("save", Object.class); + var customBaseRepositoryMethod = SimpleSaveRepository.class.getMethod("save", Object.class); assertThat(information.isCustomMethod(customBaseRepositoryMethod)).isTrue(); } diff --git a/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadataUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadataUnitTests.java index fc74d612a..5af1cf92a 100755 --- a/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadataUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/DefaultRepositoryMetadataUnitTests.java @@ -18,11 +18,11 @@ package org.springframework.data.repository.core.support; import static org.assertj.core.api.Assertions.*; import java.io.Serializable; -import java.lang.reflect.Method; import java.util.Collection; import java.util.Optional; import org.junit.jupiter.api.Test; + import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.data.repository.CrudRepository; @@ -101,7 +101,7 @@ class DefaultRepositoryMetadataUnitTests { RepositoryMetadata metadata = new DefaultRepositoryMetadata(OptionalRepository.class); - Method method = OptionalRepository.class.getMethod("findByEmailAddress", String.class); + var method = OptionalRepository.class.getMethod("findByEmailAddress", String.class); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } @@ -110,7 +110,7 @@ class DefaultRepositoryMetadataUnitTests { RepositoryMetadata metadata = new DefaultRepositoryMetadata(OptionalRepository.class); - Method method = OptionalRepository.class.getMethod("findByLastname", String.class); + var method = OptionalRepository.class.getMethod("findByLastname", String.class); assertThat(metadata.getReturnedDomainClass(method)).isEqualTo(User.class); } diff --git a/src/test/java/org/springframework/data/repository/core/support/DummyReactiveRepositoryFactory.java b/src/test/java/org/springframework/data/repository/core/support/DummyReactiveRepositoryFactory.java index 2a4944b81..ad986e2ee 100644 --- a/src/test/java/org/springframework/data/repository/core/support/DummyReactiveRepositoryFactory.java +++ b/src/test/java/org/springframework/data/repository/core/support/DummyReactiveRepositoryFactory.java @@ -99,7 +99,7 @@ public class DummyReactiveRepositoryFactory extends ReactiveRepositoryFactorySup @Override protected RepositoryComposition.RepositoryFragments getRepositoryFragments(RepositoryMetadata metadata) { - RepositoryComposition.RepositoryFragments fragments = super.getRepositoryFragments(metadata); + var fragments = super.getRepositoryFragments(metadata); return QuerydslPredicateExecutor.class.isAssignableFrom(metadata.getRepositoryInterface()) // ? fragments.append(RepositoryComposition.RepositoryFragments.just(querydsl)) // diff --git a/src/test/java/org/springframework/data/repository/core/support/DummyRepositoryFactory.java b/src/test/java/org/springframework/data/repository/core/support/DummyRepositoryFactory.java index 65533ae9a..2a55bcc83 100644 --- a/src/test/java/org/springframework/data/repository/core/support/DummyRepositoryFactory.java +++ b/src/test/java/org/springframework/data/repository/core/support/DummyRepositoryFactory.java @@ -65,12 +65,12 @@ public class DummyRepositoryFactory extends RepositoryFactorySupport { Mockito.any(ProjectionFactory.class), Mockito.any(NamedQueries.class))).thenReturn(queryOne); this.applicationStartup = mock(ApplicationStartup.class); - StartupStep startupStep = mock(StartupStep.class); + var startupStep = mock(StartupStep.class); when(applicationStartup.start(anyString())).thenReturn(startupStep); when(startupStep.tag(anyString(), anyString())).thenReturn(startupStep); when(startupStep.tag(anyString(), ArgumentMatchers.> any())).thenReturn(startupStep); - BeanFactory beanFactory = Mockito.mock(BeanFactory.class); + var beanFactory = Mockito.mock(BeanFactory.class); when(beanFactory.getBean(ApplicationStartup.class)).thenReturn(applicationStartup); setBeanFactory(beanFactory); } @@ -120,7 +120,7 @@ public class DummyRepositoryFactory extends RepositoryFactorySupport { @Override protected RepositoryFragments getRepositoryFragments(RepositoryMetadata metadata) { - RepositoryFragments fragments = super.getRepositoryFragments(metadata); + var fragments = super.getRepositoryFragments(metadata); return QuerydslPredicateExecutor.class.isAssignableFrom(metadata.getRepositoryInterface()) // ? fragments.append(RepositoryFragments.just(querydsl)) // diff --git a/src/test/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessorUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessorUnitTests.java index 118e2a063..8589bdb29 100644 --- a/src/test/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/EventPublishingRepositoryProxyPostProcessorUnitTests.java @@ -76,9 +76,9 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-928 void exposesEventsExposedByEntityToPublisher() { - SomeEvent first = new SomeEvent(); - SomeEvent second = new SomeEvent(); - MultipleEvents entity = MultipleEvents.of(Arrays.asList(first, second)); + var first = new SomeEvent(); + var second = new SomeEvent(); + var entity = MultipleEvents.of(Arrays.asList(first, second)); EventPublishingMethod.of(MultipleEvents.class).publishEventsFrom(entity, publisher); @@ -89,8 +89,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-928 void exposesSingleEventByEntityToPublisher() { - SomeEvent event = new SomeEvent(); - OneEvent entity = OneEvent.of(event); + var event = new SomeEvent(); + var entity = OneEvent.of(event); EventPublishingMethod.of(OneEvent.class).publishEventsFrom(entity, publisher); @@ -100,7 +100,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-928 void doesNotExposeNullEvent() { - OneEvent entity = OneEvent.of(null); + var entity = OneEvent.of(null); EventPublishingMethod.of(OneEvent.class).publishEventsFrom(entity, publisher); @@ -115,8 +115,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-928 void interceptsSaveMethod() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("save", Object.class), sample); EventPublishingMethodInterceptor// @@ -128,8 +128,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1663 void interceptsDeleteMethod() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("delete", Object.class), sample); EventPublishingMethodInterceptor// @@ -169,7 +169,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { RepositoryInformation information = new DummyRepositoryInformation(SampleRepository.class); RepositoryProxyPostProcessor processor = new EventPublishingRepositoryProxyPostProcessor(publisher); - ProxyFactory factory = mock(ProxyFactory.class); + var factory = mock(ProxyFactory.class); processor.postProcess(factory, information); @@ -182,7 +182,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { RepositoryInformation information = new DummyRepositoryInformation(CrudRepository.class); RepositoryProxyPostProcessor processor = new EventPublishingRepositoryProxyPostProcessor(publisher); - ProxyFactory factory = mock(ProxyFactory.class); + var factory = mock(ProxyFactory.class); processor.postProcess(factory, information); @@ -192,8 +192,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-928 void publishesEventsForCallToSaveWithIterable() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("saveAll", Iterable.class), sample); EventPublishingMethodInterceptor// @@ -206,8 +206,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1663 void publishesEventsForCallToDeleteWithIterable() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("deleteAll", Iterable.class), sample); EventPublishingMethodInterceptor// @@ -220,8 +220,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // GH-2448 void publishesEventsForCallToDeleteInBatchWithIterable() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("deleteInBatch", Iterable.class), sample); EventPublishingMethodInterceptor// @@ -234,8 +234,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // GH-2448 void publishesEventsForCallToDeleteAllInBatchWithIterable() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("deleteAllInBatch", Iterable.class), sample); EventPublishingMethodInterceptor// @@ -262,8 +262,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1113 void invokesEventsForMethodsThatStartsWithSave() throws Throwable { - SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + var event = new SomeEvent(); + var sample = MultipleEvents.of(Collections.singletonList(event)); mockInvocation(invocation, SampleRepository.class.getMethod("saveAndFlush", MultipleEvents.class), sample); EventPublishingMethodInterceptor// @@ -276,7 +276,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1067 void clearsEventsEvenIfNoneWereExposedToPublish() { - EventsWithClearing entity = spy(EventsWithClearing.of(Collections.emptyList())); + var entity = spy(EventsWithClearing.of(Collections.emptyList())); EventPublishingMethod.of(EventsWithClearing.class).publishEventsFrom(entity, publisher); @@ -286,7 +286,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1067 void clearsEventsIfThereWereSomeToBePublished() { - EventsWithClearing entity = spy(EventsWithClearing.of(Collections.singletonList(new SomeEvent()))); + var entity = spy(EventsWithClearing.of(Collections.singletonList(new SomeEvent()))); EventPublishingMethod.of(EventsWithClearing.class).publishEventsFrom(entity, publisher); @@ -296,8 +296,8 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1067 void clearsEventsForOperationOnMutlipleAggregates() { - EventsWithClearing firstEntity = spy(EventsWithClearing.of(Collections.emptyList())); - EventsWithClearing secondEntity = spy(EventsWithClearing.of(Collections.singletonList(new SomeEvent()))); + var firstEntity = spy(EventsWithClearing.of(Collections.emptyList())); + var secondEntity = spy(EventsWithClearing.of(Collections.singletonList(new SomeEvent()))); Collection entities = Arrays.asList(firstEntity, secondEntity); @@ -310,11 +310,11 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-1163 void publishesEventFromParameter() throws Throwable { - Object event = new Object(); - MultipleEvents parameter = MultipleEvents.of(Collections.singleton(event)); - MultipleEvents returnValue = MultipleEvents.of(Collections.emptySet()); + var event = new Object(); + var parameter = MultipleEvents.of(Collections.singleton(event)); + var returnValue = MultipleEvents.of(Collections.emptySet()); - Method method = SampleRepository.class.getMethod("save", Object.class); + var method = SampleRepository.class.getMethod("save", Object.class); mockInvocation(invocation, method, parameter, returnValue); EventPublishingMethodInterceptor.of(EventPublishingMethod.of(MultipleEvents.class), publisher).invoke(invocation); @@ -325,7 +325,7 @@ class EventPublishingRepositoryProxyPostProcessorUnitTests { @Test // GH-2448 void doesNotEmitEventsFromPrimitiveValue() throws Throwable { - Method method = SampleRepository.class.getMethod("delete", Object.class); + var method = SampleRepository.class.getMethod("delete", Object.class); mockInvocation(invocation, method, "foo", MultipleEvents.of(Collections.emptySet())); EventPublishingMethodInterceptor.of(EventPublishingMethod.of(MultipleEvents.class), publisher).invoke(invocation); diff --git a/src/test/java/org/springframework/data/repository/core/support/ExampleSpecificationAccessorUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ExampleSpecificationAccessorUnitTests.java index b8fc6d6f0..6f261cae5 100755 --- a/src/test/java/org/springframework/data/repository/core/support/ExampleSpecificationAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ExampleSpecificationAccessorUnitTests.java @@ -219,7 +219,7 @@ class ExampleSpecificationAccessorUnitTests { @Test // DATACMNS-810 void getValueTransformerForPathReturnsConfigurtedTransformerForPath() { - PropertyValueTransformer transformer = source -> source.map(Object::toString); + var transformer = (PropertyValueTransformer) source -> source.map(Object::toString); specification = ExampleMatcher.matching().// withTransformer("firstname", transformer); @@ -248,7 +248,7 @@ class ExampleSpecificationAccessorUnitTests { @Test // DATACMNS-953 void exactMatcherUsesExactMatching() { - ExampleMatcher matcher = ExampleMatcher.matching()// + var matcher = ExampleMatcher.matching()// .withMatcher("firstname", exact()); assertThat(new ExampleMatcherAccessor(matcher).getPropertySpecifier("firstname").getStringMatcher()) diff --git a/src/test/java/org/springframework/data/repository/core/support/PersistentEntityInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/PersistentEntityInformationUnitTests.java index c9e6208b9..ddeb258e0 100755 --- a/src/test/java/org/springframework/data/repository/core/support/PersistentEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/PersistentEntityInformationUnitTests.java @@ -36,13 +36,13 @@ class PersistentEntityInformationUnitTests { @Test // DATACMNS-480 void obtainsIdAndIdTypeInformationFromPersistentEntity() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Sample.class); EntityInformation information = new PersistentEntityInformation<>(entity); assertThat(information.getIdType()).isEqualTo(Long.class); - Sample sample = new Sample(); + var sample = new Sample(); sample.id = 5L; assertThat(information.getId(sample)).isEqualTo(5L); @@ -51,11 +51,11 @@ class PersistentEntityInformationUnitTests { @Test // DATACMNS-596 void returnsNullIfNoIdPropertyPresent() { - SampleMappingContext context = new SampleMappingContext(); + var context = new SampleMappingContext(); PersistentEntity entity = context .getRequiredPersistentEntity(EntityWithoutId.class); - PersistentEntityInformation information = new PersistentEntityInformation<>( + var information = new PersistentEntityInformation( entity); assertThat(information.getId(new EntityWithoutId())).isNull(); } diff --git a/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java index 8da8a5ddc..dd7610ad1 100755 --- a/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/QueryExecutionResultHandlerUnitTests.java @@ -60,8 +60,8 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-610 void convertsListsToSet() throws Exception { - Method method = getMethod("set"); - List source = Collections.singletonList(new Entity()); + var method = getMethod("set"); + var source = Collections.singletonList(new Entity()); assertThat(handler.postProcessInvocationResult(source, method)).isInstanceOf(Set.class); } @@ -69,7 +69,7 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-483 void turnsNullIntoJdk8Optional() throws Exception { - Object result = handler.postProcessInvocationResult(null, getMethod("jdk8Optional")); + var result = handler.postProcessInvocationResult(null, getMethod("jdk8Optional")); assertThat(result).isEqualTo(Optional.empty()); } @@ -77,19 +77,19 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void wrapsValueIntoJdk8Optional() throws Exception { - Entity entity = new Entity(); + var entity = new Entity(); - Object result = handler.postProcessInvocationResult(entity, getMethod("jdk8Optional")); + var result = handler.postProcessInvocationResult(entity, getMethod("jdk8Optional")); assertThat(result).isInstanceOf(Optional.class); - Optional optional = (Optional) result; + var optional = (Optional) result; assertThat(optional).isEqualTo(Optional.of(entity)); } @Test // DATACMNS-483 void turnsNullIntoGuavaOptional() throws Exception { - Object result = handler.postProcessInvocationResult(null, getMethod("guavaOptional")); + var result = handler.postProcessInvocationResult(null, getMethod("guavaOptional")); assertThat(result).isEqualTo(com.google.common.base.Optional.absent()); } @@ -97,12 +97,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void wrapsValueIntoGuavaOptional() throws Exception { - Entity entity = new Entity(); + var entity = new Entity(); - Object result = handler.postProcessInvocationResult(entity, getMethod("guavaOptional")); + var result = handler.postProcessInvocationResult(entity, getMethod("guavaOptional")); assertThat(result).isInstanceOf(com.google.common.base.Optional.class); - com.google.common.base.Optional optional = (com.google.common.base.Optional) result; + var optional = (com.google.common.base.Optional) result; assertThat(optional).isEqualTo(com.google.common.base.Optional.of(entity)); } @@ -115,12 +115,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaSingleIntoPublisher() throws Exception { - Single entity = Single.just(new Entity()); + var entity = Single.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("publisher")); + var result = handler.postProcessInvocationResult(entity, getMethod("publisher")); assertThat(result).isInstanceOf(Publisher.class); - Mono mono = Mono.from((Publisher) result); + var mono = Mono.from((Publisher) result); assertThat(mono.block()).isEqualTo(entity.blockingGet()); } @@ -128,12 +128,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaSingleIntoMono() throws Exception { - Single entity = Single.just(new Entity()); + var entity = Single.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("mono")); + var result = handler.postProcessInvocationResult(entity, getMethod("mono")); assertThat(result).isInstanceOf(Mono.class); - Mono mono = (Mono) result; + var mono = (Mono) result; assertThat(mono.block()).isEqualTo(entity.blockingGet()); } @@ -141,12 +141,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaSingleIntoFlux() throws Exception { - Single entity = Single.just(new Entity()); + var entity = Single.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("flux")); + var result = handler.postProcessInvocationResult(entity, getMethod("flux")); assertThat(result).isInstanceOf(Flux.class); - Flux flux = (Flux) result; + var flux = (Flux) result; assertThat(flux.next().block()).isEqualTo(entity.blockingGet()); } @@ -154,12 +154,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaObservableIntoPublisher() throws Exception { - Observable entity = Observable.just(new Entity()); + var entity = Observable.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("publisher")); + var result = handler.postProcessInvocationResult(entity, getMethod("publisher")); assertThat(result).isInstanceOf(Publisher.class); - Mono mono = Mono.from((Publisher) result); + var mono = Mono.from((Publisher) result); assertThat(mono.block()).isEqualTo(entity.blockingFirst()); } @@ -167,12 +167,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaObservableIntoMono() throws Exception { - Observable entity = Observable.just(new Entity()); + var entity = Observable.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("mono")); + var result = handler.postProcessInvocationResult(entity, getMethod("mono")); assertThat(result).isInstanceOf(Mono.class); - Mono mono = (Mono) result; + var mono = (Mono) result; assertThat(mono.block()).isEqualTo(entity.blockingFirst()); } @@ -180,12 +180,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaObservableIntoFlux() throws Exception { - Observable entity = Observable.just(new Entity()); + var entity = Observable.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("flux")); + var result = handler.postProcessInvocationResult(entity, getMethod("flux")); assertThat(result).isInstanceOf(Flux.class); - Flux flux = (Flux) result; + var flux = (Flux) result; assertThat(flux.next().block()).isEqualTo(entity.blockingFirst()); } @@ -193,12 +193,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaObservableIntoSingle() throws Exception { - Observable entity = Observable.just(new Entity()); + var entity = Observable.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("single")); + var result = handler.postProcessInvocationResult(entity, getMethod("single")); assertThat(result).isInstanceOf(Single.class); - Single single = (Single) result; + var single = (Single) result; assertThat(single.blockingGet()).isEqualTo(entity.blockingFirst()); } @@ -206,12 +206,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaSingleIntoObservable() throws Exception { - Single entity = Single.just(new Entity()); + var entity = Single.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("observable")); + var result = handler.postProcessInvocationResult(entity, getMethod("observable")); assertThat(result).isInstanceOf(Observable.class); - Observable observable = (Observable) result; + var observable = (Observable) result; assertThat(observable.blockingFirst()).isEqualTo(entity.blockingGet()); } @@ -219,12 +219,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorMonoIntoSingle() throws Exception { - Mono entity = Mono.just(new Entity()); + var entity = Mono.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("single")); + var result = handler.postProcessInvocationResult(entity, getMethod("single")); assertThat(result).isInstanceOf(Single.class); - Single single = (Single) result; + var single = (Single) result; assertThat(single.blockingGet()).isEqualTo(entity.block()); } @@ -232,12 +232,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorMonoIntoCompletable() throws Exception { - Mono entity = Mono.just(new Entity()); + var entity = Mono.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("completable")); + var result = handler.postProcessInvocationResult(entity, getMethod("completable")); assertThat(result).isInstanceOf(Completable.class); - Completable completable = (Completable) result; + var completable = (Completable) result; completable.blockingAwait(); } @@ -247,10 +247,10 @@ class QueryExecutionResultHandlerUnitTests { Mono entity = Mono.error(new InvalidDataAccessApiUsageException("err")); - Object result = handler.postProcessInvocationResult(entity, getMethod("completable")); + var result = handler.postProcessInvocationResult(entity, getMethod("completable")); assertThat(result).isInstanceOf(Completable.class); - Completable completable = (Completable) result; + var completable = (Completable) result; assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy(completable::blockingAwait); } @@ -258,12 +258,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaCompletableIntoMono() throws Exception { - Completable entity = Completable.complete(); + var entity = Completable.complete(); - Object result = handler.postProcessInvocationResult(entity, getMethod("mono")); + var result = handler.postProcessInvocationResult(entity, getMethod("mono")); assertThat(result).isInstanceOf(Mono.class); - Mono mono = (Mono) result; + var mono = (Mono) result; assertThat(mono.block()).isNull(); } @@ -271,12 +271,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsRxJavaCompletableIntoMonoWithException() throws Exception { - Completable entity = Completable.error(new InvalidDataAccessApiUsageException("err")); + var entity = Completable.error(new InvalidDataAccessApiUsageException("err")); - Object result = handler.postProcessInvocationResult(entity, getMethod("mono")); + var result = handler.postProcessInvocationResult(entity, getMethod("mono")); assertThat(result).isInstanceOf(Mono.class); - Mono mono = (Mono) result; + var mono = (Mono) result; assertThatExceptionOfType(InvalidDataAccessApiUsageException.class).isThrownBy(mono::block); } @@ -285,12 +285,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorMonoIntoObservable() throws Exception { - Mono entity = Mono.just(new Entity()); + var entity = Mono.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("observable")); + var result = handler.postProcessInvocationResult(entity, getMethod("observable")); assertThat(result).isInstanceOf(Observable.class); - Observable observable = (Observable) result; + var observable = (Observable) result; assertThat(observable.blockingFirst()).isEqualTo(entity.block()); } @@ -298,12 +298,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorFluxIntoSingle() throws Exception { - Flux entity = Flux.just(new Entity()); + var entity = Flux.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("single")); + var result = handler.postProcessInvocationResult(entity, getMethod("single")); assertThat(result).isInstanceOf(Single.class); - Single single = (Single) result; + var single = (Single) result; assertThat(single.blockingGet()).isEqualTo(entity.next().block()); } @@ -311,12 +311,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorFluxIntoObservable() throws Exception { - Flux entity = Flux.just(new Entity()); + var entity = Flux.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("observable")); + var result = handler.postProcessInvocationResult(entity, getMethod("observable")); assertThat(result).isInstanceOf(Observable.class); - Observable observable = (Observable) result; + var observable = (Observable) result; assertThat(observable.blockingFirst()).isEqualTo(entity.next().block()); } @@ -324,12 +324,12 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorFluxIntoMono() throws Exception { - Flux entity = Flux.just(new Entity()); + var entity = Flux.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("mono")); + var result = handler.postProcessInvocationResult(entity, getMethod("mono")); assertThat(result).isInstanceOf(Mono.class); - Mono mono = (Mono) result; + var mono = (Mono) result; assertThat(mono.block()).isEqualTo(entity.next().block()); } @@ -337,22 +337,22 @@ class QueryExecutionResultHandlerUnitTests { @SuppressWarnings("unchecked") void convertsReactorMonoIntoFlux() throws Exception { - Mono entity = Mono.just(new Entity()); + var entity = Mono.just(new Entity()); - Object result = handler.postProcessInvocationResult(entity, getMethod("flux")); + var result = handler.postProcessInvocationResult(entity, getMethod("flux")); assertThat(result).isInstanceOf(Flux.class); - Flux flux = (Flux) result; + var flux = (Flux) result; assertThat(flux.next().block()).isEqualTo(entity.block()); } @Test // DATACMNS-1056 void convertsOptionalToThirdPartyOption() throws Exception { - Entity value = new Entity(); - Optional entity = Optional.of(value); + var value = new Entity(); + var entity = Optional.of(value); - Object result = handler.postProcessInvocationResult(entity, getMethod("option")); + var result = handler.postProcessInvocationResult(entity, getMethod("option")); assertThat(result).isInstanceOfSatisfying(Option.class, it -> assertThat(it.get()).isEqualTo(value)); } @@ -363,7 +363,7 @@ class QueryExecutionResultHandlerUnitTests { Iterable source = asList(new Object()); - Object result = handler.postProcessInvocationResult(source, getMethod("streamable")); + var result = handler.postProcessInvocationResult(source, getMethod("streamable")); assertThat(result).isInstanceOfSatisfying(Streamable.class, it -> assertThat(it.stream().collect(Collectors.toList())).isEqualTo(source)); @@ -372,9 +372,9 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-938 void resolvesNestedWrapperIfOuterDoesntNeedConversion() throws Exception { - Entity entity = new Entity(); + var entity = new Entity(); - Object result = handler.postProcessInvocationResult(entity, getMethod("tryOfOption")); + var result = handler.postProcessInvocationResult(entity, getMethod("tryOfOption")); assertThat(result).isInstanceOfSatisfying(Option.class, it -> assertThat(it.get()).isEqualTo(entity)); } @@ -382,7 +382,7 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-1430 void convertsElementsAndValueIntoCustomStreamable() throws Exception { - Object result = handler.postProcessInvocationResult(Arrays.asList("foo"), getMethod("customStreamable")); + var result = handler.postProcessInvocationResult(Arrays.asList("foo"), getMethod("customStreamable")); assertThat(result).isInstanceOfSatisfying(CustomStreamableWrapper.class, it -> { assertThat(it).containsExactly("foo"); @@ -392,7 +392,7 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-1482 void nestedConversion() throws Exception { - Object result = handler.postProcessInvocationResult(asList(BigDecimal.ZERO, BigDecimal.ONE), + var result = handler.postProcessInvocationResult(asList(BigDecimal.ZERO, BigDecimal.ONE), getMethod("listOfInteger")); assertThat(result).isInstanceOfSatisfying(List.class, list -> { @@ -409,7 +409,7 @@ class QueryExecutionResultHandlerUnitTests { @Test // DATACMNS-1552 void keepsVavrOptionType() throws Exception { - Option source = Option.of(new Entity()); + var source = Option.of(new Entity()); assertThat(handler.postProcessInvocationResult(source, getMethod("option"))).isSameAs(source); } diff --git a/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java index c557f1541..44f45229a 100644 --- a/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ReactiveRepositoryInformationUnitTests.java @@ -47,7 +47,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-988 void discoversRxJava3MethodWithoutComparingReturnType() throws Exception { - Method reference = extractTargetMethodFromRepository(RxJava3InterfaceWithGenerics.class, "deleteAll"); + var reference = extractTargetMethodFromRepository(RxJava3InterfaceWithGenerics.class, "deleteAll"); assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); assertThat(reference.getName()).isEqualTo("deleteAll"); @@ -56,7 +56,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-988 void discoversRxJava3MethodWithConvertibleArguments() throws Exception { - Method reference = extractTargetMethodFromRepository(RxJava3InterfaceWithGenerics.class, "saveAll", Flowable.class); + var reference = extractTargetMethodFromRepository(RxJava3InterfaceWithGenerics.class, "saveAll", Flowable.class); assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); assertThat(reference.getName()).isEqualTo("saveAll"); @@ -66,7 +66,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-836 void discoversMethodAssignableArguments() throws Exception { - Method reference = extractTargetMethodFromRepository(ReactiveSortingRepository.class, "saveAll", Publisher.class); + var reference = extractTargetMethodFromRepository(ReactiveSortingRepository.class, "saveAll", Publisher.class); assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); assertThat(reference.getName()).isEqualTo("saveAll"); @@ -76,7 +76,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-836 void discoversMethodExactIterableArguments() throws Exception { - Method reference = extractTargetMethodFromRepository(ReactiveJavaInterfaceWithGenerics.class, "saveAll", + var reference = extractTargetMethodFromRepository(ReactiveJavaInterfaceWithGenerics.class, "saveAll", Iterable.class); assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); @@ -87,7 +87,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-836 void discoversMethodExactObjectArguments() throws Exception { - Method reference = extractTargetMethodFromRepository(ReactiveJavaInterfaceWithGenerics.class, "save", Object.class); + var reference = extractTargetMethodFromRepository(ReactiveJavaInterfaceWithGenerics.class, "save", Object.class); assertThat(reference.getDeclaringClass()).isEqualTo(ReactiveCrudRepository.class); assertThat(reference.getName()).isEqualTo("save"); @@ -97,7 +97,7 @@ class ReactiveRepositoryInformationUnitTests { @Test // DATACMNS-1023 void usesCorrectSaveOverload() throws Exception { - Method reference = extractTargetMethodFromRepository(DummyRepository.class, "saveAll", Iterable.class); + var reference = extractTargetMethodFromRepository(DummyRepository.class, "saveAll", Iterable.class); assertThat(reference).isEqualTo(ReactiveCrudRepository.class.getMethod("saveAll", Iterable.class)); } @@ -107,7 +107,7 @@ class ReactiveRepositoryInformationUnitTests { RepositoryMetadata metadata = new DefaultRepositoryMetadata(repositoryType); - RepositoryComposition composition = RepositoryComposition.of(RepositoryFragment.structural(BASE_CLASS)) + var composition = RepositoryComposition.of(RepositoryFragment.structural(BASE_CLASS)) .withMethodLookup(MethodLookups.forReactiveTypes(metadata)); return composition.findMethod(repositoryType.getMethod(methodName, args)).get(); diff --git a/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java index 9b5963b84..2601c9a25 100644 --- a/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ReactiveWrapperRepositoryFactorySupportUnitTests.java @@ -58,7 +58,7 @@ class ReactiveWrapperRepositoryFactorySupportUnitTests { @Test // DATACMNS-836 void invokesCustomMethodIfItRedeclaresACRUDOne() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class, customImplementation); + var repository = factory.getRepository(ObjectRepository.class, customImplementation); repository.findById(1); verify(customImplementation, times(1)).findById(1); @@ -72,7 +72,7 @@ class ReactiveWrapperRepositoryFactorySupportUnitTests { Long id = 1L; when(backingRepo.findById(id)).thenReturn(Mono.just(true)); - RxJava3ConvertingRepository repository = factory.getRepository(RxJava3ConvertingRepository.class); + var repository = factory.getRepository(RxJava3ConvertingRepository.class); repository.findById(id); verify(backingRepo, times(1)).findById(id); @@ -84,7 +84,7 @@ class ReactiveWrapperRepositoryFactorySupportUnitTests { Serializable id = 1L; when(backingRepo.deleteById(id)).thenReturn(Mono.empty()); - RxJava3ConvertingRepository repository = factory.getRepository(RxJava3ConvertingRepository.class); + var repository = factory.getRepository(RxJava3ConvertingRepository.class); repository.deleteById(id); verify(backingRepo, times(1)).deleteById(id); diff --git a/src/test/java/org/springframework/data/repository/core/support/RepositoryCompositionUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/RepositoryCompositionUnitTests.java index 08c561edd..8498056aa 100644 --- a/src/test/java/org/springframework/data/repository/core/support/RepositoryCompositionUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/RepositoryCompositionUnitTests.java @@ -20,8 +20,6 @@ import static org.mockito.Mockito.*; import lombok.Data; -import java.lang.reflect.Method; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; @@ -57,10 +55,10 @@ class RepositoryCompositionUnitTests { RepositoryInformation repositoryInformation = new DefaultRepositoryInformation( new DefaultRepositoryMetadata(PersonRepository.class), backingRepo.getClass(), RepositoryComposition.empty()); - RepositoryFragment mixin = RepositoryFragment.implemented(QueryByExampleExecutor.class, + var mixin = RepositoryFragment.implemented(QueryByExampleExecutor.class, queryByExampleExecutor); - RepositoryFragment base = RepositoryFragment.implemented(backingRepo); + var base = RepositoryFragment.implemented(backingRepo); repositoryComposition = RepositoryComposition.of(RepositoryFragments.of(mixin, base)) .withMethodLookup(MethodLookups.forRepositoryTypes(repositoryInformation)); @@ -76,11 +74,11 @@ class RepositoryCompositionUnitTests { @Test // DATACMNS-102 void shouldCallSaveOnBackingRepo() throws Throwable { - Method save = ReflectionUtils.findMethod(PersonRepository.class, "save", Person.class); + var save = ReflectionUtils.findMethod(PersonRepository.class, "save", Person.class); - Method method = repositoryComposition.findMethod(save).get(); + var method = repositoryComposition.findMethod(save).get(); - Person person = new Person(); + var person = new Person(); repositoryComposition.invoke(method, person); verify(backingRepo).save(person); @@ -89,11 +87,11 @@ class RepositoryCompositionUnitTests { @Test // DATACMNS-102 void shouldCallObjectSaveOnBackingRepo() throws Throwable { - Method save = ReflectionUtils.findMethod(PersonRepository.class, "save", Object.class); + var save = ReflectionUtils.findMethod(PersonRepository.class, "save", Object.class); - Method method = repositoryComposition.findMethod(save).get(); + var method = repositoryComposition.findMethod(save).get(); - Person person = new Person(); + var person = new Person(); repositoryComposition.invoke(method, person); verify(backingRepo).save((Object) person); @@ -102,12 +100,12 @@ class RepositoryCompositionUnitTests { @Test // DATACMNS-102 void shouldCallFindOneOnMixin() throws Throwable { - Method findOne = ReflectionUtils.findMethod(PersonRepository.class, "findOne", Example.class); + var findOne = ReflectionUtils.findMethod(PersonRepository.class, "findOne", Example.class); - Method method = repositoryComposition.findMethod(findOne).get(); + var method = repositoryComposition.findMethod(findOne).get(); - Person person = new Person(); - Example example = Example.of(person); + var person = new Person(); + var example = Example.of(person); repositoryComposition.invoke(method, example); @@ -123,13 +121,13 @@ class RepositoryCompositionUnitTests { RepositoryFragment foo = RepositoryFragment.implemented(FooMixinImpl.INSTANCE); RepositoryFragment bar = RepositoryFragment.implemented(BarMixinImpl.INSTANCE); - RepositoryComposition fooBar = RepositoryComposition.of(RepositoryFragments.of(foo, bar)) + var fooBar = RepositoryComposition.of(RepositoryFragments.of(foo, bar)) .withMethodLookup(MethodLookups.forRepositoryTypes(repositoryInformation)); - RepositoryComposition barFoo = RepositoryComposition.of(RepositoryFragments.of(bar, foo)) + var barFoo = RepositoryComposition.of(RepositoryFragments.of(bar, foo)) .withMethodLookup(MethodLookups.forRepositoryTypes(repositoryInformation)); - Method getString = ReflectionUtils.findMethod(OrderedRepository.class, "getString"); + var getString = ReflectionUtils.findMethod(OrderedRepository.class, "getString"); assertThat(fooBar.invoke(fooBar.findMethod(getString).get())).isEqualTo("foo"); @@ -139,7 +137,7 @@ class RepositoryCompositionUnitTests { @Test // DATACMNS-102, GH-2341 void shouldValidateStructuralFragments() { - RepositoryComposition mixed = RepositoryComposition.of(RepositoryFragment.structural(QueryByExampleExecutor.class), + var mixed = RepositoryComposition.of(RepositoryFragment.structural(QueryByExampleExecutor.class), RepositoryFragment.implemented(backingRepo)); assertThatExceptionOfType(FragmentNotImplementedException.class) // @@ -152,7 +150,7 @@ class RepositoryCompositionUnitTests { @Test // DATACMNS-102 void shouldValidateImplementationFragments() { - RepositoryComposition mixed = RepositoryComposition.of(RepositoryFragment.implemented(backingRepo)); + var mixed = RepositoryComposition.of(RepositoryFragment.implemented(backingRepo)); mixed.validateImplementation(); } @@ -161,8 +159,8 @@ class RepositoryCompositionUnitTests { @SuppressWarnings("rawtypes") void shouldAppendCorrectly() { - RepositoryFragment initial = RepositoryFragment.implemented(backingRepo); - RepositoryFragment structural = RepositoryFragment.structural(QueryByExampleExecutor.class); + var initial = RepositoryFragment.implemented(backingRepo); + var structural = RepositoryFragment.structural(QueryByExampleExecutor.class); assertThat(RepositoryComposition.of(initial).append(structural).getFragments()).containsSequence(initial, structural); diff --git a/src/test/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupportUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupportUnitTests.java index a0e2dd422..115934baf 100755 --- a/src/test/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/RepositoryFactoryBeanSupportUnitTests.java @@ -24,7 +24,6 @@ import org.junit.jupiter.api.Test; import org.springframework.data.querydsl.QuerydslPredicateExecutor; import org.springframework.data.repository.Repository; -import org.springframework.data.repository.core.RepositoryInformation; import org.springframework.lang.NonNull; import org.springframework.lang.Nullable; import org.springframework.test.util.ReflectionTestUtils; @@ -41,14 +40,14 @@ class RepositoryFactoryBeanSupportUnitTests { @SuppressWarnings({ "rawtypes", "unchecked" }) void setsConfiguredClassLoaderOnRepositoryFactory() { - ClassLoader classLoader = mock(ClassLoader.class); + var classLoader = mock(ClassLoader.class); RepositoryFactoryBeanSupport factoryBean = new DummyRepositoryFactoryBean(SampleRepository.class); factoryBean.setBeanClassLoader(classLoader); factoryBean.setLazyInit(true); factoryBean.afterPropertiesSet(); - Object factory = ReflectionTestUtils.getField(factoryBean, "factory"); + var factory = ReflectionTestUtils.getField(factoryBean, "factory"); assertThat(ReflectionTestUtils.getField(factory, "classLoader")).isEqualTo(classLoader); } @@ -68,7 +67,7 @@ class RepositoryFactoryBeanSupportUnitTests { new DummyRepositoryFactoryBean<>(SampleWithQuerydslRepository.class); factoryBean.afterPropertiesSet(); - RepositoryInformation information = factoryBean.getRepositoryInformation(); + var information = factoryBean.getRepositoryInformation(); assertThat(information.getQueryMethods()).isEmpty(); } @@ -99,7 +98,7 @@ class RepositoryFactoryBeanSupportUnitTests { @Test // DATACMNS-1345 void reportsMappingContextUnavailableForPersistentEntityLookup() { - RepositoryFactoryBeanSupport bean = new RepositoryFactoryBeanSupport( + var bean = new RepositoryFactoryBeanSupport( SampleRepository.class) { @Override diff --git a/src/test/java/org/springframework/data/repository/core/support/RepositoryFactorySupportUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/RepositoryFactorySupportUnitTests.java index f4e547805..4470b1de3 100755 --- a/src/test/java/org/springframework/data/repository/core/support/RepositoryFactorySupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/RepositoryFactorySupportUnitTests.java @@ -35,15 +35,14 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.ArgumentCaptor; -import org.mockito.InOrder; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; + import org.springframework.aop.framework.ProxyFactory; import org.springframework.beans.factory.support.DefaultListableBeanFactory; -import org.springframework.core.metrics.ApplicationStartup; import org.springframework.dao.EmptyResultDataAccessException; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageImpl; @@ -136,7 +135,7 @@ class RepositoryFactorySupportUnitTests { factory.addInvocationListener(invocationListener); - ObjectRepository repository = factory.getRepository(ObjectRepository.class); + var repository = factory.getRepository(ObjectRepository.class); repository.save(repository); verify(backingRepo, times(1)).save(any(Object.class)); @@ -146,7 +145,7 @@ class RepositoryFactorySupportUnitTests { @Test void invokesCustomMethodIfItRedeclaresACRUDOne() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class, customImplementation); + var repository = factory.getRepository(ObjectRepository.class, customImplementation); repository.findById(1); verify(customImplementation, times(1)).findById(1); @@ -156,7 +155,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-102 void invokesCustomMethodCompositionMethodIfItRedeclaresACRUDOne() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class, + var repository = factory.getRepository(ObjectRepository.class, RepositoryFragments.just(customImplementation)); repository.findById(1); @@ -167,7 +166,7 @@ class RepositoryFactorySupportUnitTests { @Test void createsRepositoryInstanceWithCustomIntermediateRepository() { - CustomRepository repository = factory.getRepository(CustomRepository.class); + var repository = factory.getRepository(CustomRepository.class); Pageable pageable = PageRequest.of(0, 10); when(backingRepo.findAll(pageable)).thenReturn(new PageImpl<>(Collections.emptyList())); @@ -181,7 +180,7 @@ class RepositoryFactorySupportUnitTests { void createsProxyForAnnotatedRepository() { Class repositoryInterface = AnnotatedRepository.class; - Class> foo = (Class>) repositoryInterface; + var foo = (Class>) repositoryInterface; assertThat(factory.getRepository(foo)).isNotNull(); } @@ -196,7 +195,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-489, DATACMNS-1764 void wrapsExecutionResultIntoFutureIfConfigured() throws Exception { - final Object reference = new Object(); + final var reference = new Object(); when(factory.queryOne.execute(any(Object[].class))).then(invocation -> { Thread.sleep(500); @@ -205,13 +204,13 @@ class RepositoryFactorySupportUnitTests { factory.addInvocationListener(invocationListener); - ConvertingRepository repository = factory.getRepository(ConvertingRepository.class); + var repository = factory.getRepository(ConvertingRepository.class); - AsyncAnnotationBeanPostProcessor processor = new AsyncAnnotationBeanPostProcessor(); + var processor = new AsyncAnnotationBeanPostProcessor(); processor.setBeanFactory(new DefaultListableBeanFactory()); repository = (ConvertingRepository) processor.postProcessAfterInitialization(repository, null); - Future future = repository.findByFirstname("Foo"); + var future = repository.findByFirstname("Foo"); assertThat(future.isDone()).isFalse(); @@ -223,7 +222,7 @@ class RepositoryFactorySupportUnitTests { verify(factory.queryOne, times(1)).execute(any(Object[].class)); - ArgumentCaptor captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); + var captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); verify(invocationListener).afterInvocation(captor.capture()); } @@ -234,17 +233,17 @@ class RepositoryFactorySupportUnitTests { factory.addInvocationListener(invocationListener); - ConvertingRepository repository = factory.getRepository(ConvertingRepository.class); + var repository = factory.getRepository(ConvertingRepository.class); try { repository.findByLastname("Foo"); fail("Missing exception"); } catch (IllegalStateException e) {} - ArgumentCaptor captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); + var captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); verify(invocationListener).afterInvocation(captor.capture()); - RepositoryMethodInvocation repositoryMethodInvocation = captor.getValue(); + var repositoryMethodInvocation = captor.getValue(); assertThat(repositoryMethodInvocation.getDuration(TimeUnit.NANOSECONDS)).isGreaterThan(0); assertThat(repositoryMethodInvocation.getResult().getState()).isEqualTo(State.ERROR); assertThat(repositoryMethodInvocation.getResult().getError()).isInstanceOf(IllegalStateException.class); @@ -253,30 +252,30 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-509, DATACMNS-1764 void convertsWithSameElementType() { - List names = singletonList("Dave"); + var names = singletonList("Dave"); factory.addInvocationListener(invocationListener); when(factory.queryOne.execute(any(Object[].class))).thenReturn(names); - ConvertingRepository repository = factory.getRepository(ConvertingRepository.class); - Set result = repository.convertListToStringSet(); + var repository = factory.getRepository(ConvertingRepository.class); + var result = repository.convertListToStringSet(); assertThat(result).hasSize(1); assertThat(result.iterator().next()).isEqualTo("Dave"); - ArgumentCaptor captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); + var captor = ArgumentCaptor.forClass(RepositoryMethodInvocation.class); verify(invocationListener).afterInvocation(captor.capture()); } @Test // DATACMNS-509 void convertsCollectionToOtherCollectionWithElementSuperType() { - List names = singletonList("Dave"); + var names = singletonList("Dave"); when(factory.queryOne.execute(any(Object[].class))).thenReturn(names); - ConvertingRepository repository = factory.getRepository(ConvertingRepository.class); - Set result = repository.convertListToObjectSet(); + var repository = factory.getRepository(ConvertingRepository.class); + var result = repository.convertListToObjectSet(); assertThat(result).containsExactly("Dave"); } @@ -298,7 +297,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-714 void wrapsExecutionResultIntoCompletableFutureIfConfigured() throws Exception { - User reference = new User(); + var reference = new User(); expect(prepareConvertingRepository(reference).findOneByFirstname("Foo"), reference); } @@ -306,7 +305,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-714 void wrapsExecutionResultIntoListenableFutureIfConfigured() throws Exception { - User reference = new User(); + var reference = new User(); expect(prepareConvertingRepository(reference).findOneByLastname("Foo"), reference); } @@ -314,7 +313,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-714 void wrapsExecutionResultIntoCompletableFutureWithEntityCollectionIfConfigured() throws Exception { - List reference = singletonList(new User()); + var reference = singletonList(new User()); expect(prepareConvertingRepository(reference).readAllByFirstname("Foo"), reference); } @@ -322,7 +321,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-714 void wrapsExecutionResultIntoListenableFutureWithEntityCollectionIfConfigured() throws Exception { - List reference = singletonList(new User()); + var reference = singletonList(new User()); expect(prepareConvertingRepository(reference).readAllByLastname("Foo"), reference); } @@ -331,9 +330,9 @@ class RepositoryFactorySupportUnitTests { @SuppressWarnings("rawtypes") void rejectsRepositoryBaseClassWithInvalidConstructor() { - RepositoryInformation information = mock(RepositoryInformation.class); + var information = mock(RepositoryInformation.class); doReturn(CustomRepositoryBaseClass.class).when(information).getRepositoryBaseClass(); - EntityInformation entityInformation = mock(EntityInformation.class); + var entityInformation = mock(EntityInformation.class); assertThatThrownBy( // () -> factory.getTargetRepositoryViaReflection(information, entityInformation, "Foo")) // @@ -345,7 +344,7 @@ class RepositoryFactorySupportUnitTests { @Test void callsStaticMethodOnInterface() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class, customImplementation); + var repository = factory.getRepository(ObjectRepository.class, customImplementation); assertThat(repository.staticMethodDelegate()).isEqualTo("OK"); @@ -356,7 +355,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1154 void considersRequiredReturnValue() { - KotlinUserRepository repository = factory.getRepository(KotlinUserRepository.class); + var repository = factory.getRepository(KotlinUserRepository.class); assertThatThrownBy( // () -> repository.findById("")) // @@ -369,7 +368,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1154 void considersRequiredParameter() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class); + var repository = factory.getRepository(ObjectRepository.class); assertThatThrownBy( // () -> repository.findByClass(null)) // @@ -380,7 +379,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1154 void shouldAllowVoidMethods() { - ObjectRepository repository = factory.getRepository(ObjectRepository.class, backingRepo); + var repository = factory.getRepository(ObjectRepository.class, backingRepo); repository.deleteAll(); @@ -390,7 +389,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1154 void considersRequiredKotlinParameter() { - KotlinUserRepository repository = factory.getRepository(KotlinUserRepository.class); + var repository = factory.getRepository(KotlinUserRepository.class); assertThatThrownBy( // () -> repository.findById(null)) // @@ -401,7 +400,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1154 void considersRequiredKotlinNullableParameter() { - KotlinUserRepository repository = factory.getRepository(KotlinUserRepository.class); + var repository = factory.getRepository(KotlinUserRepository.class); assertThat(repository.findByOptionalId(null)).isNull(); } @@ -409,7 +408,7 @@ class RepositoryFactorySupportUnitTests { @Test // DATACMNS-1197 void considersNullabilityForKotlinInterfaceProperties() { - KotlinUserRepository repository = factory.getRepository(KotlinUserRepository.class); + var repository = factory.getRepository(KotlinUserRepository.class); assertThatThrownBy(repository::getFindRouteQuery).isInstanceOf(EmptyResultDataAccessException.class); } @@ -419,9 +418,9 @@ class RepositoryFactorySupportUnitTests { factory.getRepository(ObjectRepository.class, backingRepo); - ApplicationStartup startup = factory.getApplicationStartup(); + var startup = factory.getApplicationStartup(); - InOrder orderedInvocation = Mockito.inOrder(startup); + var orderedInvocation = Mockito.inOrder(startup); orderedInvocation.verify(startup).start("spring.data.repository.init"); orderedInvocation.verify(startup).start("spring.data.repository.metadata"); orderedInvocation.verify(startup).start("spring.data.repository.composition"); @@ -456,7 +455,7 @@ class RepositoryFactorySupportUnitTests { @Test // GH-2341 void derivedQueryMethodCannotBeImplemented() { - DummyRepositoryFactory factory = new DummyRepositoryFactory(backingRepo) { + var factory = new DummyRepositoryFactory(backingRepo) { @Override protected Optional getQueryLookupStrategy(QueryLookupStrategy.Key key, QueryMethodEvaluationContextProvider evaluationContextProvider) { @@ -479,7 +478,7 @@ class RepositoryFactorySupportUnitTests { return expectedValue; }); - AsyncAnnotationBeanPostProcessor processor = new AsyncAnnotationBeanPostProcessor(); + var processor = new AsyncAnnotationBeanPostProcessor(); processor.setBeanFactory(new DefaultListableBeanFactory()); return (ConvertingRepository) processor diff --git a/src/test/java/org/springframework/data/repository/core/support/RepositoryInformationPreferringAnnotationTransactionAttributeSourceUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/RepositoryInformationPreferringAnnotationTransactionAttributeSourceUnitTests.java index f7fbcf040..3d696fabc 100755 --- a/src/test/java/org/springframework/data/repository/core/support/RepositoryInformationPreferringAnnotationTransactionAttributeSourceUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/RepositoryInformationPreferringAnnotationTransactionAttributeSourceUnitTests.java @@ -19,10 +19,10 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.Mockito.*; import org.junit.jupiter.api.Test; + import org.springframework.data.repository.core.RepositoryInformation; import org.springframework.data.repository.core.support.TransactionalRepositoryProxyPostProcessor.RepositoryAnnotationTransactionAttributeSource; import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAttribute; /** * Unit tests for {@link RepositoryAnnotationTransactionAttributeSource}. @@ -35,12 +35,12 @@ class RepositoryInformationPreferringAnnotationTransactionAttributeSourceUnitTes @Test void usesCustomTransactionConfigurationOnInterface() throws Exception { - RepositoryInformation information = mock(RepositoryInformation.class); + var information = mock(RepositoryInformation.class); - RepositoryAnnotationTransactionAttributeSource source = new RepositoryAnnotationTransactionAttributeSource( + var source = new RepositoryAnnotationTransactionAttributeSource( information, true); - TransactionAttribute attribute = source.getTransactionAttribute(Bar.class.getMethod("bar", Object.class), + var attribute = source.getTransactionAttribute(Bar.class.getMethod("bar", Object.class), FooImpl.class); assertThat(attribute.isReadOnly()).isFalse(); diff --git a/src/test/java/org/springframework/data/repository/core/support/RepositoryMethodInvokerUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/RepositoryMethodInvokerUnitTests.java index 8c66113bf..b77946b16 100644 --- a/src/test/java/org/springframework/data/repository/core/support/RepositoryMethodInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/RepositoryMethodInvokerUnitTests.java @@ -175,7 +175,7 @@ class RepositoryMethodInvokerUnitTests { @Test // DATACMNS-1764 void capturesStreamDurationAsSumOfDelayTillCancel() throws Exception { - Delays delays = delays(250, 100); + var delays = delays(250, 100); when(query.execute(any())).thenReturn(Stream.generate(() -> { delays.delay(); @@ -246,7 +246,7 @@ class RepositoryMethodInvokerUnitTests { @Test // DATACMNS-1764 void capturesKotlinSuspendFunctionsCorrectly() throws Exception { - Flux result = Flux.just(new TestDummy()); + var result = Flux.just(new TestDummy()); when(query.execute(any())).thenReturn(result); Flow flow = new RepositoryMethodInvokerStub(MyCoroutineRepository.class, multicaster, @@ -293,7 +293,7 @@ class RepositoryMethodInvokerUnitTests { Delays(Integer... delays) { this.delays = new ArrayBlockingQueue(delays.length); - for (Integer delay : delays) { + for (var delay : delays) { this.delays.add(delay); } } diff --git a/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryFactoryBeanSupportUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryFactoryBeanSupportUnitTests.java index bb5a32763..513c2a39c 100755 --- a/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryFactoryBeanSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryFactoryBeanSupportUnitTests.java @@ -20,7 +20,7 @@ import static org.mockito.Mockito.*; import static org.springframework.test.util.ReflectionTestUtils.*; import org.junit.jupiter.api.Test; -import org.springframework.aop.Advisor; + import org.springframework.aop.framework.Advised; import org.springframework.beans.factory.support.DefaultListableBeanFactory; import org.springframework.data.repository.CrudRepository; @@ -38,23 +38,22 @@ class TransactionRepositoryFactoryBeanSupportUnitTests { @Test // DATACMNS-656 void disablesDefaultTransactionsIfConfigured() { - SampleTransactionalRepositoryFactoryBean factoryBean = new SampleTransactionalRepositoryFactoryBean(); + var factoryBean = new SampleTransactionalRepositoryFactoryBean(); factoryBean.setEnableDefaultTransactions(false); factoryBean.setBeanFactory(new DefaultListableBeanFactory()); factoryBean.afterPropertiesSet(); - CrudRepository repository = factoryBean.getObject(); + var repository = factoryBean.getObject(); - Advisor[] advisors = ((Advised) repository).getAdvisors(); - boolean found = false; + var advisors = ((Advised) repository).getAdvisors(); + var found = false; - for (Advisor advisor : advisors) { + for (var advisor : advisors) { - if (advisor.getAdvice() instanceof TransactionInterceptor) { + if (advisor.getAdvice() instanceof TransactionInterceptor interceptor) { found = true; - TransactionInterceptor interceptor = (TransactionInterceptor) advisor.getAdvice(); assertThat(getField(interceptor.getTransactionAttributeSource(), "enableDefaultTransactions")).isEqualTo(false); break; } @@ -66,7 +65,7 @@ class TransactionRepositoryFactoryBeanSupportUnitTests { @Test // DATACMNS-880 void propagatesBeanFactoryToSuperClass() { - SampleTransactionalRepositoryFactoryBean factoryBean = new SampleTransactionalRepositoryFactoryBean(); + var factoryBean = new SampleTransactionalRepositoryFactoryBean(); factoryBean.setBeanFactory(new DefaultListableBeanFactory()); assertThat(ReflectionTestUtils.getField(factoryBean, RepositoryFactoryBeanSupport.class, "beanFactory")) diff --git a/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryProxyPostProcessorUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryProxyPostProcessorUnitTests.java index 6d0a2197d..53b9950cd 100755 --- a/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryProxyPostProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/TransactionRepositoryProxyPostProcessorUnitTests.java @@ -20,19 +20,18 @@ import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.io.Serializable; -import java.lang.reflect.Method; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; + import org.springframework.aop.framework.ProxyFactory; import org.springframework.beans.factory.ListableBeanFactory; import org.springframework.data.repository.Repository; import org.springframework.data.repository.core.RepositoryInformation; import org.springframework.data.repository.core.support.TransactionalRepositoryProxyPostProcessor.RepositoryAnnotationTransactionAttributeSource; import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAttribute; import org.springframework.transaction.interceptor.TransactionAttributeSource; import org.springframework.transaction.interceptor.TransactionInterceptor; @@ -84,26 +83,26 @@ class TransactionRepositoryProxyPostProcessorUnitTests { @Test // DATACMNS-732 void considersJtaTransactional() throws Exception { - Method method = SampleRepository.class.getMethod("methodWithJakartaAtTransactional"); + var method = SampleRepository.class.getMethod("methodWithJakartaAtTransactional"); TransactionAttributeSource attributeSource = new RepositoryAnnotationTransactionAttributeSource( repositoryInformation, true); - TransactionAttribute attribute = attributeSource.getTransactionAttribute(method, SampleRepository.class); + var attribute = attributeSource.getTransactionAttribute(method, SampleRepository.class); assertThat(attribute).isNotNull(); } private void assertTransactionAttributeFor(Class implementationClass) throws Exception { - Method repositorySaveMethod = SampleRepository.class.getMethod("save", Sample.class); - Method implementationClassMethod = implementationClass.getMethod("save", Object.class); + var repositorySaveMethod = SampleRepository.class.getMethod("save", Sample.class); + var implementationClassMethod = implementationClass.getMethod("save", Object.class); when(repositoryInformation.getTargetClassMethod(repositorySaveMethod)).thenReturn(implementationClassMethod); - RepositoryAnnotationTransactionAttributeSource attributeSource = new RepositoryAnnotationTransactionAttributeSource( + var attributeSource = new RepositoryAnnotationTransactionAttributeSource( repositoryInformation, true); - TransactionAttribute attribute = attributeSource.getTransactionAttribute(repositorySaveMethod, + var attribute = attributeSource.getTransactionAttribute(repositorySaveMethod, SampleImplementation.class); assertThat(attribute).isNotNull(); diff --git a/src/test/java/org/springframework/data/repository/init/Jackson2ResourceReaderIntegrationTests.java b/src/test/java/org/springframework/data/repository/init/Jackson2ResourceReaderIntegrationTests.java index 49ae6a296..f15600030 100755 --- a/src/test/java/org/springframework/data/repository/init/Jackson2ResourceReaderIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/init/Jackson2ResourceReaderIntegrationTests.java @@ -34,7 +34,7 @@ class Jackson2ResourceReaderIntegrationTests { void readsFileWithMultipleObjects() throws Exception { ResourceReader reader = new Jackson2ResourceReader(); - Object result = reader.readFrom(new ClassPathResource("data.json", getClass()), null); + var result = reader.readFrom(new ClassPathResource("data.json", getClass()), null); assertThat(result).isInstanceOf(Collection.class); assertThat((Collection) result).hasSize(1); diff --git a/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java b/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java index 30bf29e2a..5af885dda 100755 --- a/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java @@ -62,7 +62,7 @@ class ResourceReaderRepositoryInitializerUnitTests { @Test void storesSingleObjectCorrectly() throws Exception { - Product reference = new Product(); + var reference = new Product(); setUpReferenceAndInititalize(reference); verify(productRepository).save(reference); @@ -71,7 +71,7 @@ class ResourceReaderRepositoryInitializerUnitTests { @Test void storesCollectionOfObjectsCorrectly() throws Exception { - Product product = new Product(); + var product = new Product(); Collection reference = Collections.singletonList(product); setUpReferenceAndInititalize(reference); @@ -82,7 +82,7 @@ class ResourceReaderRepositoryInitializerUnitTests { @Test // DATACMNS-224 void emitsRepositoriesPopulatedEventIfPublisherConfigured() throws Exception { - RepositoryPopulator populator = setUpReferenceAndInititalize(new User(), publisher); + var populator = setUpReferenceAndInititalize(new User(), publisher); ApplicationEvent event = new RepositoriesPopulatedEvent(populator, repositories); verify(publisher, times(1)).publishEvent(event); @@ -94,7 +94,7 @@ class ResourceReaderRepositoryInitializerUnitTests { when(reader.readFrom(any(), any())).thenReturn(reference); when(productRepository.save(any())).then(AdditionalAnswers.returnsFirstArg()); - ResourceReaderRepositoryPopulator populator = new ResourceReaderRepositoryPopulator(reader); + var populator = new ResourceReaderRepositoryPopulator(reader); populator.setResources(resource); populator.setApplicationEventPublisher(publisher); populator.populate(repositories); diff --git a/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java b/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java index 118b91cbf..9ac3d7775 100755 --- a/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java @@ -44,7 +44,6 @@ import org.springframework.data.spel.ExtensionAwareEvaluationContextProvider; import org.springframework.data.spel.spi.EvaluationContextExtension; import org.springframework.data.spel.spi.ExtensionIdAware; import org.springframework.data.spel.spi.Function; -import org.springframework.expression.EvaluationContext; import org.springframework.expression.spel.standard.SpelExpressionParser; /** @@ -129,7 +128,7 @@ class ExtensionAwareEvaluationContextProviderUnitTests { void exposesPageableParameter() throws Exception { this.method = SampleRepo.class.getMethod("findByFirstname", String.class, Pageable.class); - PageRequest pageable = PageRequest.of(2, 3, Sort.by(Direction.DESC, "lastname")); + var pageable = PageRequest.of(2, 3, Sort.by(Direction.DESC, "lastname")); assertThat(evaluateExpression("#pageable.offset", new Object[] { "test", pageable })).isEqualTo(6L); assertThat(evaluateExpression("#pageable.pageSize", new Object[] { "test", pageable })).isEqualTo(3); @@ -141,7 +140,7 @@ class ExtensionAwareEvaluationContextProviderUnitTests { void exposesSortParameter() throws Exception { this.method = SampleRepo.class.getMethod("findByFirstname", String.class, Sort.class); - Sort sort = Sort.by(Direction.DESC, "lastname"); + var sort = Sort.by(Direction.DESC, "lastname"); assertThat(evaluateExpression("#sort.toString()", new Object[] { "test", sort })).isEqualTo("lastname: DESC"); } @@ -205,7 +204,7 @@ class ExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-533 void shouldBeAbleToAccessCustomRootObjectPropertiesAndFunctionsFromDynamicTargetSource() { - final AtomicInteger counter = new AtomicInteger(); + final var counter = new AtomicInteger(); this.provider = new ExtensionAwareQueryMethodEvaluationContextProvider(Collections.singletonList( // new DummyExtension("_first", "first") { @@ -289,9 +288,9 @@ class ExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1534 void contextProviderShouldLazilyLookUpExtensions() { - ListableBeanFactory beanFactory = Mockito.mock(ListableBeanFactory.class); + var beanFactory = Mockito.mock(ListableBeanFactory.class); - ExtensionAwareEvaluationContextProvider contextProvider = new ExtensionAwareEvaluationContextProvider(beanFactory); + var contextProvider = new ExtensionAwareEvaluationContextProvider(beanFactory); verify(beanFactory, never()).getBeansOfType(eq(EvaluationContextExtension.class), anyBoolean(), anyBoolean()); @@ -303,9 +302,9 @@ class ExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1534 void contextProviderShouldLookupExtensionsOnlyOnce() { - ListableBeanFactory beanFactory = Mockito.mock(ListableBeanFactory.class); + var beanFactory = Mockito.mock(ListableBeanFactory.class); - ExtensionAwareEvaluationContextProvider contextProvider = new ExtensionAwareEvaluationContextProvider(beanFactory); + var contextProvider = new ExtensionAwareEvaluationContextProvider(beanFactory); contextProvider.getEvaluationContext(null); contextProvider.getEvaluationContext(null); @@ -398,8 +397,8 @@ class ExtensionAwareEvaluationContextProviderUnitTests { private Object evaluateExpression(String expression, Object[] args) { - DefaultParameters parameters = new DefaultParameters(method); - EvaluationContext evaluationContext = provider.getEvaluationContext(parameters, args); + var parameters = new DefaultParameters(method); + var evaluationContext = provider.getEvaluationContext(parameters, args); return new SpelExpressionParser().parseExpression(expression).getValue(evaluationContext); } diff --git a/src/test/java/org/springframework/data/repository/query/ParameterUnitTests.java b/src/test/java/org/springframework/data/repository/query/ParameterUnitTests.java index 6e7d2458c..a00215b96 100644 --- a/src/test/java/org/springframework/data/repository/query/ParameterUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ParameterUnitTests.java @@ -35,7 +35,7 @@ class ParameterUnitTests { @Test // DATAJPA-1185 void classParameterWithSameTypeParameterAsReturnedListIsDynamicProjectionParameter() throws Exception { - Parameter parameter = new Parameter(getMethodParameter("dynamicProjectionWithList")); + var parameter = new Parameter(getMethodParameter("dynamicProjectionWithList")); assertThat(parameter.isDynamicProjectionParameter()).isTrue(); } @@ -43,7 +43,7 @@ class ParameterUnitTests { @Test // DATAJPA-1185 void classParameterWithSameTypeParameterAsReturnedStreamIsDynamicProjectionParameter() throws Exception { - Parameter parameter = new Parameter(getMethodParameter("dynamicProjectionWithStream")); + var parameter = new Parameter(getMethodParameter("dynamicProjectionWithStream")); assertThat(parameter.isDynamicProjectionParameter()).isTrue(); } diff --git a/src/test/java/org/springframework/data/repository/query/ParametersParameterAccessorUnitTests.java b/src/test/java/org/springframework/data/repository/query/ParametersParameterAccessorUnitTests.java index a3067eb18..4db0763ac 100755 --- a/src/test/java/org/springframework/data/repository/query/ParametersParameterAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ParametersParameterAccessorUnitTests.java @@ -17,11 +17,9 @@ package org.springframework.data.repository.query; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; -import java.util.Iterator; - import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; @@ -44,7 +42,7 @@ class ParametersParameterAccessorUnitTests { ParameterAccessor accessor = new ParametersParameterAccessor(parameters, new Object[] { "Foo", 2 }); - Iterator iterator = accessor.iterator(); + var iterator = accessor.iterator(); assertThat(iterator.hasNext()).isTrue(); assertThat(iterator.next()).isEqualTo("Foo"); assertThat(iterator.hasNext()).isTrue(); @@ -58,8 +56,8 @@ class ParametersParameterAccessorUnitTests { ParameterAccessor accessor = new ParametersParameterAccessor(parameters, new Object[] { null, 5 }); assertThat(accessor.hasBindableNullValue()).isTrue(); - Method method = Sample.class.getMethod("method", Pageable.class, String.class); - DefaultParameters parameters = new DefaultParameters(method); + var method = Sample.class.getMethod("method", Pageable.class, String.class); + var parameters = new DefaultParameters(method); accessor = new ParametersParameterAccessor(parameters, new Object[] { null, "Foo" }); assertThat(accessor.hasBindableNullValue()).isFalse(); @@ -68,10 +66,10 @@ class ParametersParameterAccessorUnitTests { @Test // DATACMNS-804 void iteratesonlyOverBindableValues() throws Exception { - Method method = Sample.class.getMethod("method", Pageable.class, String.class); - DefaultParameters parameters = new DefaultParameters(method); + var method = Sample.class.getMethod("method", Pageable.class, String.class); + var parameters = new DefaultParameters(method); - ParametersParameterAccessor accessor = new ParametersParameterAccessor(parameters, + var accessor = new ParametersParameterAccessor(parameters, new Object[] { PageRequest.of(0, 10), "Foo" }); assertThat(accessor).hasSize(1); diff --git a/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java b/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java index f02a803f2..9c2f5838a 100755 --- a/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ParametersUnitTests.java @@ -50,8 +50,8 @@ class ParametersUnitTests { @Test void checksValidMethodCorrectly() throws Exception { - Method validWithPageable = SampleDao.class.getMethod("validWithPageable", String.class, Pageable.class); - Method validWithSort = SampleDao.class.getMethod("validWithSort", String.class, Sort.class); + var validWithPageable = SampleDao.class.getMethod("validWithPageable", String.class, Pageable.class); + var validWithSort = SampleDao.class.getMethod("validWithSort", String.class, Sort.class); new DefaultParameters(valid); new DefaultParameters(validWithPageable); @@ -68,7 +68,7 @@ class ParametersUnitTests { Parameters parameters = getParametersFor("validWithSort", String.class, Sort.class); - Parameter parameter = parameters.getParameter(0); + var parameter = parameters.getParameter(0); assertThat(parameter.isNamedParameter()).isTrue(); assertThat(parameter.getPlaceholder()).isEqualTo(":username"); @@ -82,7 +82,7 @@ class ParametersUnitTests { @Test void calculatesPlaceholderPositionCorrectly() throws Exception { - Method method = SampleDao.class.getMethod("validWithSortFirst", Sort.class, String.class); + var method = SampleDao.class.getMethod("validWithSortFirst", Sort.class, String.class); Parameters parameters = new DefaultParameters(method); assertThat(parameters.getBindableParameter(0).getIndex()).isEqualTo(1); @@ -122,7 +122,7 @@ class ParametersUnitTests { @Test // DATACMNS-731 void detectsExplicitlyNamedParameter() throws Exception { - Parameter parameter = getParametersFor("valid", String.class).getBindableParameter(0); + var parameter = getParametersFor("valid", String.class).getBindableParameter(0); assertThat(parameter.getName()).isNotNull(); assertThat(parameter.isExplicitlyNamed()).isTrue(); @@ -131,9 +131,9 @@ class ParametersUnitTests { @Test // DATACMNS-731 void doesNotConsiderParameterExplicitlyNamedEvenIfNamePresent() throws Exception { - Parameter parameter = getParametersFor("validWithSortFirst", Sort.class, String.class).getBindableParameter(0); + var parameter = getParametersFor("validWithSortFirst", Sort.class, String.class).getBindableParameter(0); - Object methodParameter = ReflectionTestUtils.getField(parameter, "parameter"); + var methodParameter = ReflectionTestUtils.getField(parameter, "parameter"); ReflectionTestUtils.setField(methodParameter, "parameterName", "name"); assertThat(parameter.getName()).isNotNull(); @@ -143,7 +143,7 @@ class ParametersUnitTests { @Test // DATACMNS-89 void detectsDynamicProjectionParameter() throws Exception { - Parameters parameters = getParametersFor("dynamicBind", Class.class, Class.class, Class.class); + var parameters = getParametersFor("dynamicBind", Class.class, Class.class, Class.class); assertThat(parameters.getParameter(0).isDynamicProjectionParameter()).isTrue(); assertThat(parameters.getParameter(1).isDynamicProjectionParameter()).isFalse(); @@ -153,7 +153,7 @@ class ParametersUnitTests { @Test // DATACMNS-863 void unwrapsOptionals() throws Exception { - Parameters parameters = getParametersFor("methodWithOptional", Optional.class); + var parameters = getParametersFor("methodWithOptional", Optional.class); assertThat(parameters.getParameter(0).getType()).isEqualTo(String.class); } @@ -161,7 +161,7 @@ class ParametersUnitTests { @Test // DATACMNS-836 void keepsReactiveStreamsWrapper() throws Exception { - Parameters parameters = getParametersFor("methodWithPublisher", Publisher.class); + var parameters = getParametersFor("methodWithPublisher", Publisher.class); assertThat(parameters.getParameter(0).getType()).isAssignableFrom(Publisher.class); } @@ -169,7 +169,7 @@ class ParametersUnitTests { @Test // DATACMNS-836 void keepsRxJavaWrapper() throws Exception { - Parameters parameters = getParametersFor("methodWithSingle", Single.class); + var parameters = getParametersFor("methodWithSingle", Single.class); assertThat(parameters.getParameter(0).getType()).isAssignableFrom(Single.class); } @@ -177,7 +177,7 @@ class ParametersUnitTests { @Test // DATACMNS-1383 void acceptsCustomPageableParameter() throws Exception { - Parameters parameters = getParametersFor("customPageable", SomePageable.class); + var parameters = getParametersFor("customPageable", SomePageable.class); assertThat(parameters.hasPageableParameter()).isTrue(); } @@ -185,7 +185,7 @@ class ParametersUnitTests { private Parameters getParametersFor(String methodName, Class... parameterTypes) throws SecurityException, NoSuchMethodException { - Method method = SampleDao.class.getMethod(methodName, parameterTypes); + var method = SampleDao.class.getMethod(methodName, parameterTypes); return new DefaultParameters(method); } diff --git a/src/test/java/org/springframework/data/repository/query/QueryMethodUnitTests.java b/src/test/java/org/springframework/data/repository/query/QueryMethodUnitTests.java index 573199cc0..c3e118ab8 100755 --- a/src/test/java/org/springframework/data/repository/query/QueryMethodUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/QueryMethodUnitTests.java @@ -19,16 +19,15 @@ import static org.assertj.core.api.Assertions.*; import io.vavr.collection.Seq; import io.vavr.control.Option; +import reactor.core.publisher.Mono; import java.io.Serializable; -import java.lang.reflect.Method; import java.util.List; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Future; import java.util.stream.Stream; import org.junit.jupiter.api.Test; -import reactor.core.publisher.Mono; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; @@ -56,35 +55,35 @@ class QueryMethodUnitTests { @Test // DATAJPA-59 void rejectsPagingMethodWithInvalidReturnType() throws Exception { - Method method = SampleRepository.class.getMethod("pagingMethodWithInvalidReturnType", Pageable.class); + var method = SampleRepository.class.getMethod("pagingMethodWithInvalidReturnType", Pageable.class); assertThatIllegalStateException().isThrownBy(() -> new QueryMethod(method, metadata, factory)); } @Test // DATAJPA-59 void rejectsPagingMethodWithoutPageable() throws Exception { - Method method = SampleRepository.class.getMethod("pagingMethodWithoutPageable"); + var method = SampleRepository.class.getMethod("pagingMethodWithoutPageable"); assertThatIllegalArgumentException().isThrownBy(() -> new QueryMethod(method, metadata, factory)); } @Test // DATACMNS-64 void setsUpSimpleQueryMethodCorrectly() throws Exception { - Method method = SampleRepository.class.getMethod("findByUsername", String.class); + var method = SampleRepository.class.getMethod("findByUsername", String.class); new QueryMethod(method, metadata, factory); } @Test // DATACMNS-61 void considersIterableMethodForCollectionQuery() throws Exception { - Method method = SampleRepository.class.getMethod("sampleMethod"); - QueryMethod queryMethod = new QueryMethod(method, metadata, factory); + var method = SampleRepository.class.getMethod("sampleMethod"); + var queryMethod = new QueryMethod(method, metadata, factory); assertThat(queryMethod.isCollectionQuery()).isTrue(); } @Test // DATACMNS-67 void doesNotConsiderPageMethodCollectionQuery() throws Exception { - Method method = SampleRepository.class.getMethod("anotherSampleMethod", Pageable.class); - QueryMethod queryMethod = new QueryMethod(method, metadata, factory); + var method = SampleRepository.class.getMethod("anotherSampleMethod", Pageable.class); + var queryMethod = new QueryMethod(method, metadata, factory); assertThat(queryMethod.isPageQuery()).isTrue(); assertThat(queryMethod.isCollectionQuery()).isFalse(); } @@ -92,8 +91,8 @@ class QueryMethodUnitTests { @Test // DATACMNS-171 void detectsAnEntityBeingReturned() throws Exception { - Method method = SampleRepository.class.getMethod("returnsEntitySubclass"); - QueryMethod queryMethod = new QueryMethod(method, metadata, factory); + var method = SampleRepository.class.getMethod("returnsEntitySubclass"); + var queryMethod = new QueryMethod(method, metadata, factory); assertThat(queryMethod.isQueryForEntity()).isTrue(); } @@ -101,8 +100,8 @@ class QueryMethodUnitTests { @Test // DATACMNS-171 void detectsNonEntityBeingReturned() throws Exception { - Method method = SampleRepository.class.getMethod("returnsProjection"); - QueryMethod queryMethod = new QueryMethod(method, metadata, factory); + var method = SampleRepository.class.getMethod("returnsProjection"); + var queryMethod = new QueryMethod(method, metadata, factory); assertThat(queryMethod.isQueryForEntity()).isFalse(); } @@ -111,8 +110,8 @@ class QueryMethodUnitTests { void detectsSliceMethod() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("sliceOfUsers"); - QueryMethod queryMethod = new QueryMethod(method, repositoryMetadata, factory); + var method = SampleRepository.class.getMethod("sliceOfUsers"); + var queryMethod = new QueryMethod(method, repositoryMetadata, factory); assertThat(queryMethod.isSliceQuery()).isTrue(); assertThat(queryMethod.isCollectionQuery()).isFalse(); @@ -123,7 +122,7 @@ class QueryMethodUnitTests { void detectsCollectionMethodForArrayRetrunType() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("arrayOfUsers"); + var method = SampleRepository.class.getMethod("arrayOfUsers"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -132,7 +131,7 @@ class QueryMethodUnitTests { void considersMethodReturningAStreamStreaming() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("streaming"); + var method = SampleRepository.class.getMethod("streaming"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isStreamQuery()).isTrue(); } @@ -141,7 +140,7 @@ class QueryMethodUnitTests { void doesNotRejectStreamingForPagination() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("streaming", Pageable.class); + var method = SampleRepository.class.getMethod("streaming", Pageable.class); assertThat(new QueryMethod(method, repositoryMetadata, factory).isStreamQuery()).isTrue(); } @@ -150,7 +149,7 @@ class QueryMethodUnitTests { void doesNotRejectCompletableFutureQueryForSingleEntity() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsCompletableFutureForSingleEntity"); + var method = SampleRepository.class.getMethod("returnsCompletableFutureForSingleEntity"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isFalse(); } @@ -159,7 +158,7 @@ class QueryMethodUnitTests { void doesNotRejectCompletableFutureQueryForEntityCollection() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsCompletableFutureForEntityCollection"); + var method = SampleRepository.class.getMethod("returnsCompletableFutureForEntityCollection"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -168,7 +167,7 @@ class QueryMethodUnitTests { void doesNotRejectFutureQueryForSingleEntity() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsFutureForSingleEntity"); + var method = SampleRepository.class.getMethod("returnsFutureForSingleEntity"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isFalse(); } @@ -177,7 +176,7 @@ class QueryMethodUnitTests { void doesNotRejectFutureQueryForEntityCollection() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsFutureForEntityCollection"); + var method = SampleRepository.class.getMethod("returnsFutureForEntityCollection"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -189,7 +188,7 @@ class QueryMethodUnitTests { void detectsCustomCollectionReturnType() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsSeq"); + var method = SampleRepository.class.getMethod("returnsSeq"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -201,7 +200,7 @@ class QueryMethodUnitTests { void detectsWrapperWithinWrapper() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsFutureOfSeq"); + var method = SampleRepository.class.getMethod("returnsFutureOfSeq"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -213,7 +212,7 @@ class QueryMethodUnitTests { void detectsSingleValueWrapperWithinWrapper() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsFutureOfOption"); + var method = SampleRepository.class.getMethod("returnsFutureOfOption"); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isFalse(); } @@ -222,7 +221,7 @@ class QueryMethodUnitTests { void doesNotRejectSeqForPagination() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("returnsSeq", Pageable.class); + var method = SampleRepository.class.getMethod("returnsSeq", Pageable.class); assertThat(new QueryMethod(method, repositoryMetadata, factory).isCollectionQuery()).isTrue(); } @@ -230,8 +229,8 @@ class QueryMethodUnitTests { @Test // DATACMNS-1300 void doesNotConsiderMethodForIterableAggregateACollectionQuery() throws Exception { - RepositoryMetadata metadata = AbstractRepositoryMetadata.getMetadata(ContainerRepository.class); - Method method = ContainerRepository.class.getMethod("someMethod"); + var metadata = AbstractRepositoryMetadata.getMetadata(ContainerRepository.class); + var method = ContainerRepository.class.getMethod("someMethod"); assertThat(new QueryMethod(method, metadata, factory).isCollectionQuery()).isFalse(); } @@ -240,10 +239,10 @@ class QueryMethodUnitTests { void detectsReactiveSliceQuery() throws Exception { RepositoryMetadata repositoryMetadata = new DefaultRepositoryMetadata(SampleRepository.class); - Method method = SampleRepository.class.getMethod("reactiveSlice"); + var method = SampleRepository.class.getMethod("reactiveSlice"); - QueryMethod queryMethod = new QueryMethod(method, repositoryMetadata, factory); - ReturnedType returnedType = queryMethod.getResultProcessor().getReturnedType(); + var queryMethod = new QueryMethod(method, repositoryMetadata, factory); + var returnedType = queryMethod.getResultProcessor().getReturnedType(); assertThat(queryMethod.isSliceQuery()).isTrue(); assertThat(returnedType.getTypeToRead()).isEqualTo(User.class); assertThat(returnedType.getDomainType()).isEqualTo(User.class); diff --git a/src/test/java/org/springframework/data/repository/query/QuotationMapUnitTests.java b/src/test/java/org/springframework/data/repository/query/QuotationMapUnitTests.java index 32ee5b781..e727a952f 100644 --- a/src/test/java/org/springframework/data/repository/query/QuotationMapUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/QuotationMapUnitTests.java @@ -43,7 +43,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void simpleStringDoesNotContainQuotes() { - String query = "something"; + var query = "something"; isNotQuoted(query, "simple String", -1, 0, query.length() - 1, query.length(), query.length() + 1); } @@ -51,7 +51,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void fullySingleQuotedStringDoesContainQuotes() { - String query = "'something'"; + var query = "'something'"; isNotQuoted(query, "quoted String", -1, query.length()); isQuoted(query, "quoted String", 0, 1, 5, query.length() - 1); @@ -60,7 +60,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void fullyDoubleQuotedStringDoesContainQuotes() { - String query = "\"something\""; + var query = "\"something\""; isNotQuoted(query, "double quoted String", -1, query.length()); isQuoted(query, "double quoted String", 0, 1, 5, query.length() - 1); @@ -69,7 +69,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void stringWithEmptyQuotes() { - String query = "abc''def"; + var query = "abc''def"; isNotQuoted(query, "zero length quote", -1, 0, 1, 2, 5, 6, 7); isQuoted(query, "zero length quote", 3, 4); @@ -78,7 +78,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void doubleInSingleQuotes() { - String query = "abc'\"'def"; + var query = "abc'\"'def"; isNotQuoted(query, "double inside single quote", -1, 0, 1, 2, 6, 7, 8); isQuoted(query, "double inside single quote", 3, 4, 5); @@ -87,7 +87,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void singleQuotesInDoubleQuotes() { - String query = "abc\"'\"def"; + var query = "abc\"'\"def"; isNotQuoted(query, "single inside double quote", -1, 0, 1, 2, 6, 7, 8); isQuoted(query, "single inside double quote", 3, 4, 5); @@ -96,7 +96,7 @@ class QuotationMapUnitTests { @Test // DATAJPA-1235 void escapedQuotes() { - String query = "a'b''cd''e'f"; + var query = "a'b''cd''e'f"; isNotQuoted(query, "escaped quote", -1, 0, 11, 12); isQuoted(query, "escaped quote", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10); } @@ -108,9 +108,9 @@ class QuotationMapUnitTests { private static void isNotQuoted(String query, Object label, int... indexes) { - QuotationMap quotationMap = new QuotationMap(query); + var quotationMap = new QuotationMap(query); - for (int index : indexes) { + for (var index : indexes) { assertThat(quotationMap.isQuoted(index)) .describedAs(String.format("(%s) %s does not contain a quote at %s", label, query, index)) // @@ -120,9 +120,9 @@ class QuotationMapUnitTests { private static void isQuoted(String query, Object label, int... indexes) { - QuotationMap quotationMap = new QuotationMap(query); + var quotationMap = new QuotationMap(query); - for (int index : indexes) { + for (var index : indexes) { assertThat(quotationMap.isQuoted(index)) .describedAs(String.format("(%s) %s does contain a quote at %s", label, query, index)) // diff --git a/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java b/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java index 35139ab88..426be8c12 100755 --- a/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java @@ -26,7 +26,6 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; -import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -58,9 +57,9 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void leavesNonProjectingResultUntouched() throws Exception { - ResultProcessor information = new ResultProcessor(getQueryMethod("findAll"), new SpelAwareProxyProjectionFactory()); + var information = new ResultProcessor(getQueryMethod("findAll"), new SpelAwareProxyProjectionFactory()); - Sample sample = new Sample("Dave", "Matthews"); + var sample = new Sample("Dave", "Matthews"); List result = new ArrayList<>(Collections.singletonList(sample)); List converted = information.processResult(result); @@ -70,7 +69,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void createsProjectionFromProperties() throws Exception { - ResultProcessor information = getProcessor("findOneProjection"); + var information = getProcessor("findOneProjection"); SampleProjection result = information.processResult(Collections.singletonList("Matthews")); @@ -80,9 +79,9 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void createsListOfProjectionsFormNestedLists() throws Exception { - ResultProcessor information = getProcessor("findAllProjection"); + var information = getProcessor("findAllProjection"); - List columns = Collections.singletonList("Matthews"); + var columns = Collections.singletonList("Matthews"); List> source = new ArrayList<>(Collections.singletonList(columns)); List result = information.processResult(source); @@ -94,7 +93,7 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void createsListOfProjectionsFromMaps() throws Exception { - ResultProcessor information = getProcessor("findAllProjection"); + var information = getProcessor("findAllProjection"); List> source = new ArrayList<>( Collections.singletonList(Collections.singletonMap("lastname", "Matthews"))); @@ -108,7 +107,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void createsListOfProjectionsFromEntity() throws Exception { - ResultProcessor information = getProcessor("findAllProjection"); + var information = getProcessor("findAllProjection"); List source = new ArrayList<>(Collections.singletonList(new Sample("Dave", "Matthews"))); List result = information.processResult(source); @@ -120,7 +119,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void createsPageOfProjectionsFromEntity() throws Exception { - ResultProcessor information = getProcessor("findPageProjection", Pageable.class); + var information = getProcessor("findPageProjection", Pageable.class); Page source = new PageImpl<>(Collections.singletonList(new Sample("Dave", "Matthews"))); Page result = information.processResult(source); @@ -132,7 +131,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void createsDynamicProjectionFromEntity() throws Exception { - ResultProcessor information = getProcessor("findOneOpenProjection"); + var information = getProcessor("findOneOpenProjection"); OpenProjection result = information.processResult(new Sample("Dave", "Matthews")); @@ -143,21 +142,21 @@ class ResultProcessorUnitTests { @Test // DATACMNS-89 void findsDynamicProjection() throws Exception { - ParameterAccessor accessor = mock(ParameterAccessor.class); + var accessor = mock(ParameterAccessor.class); - ResultProcessor factory = getProcessor("findOneDynamic", Class.class); + var factory = getProcessor("findOneDynamic", Class.class); assertThat(factory.withDynamicProjection(accessor)).isEqualTo(factory); doReturn(SampleProjection.class).when(accessor).findDynamicProjection(); - ResultProcessor processor = factory.withDynamicProjection(accessor); + var processor = factory.withDynamicProjection(accessor); assertThat(processor.getReturnedType().getReturnedType()).isEqualTo(SampleProjection.class); } @Test // DATACMNS-89 void refrainsFromProjectingIfThePreparingConverterReturnsACompatibleInstance() throws Exception { - Object result = getProcessor("findAllDtos").processResult(new Sample("Dave", "Matthews"), + var result = getProcessor("findAllDtos").processResult(new Sample("Dave", "Matthews"), source -> new SampleDto()); assertThat(result).isInstanceOf(SampleDto.class); @@ -165,7 +164,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-828 void returnsNullResultAsIs() throws Exception { - Object result = getProcessor("findOneDto").processResult(null); + var result = getProcessor("findOneDto").processResult(null); assertThat(result).isNull(); } @@ -174,11 +173,11 @@ class ResultProcessorUnitTests { Slice slice = new SliceImpl<>(Collections.singletonList(new Sample("Dave", "Matthews"))); - Object result = getProcessor("findSliceProjection", Pageable.class).processResult(slice); + var result = getProcessor("findSliceProjection", Pageable.class).processResult(slice); assertThat(result).isInstanceOf(Slice.class); - List content = ((Slice) result).getContent(); + var content = ((Slice) result).getContent(); assertThat(content).hasSize(1).hasOnlyElementsOfType(SampleProjection.class); } @@ -187,12 +186,12 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsStreamAsReturnWrapper() throws Exception { - Stream samples = Collections.singletonList(new Sample("Dave", "Matthews")).stream(); + var samples = Collections.singletonList(new Sample("Dave", "Matthews")).stream(); - Object result = getProcessor("findStreamProjection").processResult(samples); + var result = getProcessor("findStreamProjection").processResult(samples); assertThat(result).isInstanceOf(Stream.class); - List content = ((Stream) result).collect(Collectors.toList()); + var content = ((Stream) result).collect(Collectors.toList()); assertThat(content).hasSize(1).hasOnlyElementsOfType(SampleProjection.class); } @@ -200,7 +199,7 @@ class ResultProcessorUnitTests { @Test // DATACMNS-860 void supportsWrappingDto() throws Exception { - Object result = getProcessor("findOneWrappingDto").processResult(new Sample("Dave", "Matthews")); + var result = getProcessor("findOneWrappingDto").processResult(new Sample("Dave", "Matthews")); assertThat(result).isInstanceOf(WrappingDto.class); } @@ -208,9 +207,9 @@ class ResultProcessorUnitTests { @Test // DATACMNS-921 void fallsBackToApproximateCollectionIfNecessary() throws Exception { - ResultProcessor processor = getProcessor("findAllProjection"); + var processor = getProcessor("findAllProjection"); - SpecialList specialList = new SpecialList<>(new Object()); + var specialList = new SpecialList(new Object()); specialList.add(new Sample("Dave", "Matthews")); processor.processResult(specialList); @@ -220,13 +219,13 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsMonoWrapper() throws Exception { - Mono samples = Mono.just(new Sample("Dave", "Matthews")); + var samples = Mono.just(new Sample("Dave", "Matthews")); - Object result = getProcessor("findMonoSample").processResult(samples); + var result = getProcessor("findMonoSample").processResult(samples); assertThat(result).isInstanceOf(Mono.class); - Object content = ((Mono) result).block(); + var content = ((Mono) result).block(); assertThat(content).isInstanceOf(Sample.class); } @@ -235,13 +234,13 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsSingleWrapper() throws Exception { - Single samples = Single.just(new Sample("Dave", "Matthews")); + var samples = Single.just(new Sample("Dave", "Matthews")); - Object result = getProcessor("findSingleSample").processResult(samples); + var result = getProcessor("findSingleSample").processResult(samples); assertThat(result).isInstanceOf(Single.class); - Object content = ((Single) result).blockingGet(); + var content = ((Single) result).blockingGet(); assertThat(content).isInstanceOf(Sample.class); } @@ -251,13 +250,13 @@ class ResultProcessorUnitTests { void refrainsFromProjectingUsingReactiveWrappersIfThePreparingConverterReturnsACompatibleInstance() throws Exception { - ResultProcessor processor = getProcessor("findMonoSampleDto"); + var processor = getProcessor("findMonoSampleDto"); - Object result = processor.processResult(Mono.just(new Sample("Dave", "Matthews")), source -> new SampleDto()); + var result = processor.processResult(Mono.just(new Sample("Dave", "Matthews")), source -> new SampleDto()); assertThat(result).isInstanceOf(Mono.class); - Object content = ((Mono) result).block(); + var content = ((Mono) result).block(); assertThat(content).isInstanceOf(SampleDto.class); } @@ -266,13 +265,13 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsFluxProjections() throws Exception { - Flux samples = Flux.just(new Sample("Dave", "Matthews")); + var samples = Flux.just(new Sample("Dave", "Matthews")); - Object result = getProcessor("findFluxProjection").processResult(samples); + var result = getProcessor("findFluxProjection").processResult(samples); assertThat(result).isInstanceOf(Flux.class); - List content = ((Flux) result).collectList().block(); + var content = ((Flux) result).collectList().block(); assertThat(content).isNotEmpty(); assertThat(content.get(0)).isInstanceOf(SampleProjection.class); @@ -282,13 +281,13 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsObservableProjections() throws Exception { - Observable samples = Observable.just(new Sample("Dave", "Matthews")); + var samples = Observable.just(new Sample("Dave", "Matthews")); - Object result = getProcessor("findObservableProjection").processResult(samples); + var result = getProcessor("findObservableProjection").processResult(samples); assertThat(result).isInstanceOf(Observable.class); - List content = ((Observable) result).toList().blockingGet(); + var content = ((Observable) result).toList().blockingGet(); assertThat(content).isNotEmpty(); assertThat(content.get(0)).isInstanceOf(SampleProjection.class); @@ -298,13 +297,13 @@ class ResultProcessorUnitTests { @SuppressWarnings("unchecked") void supportsFlowableProjections() throws Exception { - Flowable samples = Flowable.just(new Sample("Dave", "Matthews")); + var samples = Flowable.just(new Sample("Dave", "Matthews")); - Object result = getProcessor("findFlowableProjection").processResult(samples); + var result = getProcessor("findFlowableProjection").processResult(samples); assertThat(result).isInstanceOf(Flowable.class); - List content = ((Flowable) result).toList().blockingGet(); + var content = ((Flowable) result).toList().blockingGet(); assertThat(content).isNotEmpty(); assertThat(content.get(0)).isInstanceOf(SampleProjection.class); @@ -347,7 +346,7 @@ class ResultProcessorUnitTests { private static QueryMethod getQueryMethod(String name, Class... parameters) throws Exception { - Method method = SampleRepository.class.getMethod(name, parameters); + var method = SampleRepository.class.getMethod(name, parameters); return new QueryMethod(method, new DefaultRepositoryMetadata(SampleRepository.class), new SpelAwareProxyProjectionFactory()); } diff --git a/src/test/java/org/springframework/data/repository/query/ReturnedTypeUnitTests.java b/src/test/java/org/springframework/data/repository/query/ReturnedTypeUnitTests.java index 1d51c2338..8c5f976fe 100755 --- a/src/test/java/org/springframework/data/repository/query/ReturnedTypeUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ReturnedTypeUnitTests.java @@ -17,12 +17,12 @@ package org.springframework.data.repository.query; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; import java.math.BigInteger; import java.time.LocalDateTime; import java.util.List; import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Value; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; @@ -41,7 +41,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void treatsSimpleDomainTypeAsIs() throws Exception { - ReturnedType type = getReturnedType("findAll"); + var type = getReturnedType("findAll"); assertThat(type.getTypeToRead()).isEqualTo(Sample.class); assertThat(type.getInputProperties()).isEmpty(); @@ -52,7 +52,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsDto() throws Exception { - ReturnedType type = getReturnedType("findAllDtos"); + var type = getReturnedType("findAllDtos"); assertThat(type.getTypeToRead()).isEqualTo(SampleDto.class); assertThat(type.getInputProperties()).contains("firstname"); @@ -64,7 +64,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsProjection() throws Exception { - ReturnedType type = getReturnedType("findAllProjection"); + var type = getReturnedType("findAllProjection"); assertThat(type.getTypeToRead()).isNull(); assertThat(type.getInputProperties()).contains("lastname"); @@ -73,7 +73,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsVoidMethod() throws Exception { - ReturnedType type = getReturnedType("voidMethod"); + var type = getReturnedType("voidMethod"); assertThat(type.getDomainType()).isEqualTo(Sample.class); assertThat(type.getReturnedType()).isEqualTo(void.class); @@ -82,7 +82,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsClosedProjection() throws Exception { - ReturnedType type = getReturnedType("findOneProjection"); + var type = getReturnedType("findOneProjection"); assertThat(type.getReturnedType()).isEqualTo(SampleProjection.class); assertThat(type.isProjecting()).isTrue(); @@ -92,7 +92,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsOpenProjection() throws Exception { - ReturnedType type = getReturnedType("findOneOpenProjection"); + var type = getReturnedType("findOneOpenProjection"); assertThat(type.getReturnedType()).isEqualTo(OpenProjection.class); assertThat(type.isProjecting()).isTrue(); @@ -103,7 +103,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-89 void detectsComplexNumberTypes() throws Exception { - ReturnedType type = getReturnedType("countQuery"); + var type = getReturnedType("countQuery"); assertThat(type.isProjecting()).isFalse(); assertThat(type.needsCustomConstruction()).isFalse(); @@ -113,7 +113,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-840 void detectsSampleDtoWithDefaultConstructor() throws Exception { - ReturnedType type = getReturnedType("dtoWithMultipleConstructors"); + var type = getReturnedType("dtoWithMultipleConstructors"); assertThat(type.getInputProperties()).isEmpty(); assertThat(type.needsCustomConstruction()).isFalse(); @@ -122,7 +122,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-840 void doesNotConsiderAnEnumProjecting() throws Exception { - ReturnedType type = getReturnedType("findEnum"); + var type = getReturnedType("findEnum"); assertThat(type.needsCustomConstruction()).isFalse(); assertThat(type.isProjecting()).isFalse(); @@ -131,7 +131,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-850 void considersAllJavaTypesAsNotProjecting() throws Exception { - ReturnedType type = getReturnedType("timeQuery"); + var type = getReturnedType("timeQuery"); assertThat(type.needsCustomConstruction()).isFalse(); assertThat(type.isProjecting()).isFalse(); @@ -140,7 +140,7 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-862 void considersInterfaceImplementedByDomainTypeNotProjecting() throws Exception { - ReturnedType type = getReturnedType("findOneInterface"); + var type = getReturnedType("findOneInterface"); assertThat(type.needsCustomConstruction()).isFalse(); assertThat(type.isProjecting()).isFalse(); @@ -149,9 +149,9 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-963 void detectsDistinctInputProperties() { - ReturnedType type = ReturnedType.of(Child.class, Object.class, new SpelAwareProxyProjectionFactory()); + var type = ReturnedType.of(Child.class, Object.class, new SpelAwareProxyProjectionFactory()); - List properties = type.getInputProperties(); + var properties = type.getInputProperties(); assertThat(properties).hasSize(1); assertThat(properties).containsExactly("firstname"); @@ -160,10 +160,10 @@ class ReturnedTypeUnitTests { @Test // DATACMNS-1112 void cachesInstancesBySourceTypes() { - SpelAwareProxyProjectionFactory factory = new SpelAwareProxyProjectionFactory(); + var factory = new SpelAwareProxyProjectionFactory(); - ReturnedType left = ReturnedType.of(Child.class, Object.class, factory); - ReturnedType right = ReturnedType.of(Child.class, Object.class, factory); + var left = ReturnedType.of(Child.class, Object.class, factory); + var right = ReturnedType.of(Child.class, Object.class, factory); assertThat(left).isSameAs(right); } @@ -174,7 +174,7 @@ class ReturnedTypeUnitTests { private static QueryMethod getQueryMethod(String name, Class... parameters) throws Exception { - Method method = SampleRepository.class.getMethod(name, parameters); + var method = SampleRepository.class.getMethod(name, parameters); return new QueryMethod(method, new DefaultRepositoryMetadata(SampleRepository.class), new SpelAwareProxyProjectionFactory()); } diff --git a/src/test/java/org/springframework/data/repository/query/SimpleParameterAccessorUnitTests.java b/src/test/java/org/springframework/data/repository/query/SimpleParameterAccessorUnitTests.java index ace45f7f4..560e49c6f 100755 --- a/src/test/java/org/springframework/data/repository/query/SimpleParameterAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/SimpleParameterAccessorUnitTests.java @@ -78,7 +78,7 @@ class SimpleParameterAccessorUnitTests { @Test void returnsSortIfAvailable() { - Sort sort = Sort.by("foo"); + var sort = Sort.by("foo"); ParameterAccessor accessor = new ParametersParameterAccessor(sortParameters, new Object[] { "test", sort }); assertThat(accessor.getSort()).isEqualTo(sort); @@ -98,7 +98,7 @@ class SimpleParameterAccessorUnitTests { @Test void returnsSortFromPageableIfAvailable() throws Exception { - Sort sort = Sort.by("foo"); + var sort = Sort.by("foo"); Pageable pageable = PageRequest.of(0, 10, sort); ParameterAccessor accessor = new ParametersParameterAccessor(pageableParameters, new Object[] { "test", pageable }); diff --git a/src/test/java/org/springframework/data/repository/query/SpelExtractorUnitTests.java b/src/test/java/org/springframework/data/repository/query/SpelExtractorUnitTests.java index 2592818fd..185e01339 100644 --- a/src/test/java/org/springframework/data/repository/query/SpelExtractorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/SpelExtractorUnitTests.java @@ -18,13 +18,13 @@ package org.springframework.data.repository.query; import static org.assertj.core.api.Assertions.*; import java.util.Arrays; -import java.util.List; import java.util.Map; import java.util.function.BiFunction; import org.assertj.core.api.SoftAssertions; import org.assertj.core.groups.Tuple; import org.junit.jupiter.api.Test; + import org.springframework.data.repository.query.SpelQueryContext.SpelExtractor; /** @@ -43,7 +43,7 @@ class SpelExtractorUnitTests { @Test // DATACMNS-1258 void nullQueryThrowsException() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); assertThatIllegalArgumentException().isThrownBy(() -> context.parse(null)); } @@ -51,8 +51,8 @@ class SpelExtractorUnitTests { @Test // DATACMNS-1258 void emptyStringGetsParsedCorrectly() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); - SpelExtractor extractor = context.parse(""); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var extractor = context.parse(""); softly.assertThat(extractor.getQueryString()).isEqualTo(""); softly.assertThat(extractor.getParameterMap()).isEmpty(); @@ -63,8 +63,8 @@ class SpelExtractorUnitTests { @Test // DATACMNS-1258 void findsAndReplacesExpressions() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); - SpelExtractor extractor = context.parse(":#{one} ?#{two}"); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var extractor = context.parse(":#{one} ?#{two}"); softly.assertThat(extractor.getQueryString()).isEqualTo(":EPP0 ?EPP1"); softly.assertThat(extractor.getParameterMap().entrySet()) // @@ -80,8 +80,8 @@ class SpelExtractorUnitTests { @Test // DATACMNS-1258 void keepsStringWhenNoMatchIsFound() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); - SpelExtractor extractor = context.parse("abcdef"); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var extractor = context.parse("abcdef"); softly.assertThat(extractor.getQueryString()).isEqualTo("abcdef"); softly.assertThat(extractor.getParameterMap()).isEmpty(); @@ -92,7 +92,7 @@ class SpelExtractorUnitTests { @Test // DATACMNS-1258 void spelsInQuotesGetIgnored() { - List queries = Arrays.asList(// + var queries = Arrays.asList(// "a'b:#{one}cd'ef", // "a'b:#{o'ne}cdef", // "ab':#{one}'cdef", // @@ -107,8 +107,8 @@ class SpelExtractorUnitTests { private void checkNoSpelIsFound(String query) { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); - SpelExtractor extractor = context.parse(query); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var extractor = context.parse(query); softly.assertThat(extractor.getQueryString()).describedAs(query).isEqualTo(query); softly.assertThat(extractor.getParameterMap()).describedAs(query).isEmpty(); diff --git a/src/test/java/org/springframework/data/repository/query/SpelQueryContextUnitTests.java b/src/test/java/org/springframework/data/repository/query/SpelQueryContextUnitTests.java index 7e09f90d5..542ec83d4 100644 --- a/src/test/java/org/springframework/data/repository/query/SpelQueryContextUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/SpelQueryContextUnitTests.java @@ -51,7 +51,7 @@ class SpelQueryContextUnitTests { @Test // DATACMNS-1258 void rejectsNullEvaluationContextProvider() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); assertThatIllegalArgumentException() // .isThrownBy(() -> context.withEvaluationContextProvider(null)); @@ -60,7 +60,7 @@ class SpelQueryContextUnitTests { @Test // DATACMNS-1258 void createsEvaluatingContextUsingProvider() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); assertThat(context.withEvaluationContextProvider(EVALUATION_CONTEXT_PROVIDER)).isNotNull(); } @@ -68,9 +68,9 @@ class SpelQueryContextUnitTests { @Test // DATACMNS-1683 void reportsQuotationCorrectly() { - SpelQueryContext context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); + var context = SpelQueryContext.of(PARAMETER_NAME_SOURCE, REPLACEMENT_SOURCE); - SpelQueryContext.SpelExtractor extractor = context.parse( + var extractor = context.parse( "select n from NetworkServer n where (LOWER(n.name) LIKE LOWER(NULLIF(text(concat('%',:#{#networkRequest.name},'%')), '')) OR :#{#networkRequest.name} IS NULL )"); assertThat(extractor.getQueryString()).isEqualTo( diff --git a/src/test/java/org/springframework/data/repository/query/parser/OrderBySourceUnitTests.java b/src/test/java/org/springframework/data/repository/query/parser/OrderBySourceUnitTests.java index 89c0f34ab..e0b9605a0 100755 --- a/src/test/java/org/springframework/data/repository/query/parser/OrderBySourceUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/parser/OrderBySourceUnitTests.java @@ -42,7 +42,7 @@ class OrderBySourceUnitTests { @Test void handlesMultipleDirectionsCorrectly() { - OrderBySource orderBySource = new OrderBySource("LastnameAscUsernameDesc"); + var orderBySource = new OrderBySource("LastnameAscUsernameDesc"); assertThat(orderBySource.toSort()).isEqualTo(Sort.by("lastname").ascending().and(Sort.by("username").descending())); } @@ -54,14 +54,14 @@ class OrderBySourceUnitTests { @Test void usesNestedPropertyCorrectly() throws Exception { - OrderBySource source = new OrderBySource("BarNameDesc", Optional.of(Foo.class)); + var source = new OrderBySource("BarNameDesc", Optional.of(Foo.class)); assertThat(source.toSort()).isEqualTo(Sort.by("bar.name").descending()); } @Test // DATACMNS-641 void defaultsSortOrderToAscendingSort() { - OrderBySource source = new OrderBySource("lastname"); + var source = new OrderBySource("lastname"); assertThat(source.toSort()).isEqualTo(Sort.by("lastname")); } diff --git a/src/test/java/org/springframework/data/repository/query/parser/PartTreeUnitTests.java b/src/test/java/org/springframework/data/repository/query/parser/PartTreeUnitTests.java index 8b71fb1a9..2dc985317 100755 --- a/src/test/java/org/springframework/data/repository/query/parser/PartTreeUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/parser/PartTreeUnitTests.java @@ -24,10 +24,10 @@ import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.Date; -import java.util.Iterator; import java.util.List; import org.junit.jupiter.api.Test; + import org.springframework.data.domain.Sort; import org.springframework.data.mapping.PropertyPath; import org.springframework.data.mapping.PropertyReferenceException; @@ -70,27 +70,27 @@ class PartTreeUnitTests { @Test void parsesSimplePropertyCorrectly() throws Exception { - PartTree partTree = partTree("firstname"); + var partTree = partTree("firstname"); assertPart(partTree, parts("firstname")); } @Test void parsesAndPropertiesCorrectly() throws Exception { - PartTree partTree = partTree("firstnameAndLastname"); + var partTree = partTree("firstnameAndLastname"); assertPart(partTree, parts("firstname", "lastname")); assertThat(partTree.getSort().isSorted()).isFalse(); } @Test void parsesOrPropertiesCorrectly() throws Exception { - PartTree partTree = partTree("firstnameOrLastname"); + var partTree = partTree("firstnameOrLastname"); assertPart(partTree, parts("firstname"), parts("lastname")); assertThat(partTree.getSort().isSorted()).isFalse(); } @Test void parsesCombinedAndAndOrPropertiesCorrectly() throws Exception { - PartTree tree = partTree("firstnameAndLastnameOrLastname"); + var tree = partTree("firstnameAndLastnameOrLastname"); assertPart(tree, parts("firstname", "lastname"), parts("lastname")); } @@ -107,13 +107,13 @@ class PartTreeUnitTests { } private void hasSortIfOrderByIsGivenWithAllIgnoreCase(String source) throws Exception { - PartTree partTree = partTree(source); + var partTree = partTree(source); assertThat(partTree.getSort()).isEqualTo(Sort.by("lastname").descending()); } @Test void detectsDistinctCorrectly() throws Exception { - for (String prefix : PREFIXES) { + for (var prefix : PREFIXES) { detectsDistinctCorrectly(prefix + "DistinctByLastname", true); detectsDistinctCorrectly(prefix + "UsersDistinctByLastname", true); detectsDistinctCorrectly(prefix + "DistinctUsersByLastname", true); @@ -121,21 +121,21 @@ class PartTreeUnitTests { detectsDistinctCorrectly(prefix + "ByLastname", false); // Check it's non-greedy (would strip everything until Order*By* // otherwise) - PartTree tree = detectsDistinctCorrectly(prefix + "ByLastnameOrderByFirstnameDesc", false); + var tree = detectsDistinctCorrectly(prefix + "ByLastnameOrderByFirstnameDesc", false); assertThat(tree.getSort()).isEqualTo(Sort.by("firstname").descending()); } } private PartTree detectsDistinctCorrectly(String source, boolean expected) { - PartTree tree = partTree(source); + var tree = partTree(source); assertThat(tree.isDistinct()).isEqualTo(expected); return tree; } @Test void parsesWithinCorrectly() { - PartTree tree = partTree("findByLocationWithin"); - for (Part part : tree.getParts()) { + var tree = partTree("findByLocationWithin"); + for (var part : tree.getParts()) { assertThat(part.getType()).isEqualTo(Type.WITHIN); assertThat(part.getProperty()).isEqualTo(newProperty("location")); } @@ -153,7 +153,7 @@ class PartTreeUnitTests { @Test void supportToStringWithSortOrder() throws Exception { - PartTree tree = partTree("firstnameOrderByLastnameDesc"); + var tree = partTree("firstnameOrderByLastnameDesc"); assertThat(tree.toString()).isEqualTo("firstname SIMPLE_PROPERTY (1): [Is, Equals] NEVER Order By lastname: DESC"); } @@ -168,8 +168,8 @@ class PartTreeUnitTests { } private void detectsIgnoreAllCase(String source, IgnoreCaseType expected) throws Exception { - PartTree tree = partTree(source); - for (Part part : tree.getParts()) { + var tree = partTree(source); + for (var part : tree.getParts()) { assertThat(part.shouldIgnoreCase()).isEqualTo(expected); } } @@ -177,11 +177,11 @@ class PartTreeUnitTests { @Test void detectsSpecificIgnoreCase() throws Exception { - PartTree tree = partTree("findByFirstnameIgnoreCaseAndLastname"); + var tree = partTree("findByFirstnameIgnoreCaseAndLastname"); assertPart(tree, parts("firstnameIgnoreCase", "lastname")); - Iterator parts = tree.getParts().iterator(); + var parts = tree.getParts().iterator(); assertThat(parts.next().shouldIgnoreCase()).isEqualTo(IgnoreCaseType.ALWAYS); assertThat(parts.next().shouldIgnoreCase()).isEqualTo(IgnoreCaseType.NEVER); @@ -189,9 +189,9 @@ class PartTreeUnitTests { @Test void detectsSpecificIgnoringCase() throws Exception { - PartTree tree = partTree("findByFirstnameIgnoringCaseAndLastname"); + var tree = partTree("findByFirstnameIgnoringCaseAndLastname"); assertPart(tree, parts("firstnameIgnoreCase", "lastname")); - Iterator parts = tree.getParts().iterator(); + var parts = tree.getParts().iterator(); assertThat(parts.next().shouldIgnoreCase()).isEqualTo(IgnoreCaseType.ALWAYS); assertThat(parts.next().shouldIgnoreCase()).isEqualTo(IgnoreCaseType.NEVER); } @@ -209,16 +209,16 @@ class PartTreeUnitTests { @Test void returnsAllParts() { - PartTree tree = partTree("findByLastnameAndFirstname"); + var tree = partTree("findByLastnameAndFirstname"); assertPart(tree, parts("lastname", "firstname")); } @Test void returnsAllPartsOfType() { - PartTree tree = partTree("findByLastnameAndFirstnameGreaterThan"); + var tree = partTree("findByLastnameAndFirstnameGreaterThan"); - Collection parts = toCollection(tree.getParts(Type.SIMPLE_PROPERTY)); + var parts = toCollection(tree.getParts(Type.SIMPLE_PROPERTY)); assertThat(parts).containsExactly(part("lastname")); parts = toCollection(tree.getParts(Type.GREATER_THAN)); @@ -284,7 +284,7 @@ class PartTreeUnitTests { @Test // DATACMNS-182 void parsesContainingCorrectly() { - PartTree tree = new PartTree("findAllByLegalNameContainingOrCommonNameContainingAllIgnoringCase", + var tree = new PartTree("findAllByLegalNameContainingOrCommonNameContainingAllIgnoringCase", Organization.class); assertPart(tree, new Part[] { new Part("legalNameContaining", Organization.class, true) }, new Part[] { new Part("commonNameContaining", Organization.class, true) }); @@ -293,7 +293,7 @@ class PartTreeUnitTests { @Test // DATACMNS-221 void parsesSpecialCharactersCorrectly() { - PartTree tree = new PartTree("findByØreAndÅrOrderByÅrAsc", DomainObjectWithSpecialChars.class); + var tree = new PartTree("findByØreAndÅrOrderByÅrAsc", DomainObjectWithSpecialChars.class); assertPart(tree, new Part[] { new Part("øre", DomainObjectWithSpecialChars.class), new Part("år", DomainObjectWithSpecialChars.class) }); @@ -303,7 +303,7 @@ class PartTreeUnitTests { @Test // DATACMNS-363 void parsesSpecialCharactersOnlyCorrectly_Korean() { - PartTree tree = new PartTree("findBy이름And생일OrderBy생일Asc", DomainObjectWithSpecialChars.class); + var tree = new PartTree("findBy이름And생일OrderBy생일Asc", DomainObjectWithSpecialChars.class); assertPart(tree, new Part[] { new Part("이름", DomainObjectWithSpecialChars.class), new Part("생일", DomainObjectWithSpecialChars.class) }); @@ -313,7 +313,7 @@ class PartTreeUnitTests { @Test // DATACMNS-363 void parsesSpecialUnicodeCharactersMixedWithRegularCharactersCorrectly_Korean() { - PartTree tree = new PartTree("findBy이름AndOrderIdOrderBy생일Asc", DomainObjectWithSpecialChars.class); + var tree = new PartTree("findBy이름AndOrderIdOrderBy생일Asc", DomainObjectWithSpecialChars.class); assertPart(tree, new Part[] { new Part("이름", DomainObjectWithSpecialChars.class), new Part("order.id", DomainObjectWithSpecialChars.class) }); @@ -323,7 +323,7 @@ class PartTreeUnitTests { @Test // DATACMNS-363 void parsesNestedSpecialUnicodeCharactersMixedWithRegularCharactersCorrectly_Korean() { - PartTree tree = new PartTree( // + var tree = new PartTree( // "findBy" + "이름" // + "And" + "OrderId" // + "And" + "Nested_이름" // we use _ here to mark the beginning of a new property reference "이름" @@ -331,7 +331,7 @@ class PartTreeUnitTests { + "OrderBy" + "생일" + "Asc", DomainObjectWithSpecialChars.class); - Iterator parts = tree.iterator(); + var parts = tree.iterator(); assertPartsIn(parts.next(), new Part[] { // new Part("이름", DomainObjectWithSpecialChars.class), // new Part("order.id", DomainObjectWithSpecialChars.class), // @@ -347,7 +347,7 @@ class PartTreeUnitTests { @Test // DATACMNS-363 void parsesNestedSpecialUnicodeCharactersMixedWithRegularCharactersCorrectly_KoreanNumbersSymbols() { - PartTree tree = new PartTree( // + var tree = new PartTree( // "findBy" + "이름" // + "And" + "OrderId" // + "And" + "Anders" // @@ -360,7 +360,7 @@ class PartTreeUnitTests { + "OrderBy" + "생일" + "Asc", DomainObjectWithSpecialChars.class); - Iterator parts = tree.iterator(); + var parts = tree.iterator(); assertPartsIn(parts.next(), new Part[] { // new Part("이름", DomainObjectWithSpecialChars.class), // new Part("order.id", DomainObjectWithSpecialChars.class), // @@ -381,21 +381,21 @@ class PartTreeUnitTests { @Test // DATACMNS-303 void identifiesSimpleCountByCorrectly() { - PartTree tree = new PartTree("countByLastname", User.class); + var tree = new PartTree("countByLastname", User.class); assertThat(tree.isCountProjection()).isTrue(); } @Test // DATACMNS-875 void identifiesSimpleExistsByCorrectly() { - PartTree tree = new PartTree("existsByLastname", User.class); + var tree = new PartTree("existsByLastname", User.class); assertThat(tree.isExistsProjection()).isEqualTo(true); } @Test // DATACMNS-399 void queryPrefixShouldBeSupportedInRepositoryQueryMethods() { - PartTree tree = new PartTree("queryByFirstnameAndLastname", User.class); + var tree = new PartTree("queryByFirstnameAndLastname", User.class); Iterable parts = tree.getParts(); assertThat(parts).containsExactly(part("firstname"), part("lastname")); @@ -404,7 +404,7 @@ class PartTreeUnitTests { @Test // DATACMNS-1645 void searchPrefixShouldBeSupportedInRepositoryQueryMethods() { - PartTree tree = new PartTree("searchByFirstnameAndLastname", User.class); + var tree = new PartTree("searchByFirstnameAndLastname", User.class); Iterable parts = tree.getParts(); assertThat(parts).containsExactly(part("firstname"), part("lastname")); @@ -413,14 +413,14 @@ class PartTreeUnitTests { @Test // DATACMNS-303 void identifiesExtendedCountByCorrectly() { - PartTree tree = new PartTree("countUserByLastname", User.class); + var tree = new PartTree("countUserByLastname", User.class); assertThat(tree.isCountProjection()).isTrue(); } @Test // DATACMNS-303 void identifiesCountAndDistinctByCorrectly() { - PartTree tree = new PartTree("countDistinctUserByLastname", User.class); + var tree = new PartTree("countDistinctUserByLastname", User.class); assertThat(tree.isCountProjection()).isTrue(); assertThat(tree.isDistinct()).isTrue(); } @@ -453,7 +453,7 @@ class PartTreeUnitTests { @Test // DATACMNS-387 void buildsPartTreeFromEmptyPredicateCorrectly() { - PartTree tree = new PartTree("findAllByOrderByLastnameAsc", User.class); + var tree = new PartTree("findAllByOrderByLastnameAsc", User.class); assertThat(tree.getParts()).isEmpty(); assertThat(tree.getSort()).isEqualTo(Sort.by("lastname").ascending()); @@ -462,28 +462,28 @@ class PartTreeUnitTests { @Test // DATACMNS-448 void identifiesSimpleDeleteByCorrectly() { - PartTree tree = new PartTree("deleteByLastname", User.class); + var tree = new PartTree("deleteByLastname", User.class); assertThat(tree.isDelete()).isTrue(); } @Test // DATACMNS-448 void identifiesExtendedDeleteByCorrectly() { - PartTree tree = new PartTree("deleteUserByLastname", User.class); + var tree = new PartTree("deleteUserByLastname", User.class); assertThat(tree.isDelete()).isTrue(); } @Test // DATACMNS-448 void identifiesSimpleRemoveByCorrectly() { - PartTree tree = new PartTree("removeByLastname", User.class); + var tree = new PartTree("removeByLastname", User.class); assertThat(tree.isDelete()).isTrue(); } @Test // DATACMNS-448 void identifiesExtendedRemoveByCorrectly() { - PartTree tree = new PartTree("removeUserByLastname", User.class); + var tree = new PartTree("removeUserByLastname", User.class); assertThat(tree.isDelete()).isTrue(); } @@ -568,20 +568,20 @@ class PartTreeUnitTests { @Test // DATACMNS-581 void buildsPartTreeForNotContainingCorrectly() throws Exception { - PartTree tree = new PartTree("findAllByLegalNameNotContaining", Organization.class); + var tree = new PartTree("findAllByLegalNameNotContaining", Organization.class); assertPart(tree, new Part[] { new Part("legalNameNotContaining", Organization.class) }); } @Test // DATACMNS-750 void doesNotFailOnPropertiesContainingAKeyword() { - PartTree partTree = new PartTree("findBySomeInfoIn", Category.class); + var partTree = new PartTree("findBySomeInfoIn", Category.class); Iterable parts = partTree.getParts(); assertThat(parts).hasSize(1); - Part part = parts.iterator().next(); + var part = parts.iterator().next(); assertThat(part.getType()).isEqualTo(Type.IN); assertThat(part.getProperty()).isEqualTo(PropertyPath.from("someInfo", Category.class)); @@ -607,7 +607,7 @@ class PartTreeUnitTests { @Test // DATACMNS-1129 void emptyTreeDoesNotContainParts() { - PartTree tree = partTree(""); + var tree = partTree(""); assertThat(tree).isEmpty(); assertThat(tree.hasPredicate()).isFalse(); @@ -643,7 +643,7 @@ class PartTreeUnitTests { @Test // DATACMNS-1570 void allCapsInSubject() { - PartTree tree = new PartTree("findByURL", SpecialCapitalization.class); + var tree = new PartTree("findByURL", SpecialCapitalization.class); assertThat(tree).hasSize(1); } @@ -651,7 +651,7 @@ class PartTreeUnitTests { @Test // DATACMNS-1570 void allCapsInOrderBy() { - PartTree tree = new PartTree("findByOrderByURL", SpecialCapitalization.class); + var tree = new PartTree("findByOrderByURL", SpecialCapitalization.class); assertThat(tree.getSort()).hasSize(1); } @@ -663,7 +663,7 @@ class PartTreeUnitTests { private static void assertLimiting(String methodName, Class entityType, boolean limiting, Integer maxResults, boolean distinct) { - PartTree tree = new PartTree(methodName, entityType); + var tree = new PartTree(methodName, entityType); assertThat(tree.isLimiting()).isEqualTo(limiting); assertThat(tree.getMaxResults()).isEqualTo(maxResults); @@ -677,8 +677,8 @@ class PartTreeUnitTests { private static void assertType(Iterable sources, Type type, String property, int numberOfArguments, boolean parameterRequired) { - for (String source : sources) { - Part part = part(source); + for (var source : sources) { + var part = part(source); assertThat(part.getType()).isEqualTo(type); assertThat(part.getProperty()).isEqualTo(newProperty(property)); assertThat(part.getNumberOfArguments()).isEqualTo(numberOfArguments); @@ -695,8 +695,8 @@ class PartTreeUnitTests { } private static Part[] parts(String... part) { - Part[] parts = new Part[part.length]; - for (int i = 0; i < parts.length; i++) { + var parts = new Part[part.length]; + for (var i = 0; i < parts.length; i++) { parts[i] = part(part[i]); } return parts; @@ -708,9 +708,9 @@ class PartTreeUnitTests { private void assertPart(PartTree tree, Part[]... parts) { - Iterator orParts = tree.iterator(); + var orParts = tree.iterator(); - for (Part[] part : parts) { + for (var part : parts) { assertThat(orParts.hasNext()).isTrue(); assertPartsIn(orParts.next(), part); } @@ -720,11 +720,11 @@ class PartTreeUnitTests { private void assertPartsIn(OrPart orPart, Part[] part) { - Iterator partIterator = orPart.iterator(); + var partIterator = orPart.iterator(); - for (int k = 0; k < part.length; k++) { + for (var k = 0; k < part.length; k++) { assertThat(partIterator.hasNext()).as("Expected %d parts but have %d", part.length, k).isTrue(); - Part next = partIterator.next(); + var next = partIterator.next(); assertThat(part[k]).as("Expected %s but got %s!", part[k], next).isEqualTo(next); } @@ -734,7 +734,7 @@ class PartTreeUnitTests { private static Collection toCollection(Iterable iterable) { List result = new ArrayList<>(); - for (T element : iterable) { + for (var element : iterable) { result.add(element); } return result; diff --git a/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java b/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java index 100bd0804..f36056e9a 100644 --- a/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java +++ b/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java @@ -46,7 +46,7 @@ public class SampleConfiguration { RepositoryFactoryBeanSupport, Product, Long> productRepositoryFactory( ProductRepository productRepository) { - DummyRepositoryFactoryBean, Product, Long> factory = new DummyRepositoryFactoryBean<>( + var factory = new DummyRepositoryFactoryBean, Product, Long>( ProductRepository.class); factory.setCustomImplementation(productRepository); diff --git a/src/test/java/org/springframework/data/repository/support/AnnotationAttributeUnitTests.java b/src/test/java/org/springframework/data/repository/support/AnnotationAttributeUnitTests.java index da204f299..44652f4fc 100755 --- a/src/test/java/org/springframework/data/repository/support/AnnotationAttributeUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/AnnotationAttributeUnitTests.java @@ -42,7 +42,7 @@ class AnnotationAttributeUnitTests { @Test // DATACMNS-607 void looksUpAttributeFromAnnotatedElement() { - AnnotationAttribute attribute = new AnnotationAttribute(Component.class); + var attribute = new AnnotationAttribute(Component.class); assertThat(attribute.getValueFrom(Sample.class)).hasValue("foo"); } diff --git a/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java b/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java index 7fc7cfcdc..87befbd55 100755 --- a/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java @@ -19,7 +19,6 @@ import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; -import java.lang.reflect.Method; import java.util.Collection; import java.util.Date; import java.util.List; @@ -41,7 +40,6 @@ import org.springframework.data.repository.PagingAndSortingRepository; import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.DefaultRepositoryMetadata; import org.springframework.data.repository.query.Param; -import org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat.ISO; import org.springframework.format.support.DefaultFormattingConversionService; @@ -78,28 +76,28 @@ class CrudRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesSaveOnCrudRepository() throws Exception { - Method method = CrudRepository.class.getMethod("save", Object.class); + var method = CrudRepository.class.getMethod("save", Object.class); getInvokerFor(personRepository, expectInvocationOf(method)).invokeSave(new Person()); } @Test // DATACMNS-589 void invokesFindOneOnCrudRepository() throws Exception { - Method method = CrudRepository.class.getMethod("findById", Object.class); + var method = CrudRepository.class.getMethod("findById", Object.class); getInvokerFor(personRepository, expectInvocationOf(method)).invokeFindById(1L); } @Test // DATACMNS-589, DATAREST-216 void invokesDeleteOnCrudRepository() throws Exception { - Method method = CrudRepository.class.getMethod("deleteById", Object.class); + var method = CrudRepository.class.getMethod("deleteById", Object.class); getInvokerFor(personRepository, expectInvocationOf(method)).invokeDeleteById(1L); } @Test // DATACMNS-589 void invokesFindAllOnCrudRepository() throws Exception { - Method method = CrudRepository.class.getMethod("findAll"); + var method = CrudRepository.class.getMethod("findAll"); getInvokerFor(orderRepository, expectInvocationOf(method)).invokeFindAll(Pageable.unpaged()); getInvokerFor(orderRepository, expectInvocationOf(method)).invokeFindAll(Sort.unsorted()); @@ -108,9 +106,9 @@ class CrudRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesCustomFindAllTakingASort() throws Exception { - CrudWithFindAllWithSort repository = mock(CrudWithFindAllWithSort.class); + var repository = mock(CrudWithFindAllWithSort.class); - Method findAllWithSort = CrudWithFindAllWithSort.class.getMethod("findAll", Sort.class); + var findAllWithSort = CrudWithFindAllWithSort.class.getMethod("findAll", Sort.class); getInvokerFor(repository, expectInvocationOf(findAllWithSort)).invokeFindAll(Sort.unsorted()); getInvokerFor(repository, expectInvocationOf(findAllWithSort)).invokeFindAll(PageRequest.of(0, 10)); @@ -120,9 +118,9 @@ class CrudRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesCustomFindAllTakingAPageable() throws Exception { - CrudWithFindAllWithPageable repository = mock(CrudWithFindAllWithPageable.class); + var repository = mock(CrudWithFindAllWithPageable.class); - Method findAllWithPageable = CrudWithFindAllWithPageable.class.getMethod("findAll", Pageable.class); + var findAllWithPageable = CrudWithFindAllWithPageable.class.getMethod("findAll", Pageable.class); getInvokerFor(repository, expectInvocationOf(findAllWithPageable)).invokeFindAll(Pageable.unpaged()); getInvokerFor(repository, expectInvocationOf(findAllWithPageable)).invokeFindAll(PageRequest.of(0, 10)); @@ -131,7 +129,7 @@ class CrudRepositoryInvokerUnitTests { @SuppressWarnings({ "rawtypes", "unchecked" }) private static RepositoryInvoker getInvokerFor(Object repository, VerifyingMethodInterceptor interceptor) { - Object proxy = getVerifyingRepositoryProxy(repository, interceptor); + var proxy = getVerifyingRepositoryProxy(repository, interceptor); RepositoryMetadata metadata = new DefaultRepositoryMetadata(repository.getClass().getInterfaces()[0]); GenericConversionService conversionService = new DefaultFormattingConversionService(); diff --git a/src/test/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactoryIntegrationTests.java b/src/test/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactoryIntegrationTests.java index 87f35642c..95f2474eb 100755 --- a/src/test/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactoryIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactoryIntegrationTests.java @@ -52,10 +52,10 @@ class DefaultRepositoryInvokerFactoryIntegrationTests { void findOneShouldDelegateToAppropriateRepository() { // Mockito.reset(productRepository); - Product product = new Product(); + var product = new Product(); when(productRepository.findById(4711L)).thenReturn(product); - Optional invokeFindOne = factory.getInvokerFor(Product.class).invokeFindById(4711L); + var invokeFindOne = factory.getInvokerFor(Product.class).invokeFindById(4711L); assertThat(invokeFindOne).isEqualTo(Optional.of(product)); } @@ -72,7 +72,7 @@ class DefaultRepositoryInvokerFactoryIntegrationTests { @Test // DATACMNS-589 void returnsSameInvokerInstanceForSubsequentCalls() { - RepositoryInvoker invoker = factory.getInvokerFor(Product.class); + var invoker = factory.getInvokerFor(Product.class); assertThat(factory.getInvokerFor(Product.class)).isEqualTo(invoker); } @@ -80,7 +80,7 @@ class DefaultRepositoryInvokerFactoryIntegrationTests { @Test // DATACMNS-589 void createsReflectionRepositoryInvokerForRepositoryNotExtendingADedicatedBaseRepository() { - RepositoryInvoker invoker = factory.getInvokerFor(Product.class); + var invoker = factory.getInvokerFor(Product.class); assertThat(invoker)// .isInstanceOf(ReflectionRepositoryInvoker.class)// @@ -90,7 +90,7 @@ class DefaultRepositoryInvokerFactoryIntegrationTests { @Test // DATACMNS-589 void createsCrudRepositoryInvokerForRepositoryExtendingCrudRepository() { - RepositoryInvoker invoker = factory.getInvokerFor(User.class); + var invoker = factory.getInvokerFor(User.class); assertThat(invoker)// .isInstanceOf(CrudRepositoryInvoker.class)// diff --git a/src/test/java/org/springframework/data/repository/support/DomainClassConverterIntegrationTests.java b/src/test/java/org/springframework/data/repository/support/DomainClassConverterIntegrationTests.java index 8d87bacb5..62e83aae2 100755 --- a/src/test/java/org/springframework/data/repository/support/DomainClassConverterIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/support/DomainClassConverterIntegrationTests.java @@ -54,7 +54,7 @@ class DomainClassConverterIntegrationTests { @SuppressWarnings({ "rawtypes", "unchecked" }) void findsRepositoryFactories() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory() { + var beanFactory = new DefaultListableBeanFactory() { @Override protected BeanWrapper instantiateBean(String beanName, RootBeanDefinition mbd) { return beanName.equals("repoFactory") ? new BeanWrapperImpl(factory) : super.instantiateBean(beanName, mbd); @@ -69,11 +69,11 @@ class DomainClassConverterIntegrationTests { doReturn(PersonRepository.class).when(factory).getObjectType(); doReturn(information).when(factory).getRepositoryInformation(); - GenericApplicationContext context = new GenericApplicationContext(beanFactory); + var context = new GenericApplicationContext(beanFactory); context.refresh(); assertThat(context.getBeansOfType(RepositoryFactoryInformation.class).values()).hasSize(1); - DomainClassConverter converter = new DomainClassConverter(new DefaultConversionService()); + var converter = new DomainClassConverter(new DefaultConversionService()); converter.setApplicationContext(context); assertThat(converter.matches(TypeDescriptor.valueOf(String.class), TypeDescriptor.valueOf(Person.class))).isTrue(); diff --git a/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java b/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java index d8796f42a..c0ad992ef 100755 --- a/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*; import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; -import java.lang.reflect.Method; import java.util.Optional; import org.junit.jupiter.api.BeforeEach; @@ -29,6 +28,7 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; + import org.springframework.aop.framework.Advised; import org.springframework.aop.framework.AopProxyUtils; import org.springframework.beans.factory.support.BeanDefinitionBuilder; @@ -74,7 +74,7 @@ class DomainClassConverterUnitTests { @Test void matchFailsIfNoDaoAvailable() { - GenericApplicationContext ctx = new GenericApplicationContext(); + var ctx = new GenericApplicationContext(); ctx.refresh(); converter.setApplicationContext(ctx); assertMatches(false); @@ -113,15 +113,15 @@ class DomainClassConverterUnitTests { @Test void convertsStringToUserCorrectly() throws Exception { - ApplicationContext context = initContextWithRepo(); + var context = initContextWithRepo(); converter.setApplicationContext(context); doReturn(1L).when(service).convert(any(), eq(Long.class)); converter.convert("1", STRING_TYPE, USER_TYPE); - UserRepository bean = context.getBean(UserRepository.class); - UserRepository repo = (UserRepository) ((Advised) bean).getTargetSource().getTarget(); + var bean = context.getBean(UserRepository.class); + var repo = (UserRepository) ((Advised) bean).getTargetSource().getTarget(); verify(repo, times(1)).findById(1L); } @@ -129,8 +129,8 @@ class DomainClassConverterUnitTests { @Test // DATACMNS-133 void discoversFactoryAndRepoFromParentApplicationContext() { - ApplicationContext parent = initContextWithRepo(); - GenericApplicationContext context = new GenericApplicationContext(parent); + var parent = initContextWithRepo(); + var context = new GenericApplicationContext(parent); context.refresh(); when(service.canConvert(String.class, Long.class)).thenReturn(true); @@ -180,11 +180,11 @@ class DomainClassConverterUnitTests { assertMatches(false); @SuppressWarnings("rawtypes") - Optional toIdConverter = (Optional) ReflectionTestUtils.getField(converter, + var toIdConverter = (Optional) ReflectionTestUtils.getField(converter, "toIdConverter"); - Method method = Wrapper.class.getMethod("foo", User.class); - TypeDescriptor target = TypeDescriptor.nested(new MethodParameter(method, 0), 0); + var method = Wrapper.class.getMethod("foo", User.class); + var target = TypeDescriptor.nested(new MethodParameter(method, 0), 0); assertThat(toIdConverter).map(it -> it.matches(SUB_USER_TYPE, target)).hasValue(false); } @@ -202,14 +202,14 @@ class DomainClassConverterUnitTests { @Test // DATACMNS-1743 void returnsNullForFailedLookup() { - ApplicationContext context = initContextWithRepo(); + var context = initContextWithRepo(); converter.setApplicationContext(context); // Expect ID conversion doReturn(4711L).when(service).convert("4711", Long.class); // Configure aggregate lookup to fail - UserRepository users = context.getBean(UserRepository.class); + var users = context.getBean(UserRepository.class); users = (UserRepository) AopProxyUtils.getSingletonTarget(users); doReturn(Optional.empty()).when(users).findById(any()); @@ -218,13 +218,13 @@ class DomainClassConverterUnitTests { private ApplicationContext initContextWithRepo() { - BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(DummyRepositoryFactoryBean.class); + var builder = BeanDefinitionBuilder.rootBeanDefinition(DummyRepositoryFactoryBean.class); builder.addConstructorArgValue(UserRepository.class); - DefaultListableBeanFactory factory = new DefaultListableBeanFactory(); + var factory = new DefaultListableBeanFactory(); factory.registerBeanDefinition("provider", builder.getBeanDefinition()); - GenericApplicationContext ctx = new GenericApplicationContext(factory); + var ctx = new GenericApplicationContext(factory); ctx.refresh(); return ctx; } diff --git a/src/test/java/org/springframework/data/repository/support/MethodParametersUnitTests.java b/src/test/java/org/springframework/data/repository/support/MethodParametersUnitTests.java index bfe5a7226..6b3990d71 100755 --- a/src/test/java/org/springframework/data/repository/support/MethodParametersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/MethodParametersUnitTests.java @@ -17,13 +17,11 @@ package org.springframework.data.repository.support; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; -import java.util.List; import java.util.Optional; import org.junit.jupiter.api.Test; + import org.springframework.beans.factory.annotation.Qualifier; -import org.springframework.core.MethodParameter; /** * Unit tests for {@link MethodParameters}. @@ -35,8 +33,8 @@ class MethodParametersUnitTests { @Test void prefersAnnotatedParameterOverDiscovered() throws Exception { - Method method = Sample.class.getMethod("method", String.class, String.class, Object.class); - MethodParameters parameters = new MethodParameters(method, Optional.of(new AnnotationAttribute(Qualifier.class))); + var method = Sample.class.getMethod("method", String.class, String.class, Object.class); + var parameters = new MethodParameters(method, Optional.of(new AnnotationAttribute(Qualifier.class))); assertThat(parameters.getParameter("param")).isPresent(); assertThat(parameters.getParameter("foo")).isPresent(); @@ -49,10 +47,10 @@ class MethodParametersUnitTests { @Test void returnsParametersOfAGivenType() throws Exception { - Method method = Sample.class.getMethod("method", String.class, String.class, Object.class); - MethodParameters methodParameters = new MethodParameters(method); + var method = Sample.class.getMethod("method", String.class, String.class, Object.class); + var methodParameters = new MethodParameters(method); - List objectParameters = methodParameters.getParametersOfType(Object.class); + var objectParameters = methodParameters.getParametersOfType(Object.class); assertThat(objectParameters).hasSize(1); assertThat(objectParameters.get(0).getParameterIndex()).isEqualTo(2); diff --git a/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java b/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java index 60d671264..eb6571f0c 100755 --- a/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java @@ -19,8 +19,6 @@ import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; -import java.lang.reflect.Method; - import org.junit.jupiter.api.Test; import org.springframework.core.convert.support.GenericConversionService; @@ -31,7 +29,6 @@ import org.springframework.data.domain.Sort; import org.springframework.data.repository.PagingAndSortingRepository; import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.DefaultRepositoryMetadata; -import org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; import org.springframework.format.support.DefaultFormattingConversionService; /** @@ -44,8 +41,8 @@ class PaginginAndSortingRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindAllWithPageableByDefault() throws Exception { - Repository repository = mock(Repository.class); - Method method = PagingAndSortingRepository.class.getMethod("findAll", Pageable.class); + var repository = mock(Repository.class); + var method = PagingAndSortingRepository.class.getMethod("findAll", Pageable.class); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(PageRequest.of(0, 10)); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Pageable.unpaged()); @@ -54,8 +51,8 @@ class PaginginAndSortingRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindAllWithSortByDefault() throws Exception { - Repository repository = mock(Repository.class); - Method method = PagingAndSortingRepository.class.getMethod("findAll", Sort.class); + var repository = mock(Repository.class); + var method = PagingAndSortingRepository.class.getMethod("findAll", Sort.class); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Sort.by("foo")); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Sort.unsorted()); @@ -64,8 +61,8 @@ class PaginginAndSortingRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesRedeclaredFindAllWithPageable() throws Exception { - RepositoryWithRedeclaredFindAllWithPageable repository = mock(RepositoryWithRedeclaredFindAllWithPageable.class); - Method method = RepositoryWithRedeclaredFindAllWithPageable.class.getMethod("findAll", Pageable.class); + var repository = mock(RepositoryWithRedeclaredFindAllWithPageable.class); + var method = RepositoryWithRedeclaredFindAllWithPageable.class.getMethod("findAll", Pageable.class); when(repository.findAll(any(Pageable.class))).thenReturn(Page.empty()); @@ -76,8 +73,8 @@ class PaginginAndSortingRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesRedeclaredFindAllWithSort() throws Exception { - RepositoryWithRedeclaredFindAllWithSort repository = mock(RepositoryWithRedeclaredFindAllWithSort.class); - Method method = RepositoryWithRedeclaredFindAllWithSort.class.getMethod("findAll", Sort.class); + var repository = mock(RepositoryWithRedeclaredFindAllWithSort.class); + var method = RepositoryWithRedeclaredFindAllWithSort.class.getMethod("findAll", Sort.class); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Sort.by("foo")); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Sort.unsorted()); diff --git a/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java b/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java index c0699902d..df99f1fa8 100755 --- a/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java @@ -20,7 +20,6 @@ import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; -import java.lang.reflect.Method; import java.util.Arrays; import java.util.Collection; import java.util.Date; @@ -46,7 +45,6 @@ import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.core.support.DefaultRepositoryMetadata; import org.springframework.data.repository.query.Param; import org.springframework.data.repository.support.CrudRepositoryInvokerUnitTests.PersonRepository; -import org.springframework.data.repository.support.RepositoryInvocationTestUtils.*; import org.springframework.format.support.DefaultFormattingConversionService; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; @@ -69,8 +67,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesSaveMethodCorrectly() throws Exception { - ManualCrudRepository repository = mock(ManualCrudRepository.class); - Method method = ManualCrudRepository.class.getMethod("save", Domain.class); + var repository = mock(ManualCrudRepository.class); + var method = ManualCrudRepository.class.getMethod("save", Domain.class); when(repository.save(any())).then(AdditionalAnswers.returnsFirstArg()); @@ -80,8 +78,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindOneCorrectly() throws Exception { - ManualCrudRepository repository = mock(ManualCrudRepository.class); - Method method = ManualCrudRepository.class.getMethod("findById", Long.class); + var repository = mock(ManualCrudRepository.class); + var method = ManualCrudRepository.class.getMethod("findById", Long.class); getInvokerFor(repository, expectInvocationOf(method)).invokeFindById("1"); getInvokerFor(repository, expectInvocationOf(method)).invokeFindById(1L); @@ -90,11 +88,11 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesDeleteWithDomainCorrectly() throws Exception { - RepoWithDomainDeleteAndFindOne repository = mock(RepoWithDomainDeleteAndFindOne.class); + var repository = mock(RepoWithDomainDeleteAndFindOne.class); when(repository.findById(1L)).thenReturn(new Domain()); - Method findOneMethod = RepoWithDomainDeleteAndFindOne.class.getMethod("findById", Long.class); - Method deleteMethod = RepoWithDomainDeleteAndFindOne.class.getMethod("delete", Domain.class); + var findOneMethod = RepoWithDomainDeleteAndFindOne.class.getMethod("findById", Long.class); + var deleteMethod = RepoWithDomainDeleteAndFindOne.class.getMethod("delete", Domain.class); getInvokerFor(repository, expectInvocationOf(findOneMethod, deleteMethod)).invokeDeleteById(1L); } @@ -102,8 +100,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindAllWithoutParameterCorrectly() throws Exception { - Method method = ManualCrudRepository.class.getMethod("findAll"); - ManualCrudRepository repository = mock(ManualCrudRepository.class); + var method = ManualCrudRepository.class.getMethod("findAll"); + var repository = mock(ManualCrudRepository.class); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(Pageable.unpaged()); getInvokerFor(repository, expectInvocationOf(method)).invokeFindAll(PageRequest.of(0, 10)); @@ -114,8 +112,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindAllWithSortCorrectly() throws Exception { - Method method = RepoWithFindAllWithSort.class.getMethod("findAll", Sort.class); - RepoWithFindAllWithSort repository = mock(RepoWithFindAllWithSort.class); + var method = RepoWithFindAllWithSort.class.getMethod("findAll", Sort.class); + var repository = mock(RepoWithFindAllWithSort.class); when(repository.findAll(any())).thenReturn(Page.empty()); @@ -128,8 +126,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void invokesFindAllWithPageableCorrectly() throws Exception { - Method method = RepoWithFindAllWithPageable.class.getMethod("findAll", Pageable.class); - RepoWithFindAllWithPageable repository = mock(RepoWithFindAllWithPageable.class); + var method = RepoWithFindAllWithPageable.class.getMethod("findAll", Pageable.class); + var repository = mock(RepoWithFindAllWithPageable.class); when(repository.findAll(any())).thenReturn(Page.empty()); @@ -143,8 +141,8 @@ class ReflectionRepositoryInvokerUnitTests { MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.add("firstName", "John"); - Method method = PersonRepository.class.getMethod("findByFirstName", String.class, Pageable.class); - PersonRepository repository = mock(PersonRepository.class); + var method = PersonRepository.class.getMethod("findByFirstName", String.class, Pageable.class); + var repository = mock(PersonRepository.class); getInvokerFor(repository, expectInvocationOf(method)).invokeQueryMethod(method, parameters, Pageable.unpaged(), Sort.unsorted()); @@ -156,8 +154,8 @@ class ReflectionRepositoryInvokerUnitTests { MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.add("date", "2013-07-18T10:49:00.000+02:00"); - Method method = PersonRepository.class.getMethod("findByCreatedUsingISO8601Date", Date.class, Pageable.class); - PersonRepository repository = mock(PersonRepository.class); + var method = PersonRepository.class.getMethod("findByCreatedUsingISO8601Date", Date.class, Pageable.class); + var repository = mock(PersonRepository.class); getInvokerFor(repository, expectInvocationOf(method)).invokeQueryMethod(method, parameters, Pageable.unpaged(), Sort.unsorted()); @@ -166,8 +164,8 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATAREST-335, DATAREST-346, DATACMNS-589 void invokesOverriddenDeleteMethodCorrectly() throws Exception { - MyRepo repository = mock(MyRepo.class); - Method method = CustomRepo.class.getMethod("deleteById", Long.class); + var repository = mock(MyRepo.class); + var method = CustomRepo.class.getMethod("deleteById", Long.class); getInvokerFor(repository, expectInvocationOf(method)).invokeDeleteById("1"); } @@ -175,7 +173,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void rejectsInvocationOfMissingDeleteMethod() { - RepositoryInvoker invoker = getInvokerFor(mock(EmptyRepository.class)); + var invoker = getInvokerFor(mock(EmptyRepository.class)); assertThat(invoker.hasDeleteMethod()).isFalse(); assertThatIllegalStateException().isThrownBy(() -> invoker.invokeDeleteById(1L)); @@ -184,7 +182,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void rejectsInvocationOfMissingFindOneMethod() { - RepositoryInvoker invoker = getInvokerFor(mock(EmptyRepository.class)); + var invoker = getInvokerFor(mock(EmptyRepository.class)); assertThat(invoker.hasFindOneMethod()).isFalse(); assertThatIllegalStateException().isThrownBy(() -> invoker.invokeFindById(1L)); @@ -193,7 +191,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void rejectsInvocationOfMissingFindAllMethod() { - RepositoryInvoker invoker = getInvokerFor(mock(EmptyRepository.class)); + var invoker = getInvokerFor(mock(EmptyRepository.class)); assertThat(invoker.hasFindAllMethod()).isFalse(); assertThatIllegalStateException().isThrownBy(() -> invoker.invokeFindAll(Sort.unsorted())); @@ -202,7 +200,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 void rejectsInvocationOfMissingSaveMethod() { - RepositoryInvoker invoker = getInvokerFor(mock(EmptyRepository.class)); + var invoker = getInvokerFor(mock(EmptyRepository.class)); assertThat(invoker.hasSaveMethod()).isFalse(); assertThatIllegalStateException().isThrownBy(() -> invoker.invokeSave(new Object())); @@ -211,13 +209,13 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-647 void translatesCollectionRequestParametersCorrectly() throws Exception { - for (String[] ids : Arrays.asList(new String[] { "1,2" }, new String[] { "1", "2" })) { + for (var ids : Arrays.asList(new String[] { "1,2" }, new String[] { "1", "2" })) { MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.put("ids", Arrays.asList(ids)); - Method method = PersonRepository.class.getMethod("findByIdIn", Collection.class); - PersonRepository repository = mock(PersonRepository.class); + var method = PersonRepository.class.getMethod("findByIdIn", Collection.class); + var repository = mock(PersonRepository.class); getInvokerFor(repository, expectInvocationOf(method)).invokeQueryMethod(method, parameters, Pageable.unpaged(), Sort.unsorted()); @@ -227,12 +225,12 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-700 void failedParameterConversionCapturesContext() throws Exception { - RepositoryInvoker invoker = getInvokerFor(mock(SimpleRepository.class)); + var invoker = getInvokerFor(mock(SimpleRepository.class)); MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.add("value", "value"); - Method method = SimpleRepository.class.getMethod("findByClass", int.class); + var method = SimpleRepository.class.getMethod("findByClass", int.class); try { invoker.invokeQueryMethod(method, parameters, Pageable.unpaged(), Sort.unsorted()); @@ -247,12 +245,12 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-867 void convertsWrapperTypeToJdkOptional() { - GuavaRepository mock = mock(GuavaRepository.class); + var mock = mock(GuavaRepository.class); when(mock.findById(any())).thenReturn(com.google.common.base.Optional.of(new Domain())); - RepositoryInvoker invoker = getInvokerFor(mock); + var invoker = getInvokerFor(mock); - Optional invokeFindOne = invoker.invokeFindById(1L); + var invokeFindOne = invoker.invokeFindById(1L); assertThat(invokeFindOne).isPresent(); } @@ -260,12 +258,12 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-867 void wrapsSingleElementCollectionIntoOptional() throws Exception { - ManualCrudRepository mock = mock(ManualCrudRepository.class); + var mock = mock(ManualCrudRepository.class); when(mock.findAll()).thenReturn(Arrays.asList(new Domain())); - Method method = ManualCrudRepository.class.getMethod("findAll"); + var method = ManualCrudRepository.class.getMethod("findAll"); - Optional result = getInvokerFor(mock).invokeQueryMethod(method, new LinkedMultiValueMap<>(), + var result = getInvokerFor(mock).invokeQueryMethod(method, new LinkedMultiValueMap<>(), Pageable.unpaged(), Sort.unsorted()); assertThat(result).hasValueSatisfying(it -> { @@ -276,7 +274,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-1277 void invokesFindByIdBeforeDeletingOnOverride() { - DeleteByEntityOverrideSubRepository mock = mock(DeleteByEntityOverrideSubRepository.class); + var mock = mock(DeleteByEntityOverrideSubRepository.class); doReturn(Optional.of(new Domain())).when(mock).findById(any()); getInvokerFor(mock).invokeDeleteById(1L); @@ -288,7 +286,7 @@ class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-1277 void invokesDeleteByIdOnOverride() { - DeleteByIdOverrideSubRepository mock = mock(DeleteByIdOverrideSubRepository.class); + var mock = mock(DeleteByIdOverrideSubRepository.class); getInvokerFor(mock).invokeDeleteById(1L); diff --git a/src/test/java/org/springframework/data/repository/support/RepositoriesIntegrationTests.java b/src/test/java/org/springframework/data/repository/support/RepositoriesIntegrationTests.java index cef52e659..e7f7cb66b 100755 --- a/src/test/java/org/springframework/data/repository/support/RepositoriesIntegrationTests.java +++ b/src/test/java/org/springframework/data/repository/support/RepositoriesIntegrationTests.java @@ -50,7 +50,7 @@ class RepositoriesIntegrationTests { @Test // DATACMNS-376 void returnsPersistentEntityForProxiedClass() { - User user = mock(User.class); + var user = mock(User.class); assertThat(repositories.getPersistentEntity(user.getClass())).isNotNull(); } } diff --git a/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java b/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java index 47ede3201..b04fa7b16 100755 --- a/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java @@ -20,7 +20,6 @@ import static org.assertj.core.api.Assertions.*; import java.io.Serializable; import java.util.Collections; import java.util.List; -import java.util.Optional; import java.util.Set; import org.junit.jupiter.api.BeforeEach; @@ -29,6 +28,7 @@ import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; + import org.springframework.aop.framework.ProxyFactory; import org.springframework.beans.factory.support.AbstractBeanDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; @@ -66,7 +66,7 @@ class RepositoriesUnitTests { @BeforeEach void setUp() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); + var beanFactory = new DefaultListableBeanFactory(); beanFactory.registerBeanDefinition("addressRepository", getRepositoryBeanDefinition(AddressRepository.class)); beanFactory.registerBeanDefinition("personRepository", getRepositoryBeanDefinition(PersonRepository.class)); @@ -76,7 +76,7 @@ class RepositoriesUnitTests { private AbstractBeanDefinition getRepositoryBeanDefinition(Class repositoryInterface) { - BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(DummyRepositoryFactoryBean.class); + var builder = BeanDefinitionBuilder.rootBeanDefinition(DummyRepositoryFactoryBean.class); builder.addConstructorArgValue(repositoryInterface); return builder.getBeanDefinition(); @@ -85,7 +85,7 @@ class RepositoriesUnitTests { @Test void doesNotConsiderCrudRepositoriesOnly() { - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.hasRepositoryFor(Person.class)).isTrue(); assertThat(repositories.hasRepositoryFor(Address.class)).isTrue(); @@ -93,7 +93,7 @@ class RepositoriesUnitTests { @Test void doesNotFindInformationForNonManagedDomainClass() { - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.hasRepositoryFor(String.class)).isFalse(); assertThat(repositories.getRepositoryFor(String.class)).isNotPresent(); } @@ -106,7 +106,7 @@ class RepositoriesUnitTests { @Test // DATACMNS-256 void exposesPersistentEntityForDomainTypes() { - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.getPersistentEntity(Person.class)).isNotNull(); assertThat(repositories.getPersistentEntity(Address.class)).isNotNull(); } @@ -122,11 +122,11 @@ class RepositoriesUnitTests { RepositoryMetadata metadata = new CustomRepositoryMetadata(SampleRepository.class); RepositoryFactoryInformation information = new SampleRepoFactoryInformation<>(metadata); - GenericApplicationContext context = new GenericApplicationContext(); + var context = new GenericApplicationContext(); context.getBeanFactory().registerSingleton("foo", information); context.refresh(); - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.getRepositoryFor(Sample.class)).isNotNull(); assertThat(repositories.getRepositoryFor(SampleEntity.class)).isNotNull(); @@ -137,7 +137,7 @@ class RepositoriesUnitTests { @Test // DATACMNS-794 void exposesRepositoryFactoryInformationForRepository() { - Optional information = new Repositories(context) + var information = new Repositories(context) .getRepositoryInformation(PersonRepository.class); assertThat(information) @@ -147,15 +147,15 @@ class RepositoriesUnitTests { @Test // DATACMNS-1215 void exposesRepositoryForProxyType() { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setTarget(new Person()); factory.setProxyTargetClass(true); - Object proxy = factory.getProxy(); + var proxy = factory.getProxy(); assertThat(ClassUtils.isCglibProxy(proxy)).isTrue(); - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.hasRepositoryFor(proxy.getClass())).isTrue(); assertThat(repositories.getRepositoryFor(proxy.getClass())).isNotEmpty(); @@ -164,10 +164,10 @@ class RepositoriesUnitTests { @Test // DATACMNS-1448 void keepsPrimaryRepositoryInCaseOfMultipleOnes() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); + var beanFactory = new DefaultListableBeanFactory(); beanFactory.registerBeanDefinition("first", getRepositoryBeanDefinition(FirstRepository.class)); - AbstractBeanDefinition definition = getRepositoryBeanDefinition(PrimaryRepository.class); + var definition = getRepositoryBeanDefinition(PrimaryRepository.class); definition.setPrimary(true); beanFactory.registerBeanDefinition("primary", definition); @@ -176,7 +176,7 @@ class RepositoriesUnitTests { context = new GenericApplicationContext(beanFactory); context.refresh(); - Repositories repositories = new Repositories(beanFactory); + var repositories = new Repositories(beanFactory); assertThat(repositories.getRepositoryFor(SomeEntity.class)).hasValueSatisfying(it -> { assertThat(it).isInstanceOf(PrimaryRepository.class); @@ -186,10 +186,10 @@ class RepositoriesUnitTests { @Test // DATACMNS-1142 void keepsPrimaryRepositoryInCaseOfMultipleOnesIfContextIsNotAConfigurableListableBeanFactory() { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); + var beanFactory = new DefaultListableBeanFactory(); beanFactory.registerBeanDefinition("first", getRepositoryBeanDefinition(FirstRepository.class)); - AbstractBeanDefinition definition = getRepositoryBeanDefinition(PrimaryRepository.class); + var definition = getRepositoryBeanDefinition(PrimaryRepository.class); definition.setPrimary(true); beanFactory.registerBeanDefinition("primary", definition); @@ -198,7 +198,7 @@ class RepositoriesUnitTests { context = new GenericApplicationContext(beanFactory); context.refresh(); - Repositories repositories = new Repositories(context); + var repositories = new Repositories(context); assertThat(repositories.getRepositoryFor(SomeEntity.class)).hasValueSatisfying(it -> { assertThat(it).isInstanceOf(PrimaryRepository.class); @@ -208,7 +208,7 @@ class RepositoriesUnitTests { @Test // GH-2406 void exposesParentRepositoryForChildIfOnlyParentRepositoryIsRegistered() { - Repositories repositories = bootstrapRepositories(ParentRepository.class); + var repositories = bootstrapRepositories(ParentRepository.class); assertRepositoryAvailableFor(repositories, Child.class, ParentRepository.class); } @@ -216,7 +216,7 @@ class RepositoriesUnitTests { @Test // GH-2406 void usesChildRepositoryIfRegistered() { - Repositories repositories = bootstrapRepositories(ParentRepository.class, ChildRepository.class); + var repositories = bootstrapRepositories(ParentRepository.class, ChildRepository.class); assertRepositoryAvailableFor(repositories, Child.class, ChildRepository.class); } @@ -233,9 +233,9 @@ class RepositoriesUnitTests { private Repositories bootstrapRepositories(Class... repositoryInterfaces) { - DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory(); + var beanFactory = new DefaultListableBeanFactory(); - for (Class repositoryInterface : repositoryInterfaces) { + for (var repositoryInterface : repositoryInterfaces) { beanFactory.registerBeanDefinition(repositoryInterface.getName(), getRepositoryBeanDefinition(repositoryInterface)); } @@ -299,7 +299,7 @@ class RepositoriesUnitTests { super(repositoryInterface); - String domainType = super.getDomainType().getName().concat("Entity"); + var domainType = super.getDomainType().getName().concat("Entity"); try { this.domainType = ClassUtils.forName(domainType, CustomRepositoryMetadata.class.getClassLoader()); diff --git a/src/test/java/org/springframework/data/repository/support/RepositoryInvocationTestUtils.java b/src/test/java/org/springframework/data/repository/support/RepositoryInvocationTestUtils.java index 8d9eea6ba..f7a8a3f83 100644 --- a/src/test/java/org/springframework/data/repository/support/RepositoryInvocationTestUtils.java +++ b/src/test/java/org/springframework/data/repository/support/RepositoryInvocationTestUtils.java @@ -36,7 +36,7 @@ class RepositoryInvocationTestUtils { @SuppressWarnings("unchecked") static T getVerifyingRepositoryProxy(T target, VerifyingMethodInterceptor interceptor) { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setInterfaces(target.getClass().getInterfaces()); factory.setTarget(target); factory.addAdvice(interceptor); @@ -75,7 +75,7 @@ class RepositoryInvocationTestUtils { assertThat(methods).contains(invocation.getMethod()); } else { - Class type = invocation.getMethod().getDeclaringClass(); + var type = invocation.getMethod().getDeclaringClass(); assertThat(type).as("Expected methods invocation on %s but was invoked on %s!", expectedInvocationTarget, type) .isEqualTo(expectedInvocationTarget); diff --git a/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java b/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java index b7770d5f8..e80cc11cb 100755 --- a/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java @@ -30,7 +30,6 @@ import reactor.core.publisher.Mono; import scala.Option; import java.io.IOException; -import java.lang.reflect.Method; import java.util.Arrays; import java.util.Collections; import java.util.Iterator; @@ -43,13 +42,13 @@ import java.util.concurrent.Future; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.reactivestreams.Publisher; + import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.data.domain.Page; import org.springframework.data.domain.Slice; import org.springframework.data.util.ClassTypeInformation; import org.springframework.data.util.NullableWrapper; import org.springframework.data.util.Streamable; -import org.springframework.data.util.TypeInformation; import org.springframework.util.concurrent.ListenableFuture; import com.google.common.base.Optional; @@ -169,7 +168,7 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-1005 void registersAllowedPageabletypes() { - Set> allowedPageableTypes = QueryExecutionConverters.getAllowedPageableTypes(); + var allowedPageableTypes = QueryExecutionConverters.getAllowedPageableTypes(); assertThat(allowedPageableTypes).contains(Page.class, Slice.class, List.class, Seq.class); } @@ -191,7 +190,7 @@ class QueryExecutionConvertersUnitTests { assertThat(conversionService.canConvert(List.class, io.vavr.collection.Set.class)).isTrue(); assertThat(conversionService.canConvert(List.class, io.vavr.collection.Map.class)).isFalse(); - List integers = Arrays.asList(1, 2, 3); + var integers = Arrays.asList(1, 2, 3); io.vavr.collection.Traversable result = conversionService.convert(integers, io.vavr.collection.Traversable.class); @@ -207,7 +206,7 @@ class QueryExecutionConvertersUnitTests { assertThat(conversionService.canConvert(Set.class, io.vavr.collection.List.class)).isTrue(); assertThat(conversionService.canConvert(Set.class, io.vavr.collection.Map.class)).isFalse(); - Set integers = Collections.singleton(1); + var integers = Collections.singleton(1); io.vavr.collection.Traversable result = conversionService.convert(integers, io.vavr.collection.Traversable.class); @@ -223,7 +222,7 @@ class QueryExecutionConvertersUnitTests { assertThat(conversionService.canConvert(Map.class, io.vavr.collection.Set.class)).isFalse(); assertThat(conversionService.canConvert(Map.class, io.vavr.collection.List.class)).isFalse(); - Map map = Collections.singletonMap("key", "value"); + var map = Collections.singletonMap("key", "value"); io.vavr.collection.Traversable result = conversionService.convert(map, io.vavr.collection.Traversable.class); @@ -241,14 +240,14 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-1065 void vavrSeqIsASupportedPageableType() { - Set> allowedPageableTypes = QueryExecutionConverters.getAllowedPageableTypes(); + var allowedPageableTypes = QueryExecutionConverters.getAllowedPageableTypes(); assertThat(allowedPageableTypes).contains(io.vavr.collection.Seq.class); } @Test // DATAJPA-1258 void convertsJavaListsToVavrSet() { - List source = Collections.singletonList("foo"); + var source = Collections.singletonList("foo"); assertThat(conversionService.convert(source, io.vavr.collection.Set.class)) // .isInstanceOf(io.vavr.collection.Set.class); @@ -257,8 +256,8 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-1299 void unwrapsPages() throws Exception { - Method method = Sample.class.getMethod("pages"); - TypeInformation returnType = ClassTypeInformation.fromReturnTypeOf(method); + var method = Sample.class.getMethod("pages"); + var returnType = ClassTypeInformation.fromReturnTypeOf(method); assertThat(QueryExecutionConverters.unwrapWrapperTypes(returnType).getType()) .isEqualTo(String.class); @@ -267,7 +266,7 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-983 void exposesExecutionAdapterForJavaslangTry() throws Throwable { - Object result = getExecutionAdapter(Try.class).apply(() -> { + var result = getExecutionAdapter(Try.class).apply(() -> { throw new IOException("Some message!"); }); @@ -277,11 +276,11 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-983 void unwrapsDomainTypeFromJavaslangTryWrapper() throws Exception { - for (String methodName : Arrays.asList("tryMethod", "tryForSeqMethod")) { + for (var methodName : Arrays.asList("tryMethod", "tryForSeqMethod")) { - Method method = Sample.class.getMethod(methodName); + var method = Sample.class.getMethod(methodName); - TypeInformation type = QueryExecutionConverters + var type = QueryExecutionConverters .unwrapWrapperTypes(ClassTypeInformation.fromReturnTypeOf(method)); assertThat(type.getType()).isEqualTo(Sample.class); @@ -291,7 +290,7 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-983 void exposesExecutionAdapterForVavrTry() throws Throwable { - Object result = getExecutionAdapter(io.vavr.control.Try.class).apply(() -> { + var result = getExecutionAdapter(io.vavr.control.Try.class).apply(() -> { throw new IOException("Some message!"); }); @@ -301,11 +300,11 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-983 void unwrapsDomainTypeFromVavrTryWrapper() throws Exception { - for (String methodName : Arrays.asList("tryMethod", "tryForSeqMethod")) { + for (var methodName : Arrays.asList("tryMethod", "tryForSeqMethod")) { - Method method = Sample.class.getMethod(methodName); + var method = Sample.class.getMethod(methodName); - TypeInformation type = QueryExecutionConverters + var type = QueryExecutionConverters .unwrapWrapperTypes(ClassTypeInformation.fromReturnTypeOf(method)); assertThat(type.getType()).isEqualTo(Sample.class); @@ -338,7 +337,7 @@ class QueryExecutionConvertersUnitTests { @Test // DATACMNS-1484 void doesNotConvertCollectionToStreamableIfReturnTypeIsIterable() { - List source = Arrays.asList("1", "2"); + var source = Arrays.asList("1", "2"); assertThat(conversionService.convert(source, Iterable.class)).isSameAs(source); diff --git a/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java b/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java index ad3c6d123..4bf1540ee 100644 --- a/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/ReactiveWrapperConvertersUnitTests.java @@ -73,21 +73,21 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-836 void toWrapperShouldCastMonoToMono() { - Mono foo = Mono.just("foo"); + var foo = Mono.just("foo"); assertThat(ReactiveWrapperConverters.toWrapper(foo, Mono.class)).isSameAs(foo); } @Test // DATACMNS-836 void toWrapperShouldConvertMonoToFlux() { - Mono foo = Mono.just("foo"); + var foo = Mono.just("foo"); assertThat(ReactiveWrapperConverters.toWrapper(foo, Flux.class)).isInstanceOf(Flux.class); } @Test // DATACMNS-836 void shouldMapMono() { - Mono foo = Mono.just("foo"); + var foo = Mono.just("foo"); Mono map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.block()).isEqualTo(1L); } @@ -95,7 +95,7 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-836 void shouldMapFlux() { - Flux foo = Flux.just("foo"); + var foo = Flux.just("foo"); Flux map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.next().block()).isEqualTo(1L); } @@ -103,7 +103,7 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-1653 void shouldMapRxJava3Single() { - io.reactivex.rxjava3.core.Single foo = io.reactivex.rxjava3.core.Single.just("foo"); + var foo = io.reactivex.rxjava3.core.Single.just("foo"); io.reactivex.rxjava3.core.Single map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.blockingGet()).isEqualTo(1L); } @@ -111,7 +111,7 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-1653 void shouldMapRxJava3Maybe() { - io.reactivex.rxjava3.core.Maybe foo = io.reactivex.rxjava3.core.Maybe.just("foo"); + var foo = io.reactivex.rxjava3.core.Maybe.just("foo"); io.reactivex.rxjava3.core.Maybe map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.toSingle().blockingGet()).isEqualTo(1L); } @@ -119,7 +119,7 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-1653 void shouldMapRxJava3Observable() { - io.reactivex.rxjava3.core.Observable foo = io.reactivex.rxjava3.core.Observable.just("foo"); + var foo = io.reactivex.rxjava3.core.Observable.just("foo"); io.reactivex.rxjava3.core.Observable map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.blockingFirst()).isEqualTo(1L); } @@ -127,7 +127,7 @@ class ReactiveWrapperConvertersUnitTests { @Test // DATACMNS-1653 void shouldMapRxJava3Flowable() { - io.reactivex.rxjava3.core.Flowable foo = io.reactivex.rxjava3.core.Flowable.just("foo"); + var foo = io.reactivex.rxjava3.core.Flowable.just("foo"); io.reactivex.rxjava3.core.Flowable map = ReactiveWrapperConverters.map(foo, source -> 1L); assertThat(map.blockingFirst()).isEqualTo(1L); } @@ -136,7 +136,7 @@ class ReactiveWrapperConvertersUnitTests { @SuppressWarnings("deprecation") void shouldMapKotlinFlow() { - Flow flow = FlowKt.asFlow(new String[] { "foo" }); + var flow = FlowKt.asFlow(new String[] { "foo" }); Flow map = ReactiveWrapperConverters.map(flow, source -> 1L); StepVerifier.create(ReactiveFlowKt.asPublisher(map)).expectNext(1L).verifyComplete(); } diff --git a/src/test/java/org/springframework/data/spel/EvaluationContextExtensionInformationUnitTests.java b/src/test/java/org/springframework/data/spel/EvaluationContextExtensionInformationUnitTests.java index 3b4ad1073..5725a7913 100644 --- a/src/test/java/org/springframework/data/spel/EvaluationContextExtensionInformationUnitTests.java +++ b/src/test/java/org/springframework/data/spel/EvaluationContextExtensionInformationUnitTests.java @@ -30,10 +30,10 @@ class EvaluationContextExtensionInformationUnitTests { @Test // DATACMNS-1024 void supportsMethodOverloadsOnRoot() { - EvaluationContextExtensionInformation information = new EvaluationContextExtensionInformation( + var information = new EvaluationContextExtensionInformation( SampleExtension.class); - Optional target = Optional.of(new Object()); + var target = Optional.of(new Object()); information.getRootObjectInformation(target).getFunctions(target); } diff --git a/src/test/java/org/springframework/data/spel/ExpressionDependenciesUnitTests.java b/src/test/java/org/springframework/data/spel/ExpressionDependenciesUnitTests.java index 2f9485624..21a9689df 100644 --- a/src/test/java/org/springframework/data/spel/ExpressionDependenciesUnitTests.java +++ b/src/test/java/org/springframework/data/spel/ExpressionDependenciesUnitTests.java @@ -18,7 +18,7 @@ package org.springframework.data.spel; import static org.assertj.core.api.Assertions.*; import org.junit.jupiter.api.Test; -import org.springframework.expression.spel.SpelNode; + import org.springframework.expression.spel.standard.SpelExpression; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -35,12 +35,12 @@ class ExpressionDependenciesUnitTests { @Test // DATACMNS-1108 void shouldExtractDependencies() { - String expression = "hasRole('ROLE_ADMIN') ? '%' : principal.emailAddress"; + var expression = "hasRole('ROLE_ADMIN') ? '%' : principal.emailAddress"; - SpelExpression spelExpression = (SpelExpression) PARSER.parseExpression(expression); - SpelNode ast = spelExpression.getAST(); + var spelExpression = (SpelExpression) PARSER.parseExpression(expression); + var ast = spelExpression.getAST(); - ExpressionDependencies dependencies = ExpressionDependencies.discover(ast, true); + var dependencies = ExpressionDependencies.discover(ast, true); assertThat(dependencies).extracting(ExpressionDependencies.ExpressionDependency::getSymbol).containsOnly("hasRole", "principal"); @@ -49,12 +49,12 @@ class ExpressionDependenciesUnitTests { @Test // DATACMNS-1108 void shouldExtractDependenciesFromMethodCallArgs() { - String expression = "hasRole(principal.emailAddress)"; + var expression = "hasRole(principal.emailAddress)"; - SpelExpression spelExpression = (SpelExpression) PARSER.parseExpression(expression); - SpelNode ast = spelExpression.getAST(); + var spelExpression = (SpelExpression) PARSER.parseExpression(expression); + var ast = spelExpression.getAST(); - ExpressionDependencies dependencies = ExpressionDependencies.discover(ast, true); + var dependencies = ExpressionDependencies.discover(ast, true); assertThat(dependencies).extracting(ExpressionDependencies.ExpressionDependency::getSymbol).containsOnly("hasRole", "principal"); @@ -63,12 +63,12 @@ class ExpressionDependenciesUnitTests { @Test // DATACMNS-1108 void shouldExtractFirstMethodAsDependency() { - String expression = "hello().hasRole(principal.emailAddress, principal.somethingElse).somethingElse()"; + var expression = "hello().hasRole(principal.emailAddress, principal.somethingElse).somethingElse()"; - SpelExpression spelExpression = (SpelExpression) PARSER.parseExpression(expression); - SpelNode ast = spelExpression.getAST(); + var spelExpression = (SpelExpression) PARSER.parseExpression(expression); + var ast = spelExpression.getAST(); - ExpressionDependencies dependencies = ExpressionDependencies.discover(ast, true); + var dependencies = ExpressionDependencies.discover(ast, true); assertThat(dependencies).extracting(ExpressionDependencies.ExpressionDependency::getSymbol).containsOnly("hello", "principal"); @@ -77,12 +77,12 @@ class ExpressionDependenciesUnitTests { @Test // DATACMNS-1108 void shouldExtractAll() { - String expression = "hello().hasRole(principal.emailAddress, principal.somethingElse).somethingElse()"; + var expression = "hello().hasRole(principal.emailAddress, principal.somethingElse).somethingElse()"; - SpelExpression spelExpression = (SpelExpression) PARSER.parseExpression(expression); - SpelNode ast = spelExpression.getAST(); + var spelExpression = (SpelExpression) PARSER.parseExpression(expression); + var ast = spelExpression.getAST(); - ExpressionDependencies dependencies = ExpressionDependencies.discover(ast, false); + var dependencies = ExpressionDependencies.discover(ast, false); assertThat(dependencies).extracting(ExpressionDependencies.ExpressionDependency::getSymbol).containsOnly("hello", "hasRole", "principal", "emailAddress", "somethingElse"); @@ -91,8 +91,8 @@ class ExpressionDependenciesUnitTests { @Test // DATACMNS-1108 void shouldMergeDependencies() { - ExpressionDependencies left = ExpressionDependencies.discover(PARSER.parseExpression("hasRole('ROLE_ADMIN')")); - ExpressionDependencies right = ExpressionDependencies.discover(PARSER.parseExpression("principal.somethingElse")); + var left = ExpressionDependencies.discover(PARSER.parseExpression("hasRole('ROLE_ADMIN')")); + var right = ExpressionDependencies.discover(PARSER.parseExpression("principal.somethingElse")); assertThat(left.mergeWith(right)).extracting(ExpressionDependencies.ExpressionDependency::getSymbol) .containsOnly("hasRole", "principal"); diff --git a/src/test/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProviderUnitTests.java b/src/test/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProviderUnitTests.java index a540379b2..32c4a02b4 100644 --- a/src/test/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProviderUnitTests.java +++ b/src/test/java/org/springframework/data/spel/ReactiveExtensionAwareEvaluationContextProviderUnitTests.java @@ -26,9 +26,9 @@ import java.util.concurrent.atomic.AtomicInteger; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.data.spel.spi.EvaluationContextExtension; import org.springframework.data.spel.spi.ReactiveEvaluationContextExtension; -import org.springframework.expression.Expression; import org.springframework.expression.spel.SpelEvaluationException; import org.springframework.expression.spel.standard.SpelExpressionParser; @@ -51,10 +51,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void shouldResolveExtension() { - Expression expression = PARSER.parseExpression("hasRole('ROLE_ADMIN') ? '%' : principal.name"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("hasRole('ROLE_ADMIN') ? '%' : principal.name"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).map(expression::getValue) // @@ -69,10 +69,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // GH-2392 void shouldFilterImperativeExtensionCorrectly() { - Expression expression = PARSER.parseExpression("unknownMethod('FOO')"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("unknownMethod('FOO')"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Collections.singletonList(ExpressiveExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).as(StepVerifier::create) // @@ -82,10 +82,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // GH-2392 void shouldFilterReactiveExtensionCorrectly() { - Expression expression = PARSER.parseExpression("unknownMethod('FOO')"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("unknownMethod('FOO')"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Collections.singletonList(SampleReactiveExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).as(StepVerifier::create) // @@ -95,10 +95,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void shouldLoadGenericExtensionOnly() { - Expression expression = PARSER.parseExpression("isKnown('FOO')"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("isKnown('FOO')"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).map(expression::getValue) // @@ -113,10 +113,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void unknownMethodShouldLoadGenericExtensionOnly() { - Expression expression = PARSER.parseExpression("unknown('FOO')"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("unknown('FOO')"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).map(expression::getValue) // @@ -130,10 +130,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void genericReactiveExtensionIsAlwaysObtained() { - Expression expression = PARSER.parseExpression("1+1"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("1+1"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericReactiveExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).map(expression::getValue) // @@ -148,11 +148,11 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void doesNotLoadExtensionForDirectCall() { - Expression expression = PARSER.parseExpression( + var expression = PARSER.parseExpression( "T(org.springframework.data.spel.ReactiveExtensionAwareEvaluationContextProviderUnitTests.WithStaticRole).hasRole('ADMIN')"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericReactiveExtension.INSTANCE)); provider.getEvaluationContextLater(new Object[0], dependencies).map(expression::getValue) // @@ -167,10 +167,10 @@ class ReactiveExtensionAwareEvaluationContextProviderUnitTests { @Test // DATACMNS-1108 void loadsExtensionEvenWhenRootObjectMethodMatches() { - Expression expression = PARSER.parseExpression("principal.name"); - ExpressionDependencies dependencies = ExpressionDependencies.discover(expression); + var expression = PARSER.parseExpression("principal.name"); + var dependencies = ExpressionDependencies.discover(expression); - ReactiveExtensionAwareEvaluationContextProvider provider = new ReactiveExtensionAwareEvaluationContextProvider( + var provider = new ReactiveExtensionAwareEvaluationContextProvider( Arrays.asList(SampleReactiveExtension.INSTANCE, GenericReactiveExtension.INSTANCE)); provider.getEvaluationContextLater(new WithRole(), dependencies).map(expression::getValue) // diff --git a/src/test/java/org/springframework/data/spel/spi/FunctionUnitTests.java b/src/test/java/org/springframework/data/spel/spi/FunctionUnitTests.java index d4de24ca0..ec1e5b250 100644 --- a/src/test/java/org/springframework/data/spel/spi/FunctionUnitTests.java +++ b/src/test/java/org/springframework/data/spel/spi/FunctionUnitTests.java @@ -17,10 +17,10 @@ package org.springframework.data.spel.spi; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; import java.util.Arrays; import org.junit.jupiter.api.Test; + import org.springframework.core.convert.TypeDescriptor; import org.springframework.util.ReflectionUtils; @@ -34,11 +34,11 @@ class FunctionUnitTests { @Test // DATACMNS-1518 void detectsVarArgsOverload() { - Method method = ReflectionUtils.findMethod(Sample.class, "someMethod", String[].class); + var method = ReflectionUtils.findMethod(Sample.class, "someMethod", String[].class); - Function function = new Function(method, new Sample()); + var function = new Function(method, new Sample()); - TypeDescriptor stringDescriptor = TypeDescriptor.valueOf(String.class); + var stringDescriptor = TypeDescriptor.valueOf(String.class); assertThat(function.supports(Arrays.asList(stringDescriptor, stringDescriptor))).isTrue(); } @@ -46,11 +46,11 @@ class FunctionUnitTests { @Test // DATACMNS-1518 void detectsObjectVarArgsOverload() { - Method method = ReflectionUtils.findMethod(Sample.class, "onePlusObjectVarargs", String.class, Object[].class); + var method = ReflectionUtils.findMethod(Sample.class, "onePlusObjectVarargs", String.class, Object[].class); - Function function = new Function(method, new Sample()); + var function = new Function(method, new Sample()); - TypeDescriptor stringDescriptor = TypeDescriptor.valueOf(String.class); + var stringDescriptor = TypeDescriptor.valueOf(String.class); assertThat(function.supports(Arrays.asList(stringDescriptor, stringDescriptor))).isTrue(); } diff --git a/src/test/java/org/springframework/data/support/PageableExecutionUtilsUnitTests.java b/src/test/java/org/springframework/data/support/PageableExecutionUtilsUnitTests.java index 8d43abebc..292049f5f 100755 --- a/src/test/java/org/springframework/data/support/PageableExecutionUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/support/PageableExecutionUtilsUnitTests.java @@ -45,7 +45,7 @@ class PageableExecutionUtilsUnitTests { @Test // DATAMCNS-884 void firstPageRequestIsLessThanOneFullPageDoesNotRequireTotal() { - Page page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(0, 10), + var page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(0, 10), totalSupplierMock); assertThat(page).contains(1, 2, 3); @@ -56,7 +56,7 @@ class PageableExecutionUtilsUnitTests { @Test // DATAMCNS-884 void noPageableRequestDoesNotRequireTotal() { - Page page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), Pageable.unpaged(), totalSupplierMock); + var page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), Pageable.unpaged(), totalSupplierMock); assertThat(page).contains(1, 2, 3); assertThat(page.getTotalElements()).isEqualTo(3L); @@ -67,7 +67,7 @@ class PageableExecutionUtilsUnitTests { @Test // DATAMCNS-884 void subsequentPageRequestIsLessThanOneFullPageDoesNotRequireTotal() { - Page page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(5, 10), + var page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(5, 10), totalSupplierMock); assertThat(page).contains(1, 2, 3); @@ -81,7 +81,7 @@ class PageableExecutionUtilsUnitTests { doReturn(4L).when(totalSupplierMock).getAsLong(); - Page page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(0, 3), + var page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(0, 3), totalSupplierMock); assertThat(page).contains(1, 2, 3); @@ -95,7 +95,7 @@ class PageableExecutionUtilsUnitTests { doReturn(7L).when(totalSupplierMock).getAsLong(); - Page page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(1, 3), + var page = PageableExecutionUtils.getPage(Arrays.asList(1, 2, 3), PageRequest.of(1, 3), totalSupplierMock); assertThat(page).contains(1, 2, 3); diff --git a/src/test/java/org/springframework/data/support/PersistableIsNewStrategyUnitTests.java b/src/test/java/org/springframework/data/support/PersistableIsNewStrategyUnitTests.java index 4c7dfa16a..d9cbbb7fa 100755 --- a/src/test/java/org/springframework/data/support/PersistableIsNewStrategyUnitTests.java +++ b/src/test/java/org/springframework/data/support/PersistableIsNewStrategyUnitTests.java @@ -32,7 +32,7 @@ class PersistableIsNewStrategyUnitTests { @Test void invokesPersistableIsNewForTest() { - PersistableEntity entity = new PersistableEntity(); + var entity = new PersistableEntity(); assertThat(strategy.isNew(entity)).isTrue(); entity.isNew = false; diff --git a/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java b/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java index c12646b4e..44a055030 100755 --- a/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java +++ b/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java @@ -43,7 +43,7 @@ class ChainedTransactionManagerTests { @Test void shouldCompleteSuccessfully() { - TestPlatformTransactionManager transactionManager = createNonFailingTransactionManager("single"); + var transactionManager = createNonFailingTransactionManager("single"); setupTransactionManagers(transactionManager); createAndCommitTransaction(); @@ -64,8 +64,8 @@ class ChainedTransactionManagerTests { @Test void shouldCommitAllRegisteredTransactionManagers() { - TestPlatformTransactionManager first = createNonFailingTransactionManager("first"); - TestPlatformTransactionManager second = createNonFailingTransactionManager("second"); + var first = createNonFailingTransactionManager("first"); + var second = createNonFailingTransactionManager("second"); setupTransactionManagers(first, second); createAndCommitTransaction(); @@ -77,8 +77,8 @@ class ChainedTransactionManagerTests { @Test void shouldCommitInReverseOrder() { - TestPlatformTransactionManager first = createNonFailingTransactionManager("first"); - TestPlatformTransactionManager second = createNonFailingTransactionManager("second"); + var first = createNonFailingTransactionManager("first"); + var second = createNonFailingTransactionManager("second"); setupTransactionManagers(first, second); createAndCommitTransaction(); @@ -100,8 +100,8 @@ class ChainedTransactionManagerTests { @Test void shouldRollbackAllTransactionManagers() { - TestPlatformTransactionManager first = createNonFailingTransactionManager("first"); - TestPlatformTransactionManager second = createNonFailingTransactionManager("second"); + var first = createNonFailingTransactionManager("first"); + var second = createNonFailingTransactionManager("second"); setupTransactionManagers(first, second); createAndRollbackTransaction(); @@ -125,12 +125,12 @@ class ChainedTransactionManagerTests { } private void createAndRollbackTransaction() { - MultiTransactionStatus transaction = tm.getTransaction(new DefaultTransactionDefinition()); + var transaction = tm.getTransaction(new DefaultTransactionDefinition()); tm.rollback(transaction); } private void createAndCommitTransaction() { - MultiTransactionStatus transaction = tm.getTransaction(new DefaultTransactionDefinition()); + var transaction = tm.getTransaction(new DefaultTransactionDefinition()); tm.commit(transaction); } diff --git a/src/test/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReaderUnitTests.java b/src/test/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReaderUnitTests.java index f23ac4f3a..f2c822e7c 100644 --- a/src/test/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReaderUnitTests.java +++ b/src/test/java/org/springframework/data/type/classreading/DefaultMethodsMetadataReaderUnitTests.java @@ -18,9 +18,9 @@ package org.springframework.data.type.classreading; import static org.assertj.core.api.Assertions.*; import java.io.IOException; -import java.util.Iterator; import org.junit.jupiter.api.Test; + import org.springframework.core.type.MethodMetadata; import org.springframework.data.type.MethodsMetadata; @@ -34,11 +34,11 @@ class DefaultMethodsMetadataReaderUnitTests { @Test // DATACMNS-1206 void shouldReadClassMethods() throws IOException { - MethodsMetadata metadata = getMethodsMetadata(Foo.class); + var metadata = getMethodsMetadata(Foo.class); assertThat(metadata.getMethods()).hasSize(3); - Iterator iterator = metadata.getMethods().iterator(); + var iterator = metadata.getMethods().iterator(); assertThat(iterator.next().getMethodName()).isEqualTo("one"); assertThat(iterator.next().getMethodName()).isEqualTo("two"); @@ -48,11 +48,11 @@ class DefaultMethodsMetadataReaderUnitTests { @Test // DATACMNS-1206 void shouldReadInterfaceMethods() throws IOException { - MethodsMetadata metadata = getMethodsMetadata(Baz.class); + var metadata = getMethodsMetadata(Baz.class); assertThat(metadata.getMethods()).hasSize(3); - Iterator iterator = metadata.getMethods().iterator(); + var iterator = metadata.getMethods().iterator(); assertThat(iterator.next().getMethodName()).isEqualTo("one"); assertThat(iterator.next().getMethodName()).isEqualTo("two"); @@ -62,8 +62,8 @@ class DefaultMethodsMetadataReaderUnitTests { @Test // DATACMNS-1206 void shouldMetadata() throws IOException { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(); - MethodsMetadataReader metadataReader = factory.getMetadataReader(getClass().getName()); + var factory = new MethodsMetadataReaderFactory(); + var metadataReader = factory.getMetadataReader(getClass().getName()); assertThat(metadataReader.getClassMetadata()).isNotNull(); assertThat(metadataReader.getAnnotationMetadata()).isNotNull(); @@ -72,7 +72,7 @@ class DefaultMethodsMetadataReaderUnitTests { @Test // DATACMNS-1206 void shouldReturnMethodMetadataByName() throws IOException { - MethodsMetadata metadata = getMethodsMetadata(Foo.class); + var metadata = getMethodsMetadata(Foo.class); assertThat(metadata.getMethods()).hasSize(3); @@ -82,8 +82,8 @@ class DefaultMethodsMetadataReaderUnitTests { private static MethodsMetadata getMethodsMetadata(Class classToIntrospect) throws IOException { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(); - MethodsMetadataReader metadataReader = factory.getMetadataReader(classToIntrospect.getName()); + var factory = new MethodsMetadataReaderFactory(); + var metadataReader = factory.getMetadataReader(classToIntrospect.getName()); return metadataReader.getMethodsMetadata(); } diff --git a/src/test/java/org/springframework/data/type/classreading/MethodsMetadataReaderFactoryUnitTests.java b/src/test/java/org/springframework/data/type/classreading/MethodsMetadataReaderFactoryUnitTests.java index 6ad456d1f..8d732a767 100644 --- a/src/test/java/org/springframework/data/type/classreading/MethodsMetadataReaderFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/type/classreading/MethodsMetadataReaderFactoryUnitTests.java @@ -36,8 +36,8 @@ class MethodsMetadataReaderFactoryUnitTests { @Test // DATACMNS-1206 void shouldReadFromDefaultClassLoader() throws IOException { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(); - MethodsMetadataReader reader = factory.getMetadataReader(getClass().getName()); + var factory = new MethodsMetadataReaderFactory(); + var reader = factory.getMetadataReader(getClass().getName()); assertThat(reader).isNotNull(); } @@ -45,8 +45,8 @@ class MethodsMetadataReaderFactoryUnitTests { @Test // DATACMNS-1206 void shouldReadFromClassLoader() throws IOException { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(getClass().getClassLoader()); - MethodsMetadataReader reader = factory.getMetadataReader(getClass().getName()); + var factory = new MethodsMetadataReaderFactory(getClass().getClassLoader()); + var reader = factory.getMetadataReader(getClass().getName()); assertThat(reader).isNotNull(); } @@ -54,7 +54,7 @@ class MethodsMetadataReaderFactoryUnitTests { @Test // DATACMNS-1206 void shouldNotFindClass() { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(new URLClassLoader(new URL[0], null)); + var factory = new MethodsMetadataReaderFactory(new URLClassLoader(new URL[0], null)); assertThatThrownBy(() -> factory.getMetadataReader(getClass().getName())).isInstanceOf(FileNotFoundException.class); } @@ -62,8 +62,8 @@ class MethodsMetadataReaderFactoryUnitTests { @Test // DATACMNS-1206 void shouldReadFromResourceLoader() throws IOException { - MethodsMetadataReaderFactory factory = new MethodsMetadataReaderFactory(new DefaultResourceLoader()); - MethodsMetadataReader reader = factory.getMetadataReader(getClass().getName()); + var factory = new MethodsMetadataReaderFactory(new DefaultResourceLoader()); + var reader = factory.getMetadataReader(getClass().getName()); assertThat(reader).isNotNull(); } diff --git a/src/test/java/org/springframework/data/util/AnnotatedTypeScannerUnitTests.java b/src/test/java/org/springframework/data/util/AnnotatedTypeScannerUnitTests.java index 3a3d25b71..b658176f7 100755 --- a/src/test/java/org/springframework/data/util/AnnotatedTypeScannerUnitTests.java +++ b/src/test/java/org/springframework/data/util/AnnotatedTypeScannerUnitTests.java @@ -30,7 +30,7 @@ public class AnnotatedTypeScannerUnitTests { @Test // DATACMNS-452 public void findsAnnotatedTypes() { - AnnotatedTypeScanner scanner = new AnnotatedTypeScanner(Persistent.class); + var scanner = new AnnotatedTypeScanner(Persistent.class); assertThat(scanner.findTypes(AnnotatedTypeScanner.class.getPackage().getName())).contains(Type.class); } diff --git a/src/test/java/org/springframework/data/util/AnnotationDetectionFieldCallbackUnitTests.java b/src/test/java/org/springframework/data/util/AnnotationDetectionFieldCallbackUnitTests.java index 037f8b2e2..3f3f50e82 100755 --- a/src/test/java/org/springframework/data/util/AnnotationDetectionFieldCallbackUnitTests.java +++ b/src/test/java/org/springframework/data/util/AnnotationDetectionFieldCallbackUnitTests.java @@ -38,7 +38,7 @@ public class AnnotationDetectionFieldCallbackUnitTests { @Test // DATACMNS-616 public void looksUpValueFromPrivateField() { - AnnotationDetectionFieldCallback callback = new AnnotationDetectionFieldCallback(Autowired.class); + var callback = new AnnotationDetectionFieldCallback(Autowired.class); ReflectionUtils.doWithFields(Sample.class, callback); assertThat(callback.getType()).isEqualTo(String.class); @@ -48,7 +48,7 @@ public class AnnotationDetectionFieldCallbackUnitTests { @Test // DATACMNS-616 public void returnsNullForObjectNotContainingAFieldWithTheConfiguredAnnotation() { - AnnotationDetectionFieldCallback callback = new AnnotationDetectionFieldCallback(Autowired.class); + var callback = new AnnotationDetectionFieldCallback(Autowired.class); ReflectionUtils.doWithFields(Empty.class, callback); assertThat(callback.getType()).isNull(); diff --git a/src/test/java/org/springframework/data/util/AnnotationDetectionMethodCallbackUnitTests.java b/src/test/java/org/springframework/data/util/AnnotationDetectionMethodCallbackUnitTests.java index 243e39bc9..43c371b05 100755 --- a/src/test/java/org/springframework/data/util/AnnotationDetectionMethodCallbackUnitTests.java +++ b/src/test/java/org/springframework/data/util/AnnotationDetectionMethodCallbackUnitTests.java @@ -33,7 +33,7 @@ public class AnnotationDetectionMethodCallbackUnitTests { @Test // DATACMNS-452 public void findsMethodWithAnnotation() throws Exception { - AnnotationDetectionMethodCallback callback = new AnnotationDetectionMethodCallback<>(Value.class); + var callback = new AnnotationDetectionMethodCallback(Value.class); ReflectionUtils.doWithMethods(Sample.class, callback); assertThat(callback.hasFoundAnnotation()).isTrue(); @@ -45,7 +45,7 @@ public class AnnotationDetectionMethodCallbackUnitTests { @Test // DATACMNS-452 public void detectsAmbiguousAnnotations() { - AnnotationDetectionMethodCallback callback = new AnnotationDetectionMethodCallback<>(Value.class, true); + var callback = new AnnotationDetectionMethodCallback(Value.class, true); assertThatIllegalStateException() // .isThrownBy(() -> ReflectionUtils.doWithMethods(Multiple.class, callback)) // diff --git a/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java b/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java index f8487b778..f38db8b14 100755 --- a/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java +++ b/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java @@ -20,7 +20,6 @@ import static org.springframework.data.util.ClassTypeInformation.from; import io.vavr.collection.Traversable; -import java.lang.reflect.Method; import java.util.Calendar; import java.util.Collection; import java.util.List; @@ -36,6 +35,7 @@ import org.springframework.aop.TargetSource; import org.springframework.aop.framework.Advised; import org.springframework.aop.framework.AopConfigException; import org.springframework.aop.framework.ProxyFactory; + import org.springframework.data.mapping.Person; import org.springframework.lang.Nullable; @@ -54,7 +54,7 @@ public class ClassTypeInformationUnitTests { assertThat(discoverer.getType()).isEqualTo(ConcreteType.class); - TypeInformation content = discoverer.getProperty("content"); + var content = discoverer.getProperty("content"); assertThat(content.getType()).isEqualTo(String.class); assertThat(content.getComponentType()).isNull(); @@ -109,13 +109,13 @@ public class ClassTypeInformationUnitTests { TypeInformation information = from(StringCollectionContainer.class); - TypeInformation array = information.getProperty("array"); + var array = information.getProperty("array"); assertThat(array.getComponentType().getType()).isEqualTo(String.class); assertThat(array.getType()).isEqualTo(String[].class); assertThat(array.getType().isArray()).isTrue(); - TypeInformation foo = information.getProperty("foo"); + var foo = information.getProperty("foo"); assertThat(foo.getType()).isEqualTo(Collection[].class); assertThat(foo.getComponentType()).satisfies(it -> { @@ -123,7 +123,7 @@ public class ClassTypeInformationUnitTests { assertThat(it.getComponentType()).satisfies(nested -> assertThat(nested.getType()).isEqualTo(String.class)); }); - TypeInformation rawSet = information.getProperty("rawSet"); + var rawSet = information.getProperty("rawSet"); assertThat(rawSet.getType()).isEqualTo(Set.class); assertThat(rawSet.getComponentType().getType()).isEqualTo(Object.class); @@ -135,12 +135,12 @@ public class ClassTypeInformationUnitTests { TypeInformation information = from(StringMapContainer.class); - TypeInformation genericMap = information.getProperty("genericMap"); + var genericMap = information.getProperty("genericMap"); assertThat(genericMap.getType()).isEqualTo(Map.class); assertThat(genericMap.getMapValueType().getType()).isEqualTo(String.class); - TypeInformation map = information.getProperty("map"); + var map = information.getProperty("map"); assertThat(map.getType()).isEqualTo(Map.class); assertThat(map.getMapValueType().getType()).isEqualTo(Calendar.class); @@ -176,12 +176,12 @@ public class ClassTypeInformationUnitTests { TypeInformation information = from(ClassWithWildCardBound.class); - TypeInformation wildcard = information.getProperty("wildcard"); + var wildcard = information.getProperty("wildcard"); assertThat(wildcard.isCollectionLike()).isTrue(); assertThat(wildcard.getComponentType().getType()).isEqualTo(String.class); - TypeInformation complexWildcard = information.getProperty("complexWildcard"); + var complexWildcard = information.getProperty("complexWildcard"); assertThat(complexWildcard.isCollectionLike()).isTrue(); assertThat(complexWildcard.getComponentType()).satisfies(it -> { @@ -194,9 +194,9 @@ public class ClassTypeInformationUnitTests { public void resolvesTypeParametersCorrectly() { TypeInformation information = from(ConcreteType.class); - TypeInformation superTypeInformation = information.getSuperTypeInformation(GenericType.class); + var superTypeInformation = information.getSuperTypeInformation(GenericType.class); - List> parameters = superTypeInformation.getTypeArguments(); + var parameters = superTypeInformation.getTypeArguments(); assertThat(parameters).hasSize(2); assertThat(parameters.get(0).getType()).isEqualTo(String.class); assertThat(parameters.get(1).getType()).isEqualTo(Object.class); @@ -206,9 +206,9 @@ public class ClassTypeInformationUnitTests { public void resolvesNestedInheritedTypeParameters() { TypeInformation information = from(SecondExtension.class); - TypeInformation superTypeInformation = information.getSuperTypeInformation(Base.class); + var superTypeInformation = information.getSuperTypeInformation(Base.class); - List> parameters = superTypeInformation.getTypeArguments(); + var parameters = superTypeInformation.getTypeArguments(); assertThat(parameters).hasSize(1); assertThat(parameters.get(0).getType()).isEqualTo(String.class); } @@ -217,9 +217,9 @@ public class ClassTypeInformationUnitTests { public void discoveresMethodParameterTypesCorrectly() throws Exception { TypeInformation information = from(SecondExtension.class); - Method method = SecondExtension.class.getMethod("foo", Base.class); - List> informations = information.getParameterTypes(method); - TypeInformation returnTypeInformation = information.getReturnType(method); + var method = SecondExtension.class.getMethod("foo", Base.class); + var informations = information.getParameterTypes(method); + var returnTypeInformation = information.getReturnType(method); assertThat(informations).hasSize(1); assertThat(informations.get(0).getType()).isEqualTo(Base.class); @@ -230,9 +230,9 @@ public class ClassTypeInformationUnitTests { public void discoversImplementationBindingCorrectlyForString() throws Exception { TypeInformation information = from(TypedClient.class); - Method method = TypedClient.class.getMethod("stringMethod", GenericInterface.class); + var method = TypedClient.class.getMethod("stringMethod", GenericInterface.class); - TypeInformation parameterType = information.getParameterTypes(method).get(0); + var parameterType = information.getParameterTypes(method).get(0); TypeInformation stringInfo = from(StringImplementation.class); assertThat(parameterType.isAssignableFrom(stringInfo)).isTrue(); @@ -246,9 +246,9 @@ public class ClassTypeInformationUnitTests { public void discoversImplementationBindingCorrectlyForLong() throws Exception { TypeInformation information = from(TypedClient.class); - Method method = TypedClient.class.getMethod("longMethod", GenericInterface.class); + var method = TypedClient.class.getMethod("longMethod", GenericInterface.class); - TypeInformation parameterType = information.getParameterTypes(method).get(0); + var parameterType = information.getParameterTypes(method).get(0); assertThat(parameterType.isAssignableFrom(from(StringImplementation.class))).isFalse(); assertThat(parameterType.isAssignableFrom(from(LongImplementation.class))).isTrue(); @@ -260,9 +260,9 @@ public class ClassTypeInformationUnitTests { public void discoversImplementationBindingCorrectlyForNumber() throws Exception { TypeInformation information = from(TypedClient.class); - Method method = TypedClient.class.getMethod("boundToNumberMethod", GenericInterface.class); + var method = TypedClient.class.getMethod("boundToNumberMethod", GenericInterface.class); - TypeInformation parameterType = information.getParameterTypes(method).get(0); + var parameterType = information.getParameterTypes(method).get(0); assertThat(parameterType.isAssignableFrom(from(StringImplementation.class))).isFalse(); assertThat(parameterType.isAssignableFrom(from(LongImplementation.class))).isTrue(); @@ -303,7 +303,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-440 public void detectsSpecialMapAsMapValueType() { - TypeInformation seriously = from(SuperGenerics.class).getProperty("seriously"); + var seriously = from(SuperGenerics.class).getProperty("seriously"); // Type assertThat(seriously.getType()).isEqualTo(SortedMap.class); @@ -329,7 +329,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-590 public void resolvesNestedGenericsToConcreteType() { - ClassTypeInformation rootType = from(ConcreteRoot.class); + var rootType = from(ConcreteRoot.class); assertThat(rootType.getProperty("subs").getActualType().getProperty("subSub").getType())// .isEqualTo(ConcreteSubSub.class); @@ -346,7 +346,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-783, DATACMNS-853 public void specializesTypeUsingTypeVariableContext() { - ClassTypeInformation root = from(Foo.class); + var root = from(Foo.class); assertThat(root.getProperty("abstractBar").specialize(from(Bar.class)))// .satisfies(it -> { @@ -359,7 +359,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-783 public void usesTargetTypeDirectlyIfNoGenericsAreInvolved() { - ClassTypeInformation root = ClassTypeInformation.from(Foo.class); + var root = ClassTypeInformation.from(Foo.class); ClassTypeInformation from = ClassTypeInformation.from(Bar.class); assertThat(root.getProperty("object").specialize(from)).isEqualTo(from); @@ -368,9 +368,9 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-855 public void specializedTypeEqualsAndHashCode() { - ClassTypeInformation root = ClassTypeInformation.from(Foo.class); + var root = ClassTypeInformation.from(Foo.class); - TypeInformation abstractBar = root.getProperty("abstractBar"); + var abstractBar = root.getProperty("abstractBar"); assertThat(Pair.of(abstractBar.specialize(ClassTypeInformation.from(Bar.class)), abstractBar.specialize(ClassTypeInformation.from(Bar.class)))).satisfies(pair -> { @@ -383,7 +383,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-896 public void prefersLocalTypeMappingOverNestedWithSameGenericType() { - ClassTypeInformation information = from(Concrete.class); + var information = from(Concrete.class); assertThat(information.getProperty("field").getType()).isEqualTo(Nested.class); } @@ -391,7 +391,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-940 public void detectsVavrTraversableComponentType() { - ClassTypeInformation information = from(SampleTraversable.class); + var information = from(SampleTraversable.class); assertThat(information.getComponentType().getType()).isAssignableFrom(Integer.class); } @@ -399,7 +399,7 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-940 public void detectsVavrMapComponentAndValueType() { - ClassTypeInformation information = from(SampleMap.class); + var information = from(SampleMap.class); assertThat(information.getComponentType().getType()).isAssignableFrom(String.class); @@ -409,10 +409,10 @@ public class ClassTypeInformationUnitTests { @Test // DATACMNS-1138 public void usesTargetTypeForWildcardedBaseOnSpecialization() { - ClassTypeInformation wrapper = from(WildcardedWrapper.class); - ClassTypeInformation concrete = from(SomeConcrete.class); + var wrapper = from(WildcardedWrapper.class); + var concrete = from(SomeConcrete.class); - TypeInformation property = wrapper.getRequiredProperty("wildcarded"); + var property = wrapper.getRequiredProperty("wildcarded"); assertThat(property.specialize(concrete)).isEqualTo(concrete); } @@ -423,10 +423,10 @@ public class ClassTypeInformationUnitTests { TypeInformation storeEvent = ClassTypeInformation.from(StoredEvent.class); assertThat(storeEvent.getType()).isEqualTo(StoredEvent.class); - TypeInformation domainEvent = (TypeInformation) storeEvent.getProperty("event"); + var domainEvent = (TypeInformation) storeEvent.getProperty("event"); assertThat(domainEvent.getType()).isEqualTo(DomainEvent.class); - TypeInformation specialized = domainEvent + var specialized = domainEvent .specialize(ClassTypeInformation.from(OfferCreated.class)); assertThat(specialized.getType()).isEqualTo(OfferCreated.class); @@ -440,10 +440,10 @@ public class ClassTypeInformationUnitTests { TypeInformation storeEvent = ClassTypeInformation.from(StoredEvent.class); assertThat(storeEvent.getType()).isEqualTo(StoredEvent.class); - TypeInformation domainEvent = (TypeInformation) storeEvent.getProperty("event"); + var domainEvent = (TypeInformation) storeEvent.getProperty("event"); assertThat(domainEvent.getType()).isEqualTo(DomainEvent.class); - TypeInformation specialized = domainEvent + var specialized = domainEvent .specialize(ClassTypeInformation.from(GenericEvent.class)); assertThat(specialized.getType()).isEqualTo(GenericEvent.class); @@ -456,21 +456,21 @@ public class ClassTypeInformationUnitTests { TypeInformation information = from(TypeWithTypedMap.class); - TypeInformation typedMap = information.getProperty("typedMap"); + var typedMap = information.getProperty("typedMap"); assertThat(typedMap.getType()).isEqualTo(StringKeyMap.class); assertThat(typedMap.isMap()).isTrue(); assertThat(typedMap.getRequiredComponentType().getType()).isEqualTo(String.class); assertThat(typedMap.getMapValueType().getType()).isEqualTo(Long.class); - TypeInformation longMultiValueMap = information.getProperty("longMultiValueMap"); + var longMultiValueMap = information.getProperty("longMultiValueMap"); assertThat(longMultiValueMap.getType()).isEqualTo(MultiValueMap.class); assertThat(longMultiValueMap.getRequiredComponentType().getType()).isEqualTo(String.class); assertThat(longMultiValueMap.getMapValueType().getType()).isEqualTo(List.class); assertThat(longMultiValueMap.getMapValueType().getRequiredActualType().getType()).isEqualTo(Long.class); - TypeInformation justMap = information.getProperty("justMap"); + var justMap = information.getProperty("justMap"); assertThat(justMap.getType()).isEqualTo(Map.class); assertThat(justMap.getRequiredComponentType().getType()).isEqualTo(String.class); diff --git a/src/test/java/org/springframework/data/util/CloseableIteratorUnitTests.java b/src/test/java/org/springframework/data/util/CloseableIteratorUnitTests.java index e7b2c3509..a26c11f2e 100644 --- a/src/test/java/org/springframework/data/util/CloseableIteratorUnitTests.java +++ b/src/test/java/org/springframework/data/util/CloseableIteratorUnitTests.java @@ -19,10 +19,8 @@ import static org.assertj.core.api.Assertions.*; import java.util.Arrays; import java.util.Iterator; -import java.util.List; import java.util.stream.Collectors; import java.util.stream.IntStream; -import java.util.stream.Stream; import org.junit.jupiter.api.Test; @@ -36,9 +34,9 @@ class CloseableIteratorUnitTests { @Test // DATACMNS-1637 void shouldCreateStream() { - CloseableIteratorImpl iterator = new CloseableIteratorImpl<>(Arrays.asList("1", "2", "3").iterator()); + var iterator = new CloseableIteratorImpl(Arrays.asList("1", "2", "3").iterator()); - List collection = iterator.stream().map(it -> "hello " + it).collect(Collectors.toList()); + var collection = iterator.stream().map(it -> "hello " + it).collect(Collectors.toList()); assertThat(collection).contains("hello 1", "hello 2", "hello 3"); assertThat(iterator.closed).isFalse(); @@ -67,9 +65,9 @@ class CloseableIteratorUnitTests { @Test // DATACMNS-1637 void closeStreamShouldCloseIterator() { - CloseableIteratorImpl iterator = new CloseableIteratorImpl<>(Arrays.asList("1", "2", "3").iterator()); + var iterator = new CloseableIteratorImpl(Arrays.asList("1", "2", "3").iterator()); - try (Stream stream = iterator.stream()) { + try (var stream = iterator.stream()) { assertThat(stream.findFirst()).hasValue("1"); } diff --git a/src/test/java/org/springframework/data/util/DataCmns511Tests.java b/src/test/java/org/springframework/data/util/DataCmns511Tests.java index ac14fafd0..3cc174329 100755 --- a/src/test/java/org/springframework/data/util/DataCmns511Tests.java +++ b/src/test/java/org/springframework/data/util/DataCmns511Tests.java @@ -33,12 +33,12 @@ public class DataCmns511Tests { @Test // DATACMNS-511 public void detectsEqualTypeVariableTypeInformationInstances() { - TypeInformation createdBy = ClassTypeInformation.from(AbstractRole.class).getProperty("createdBy"); + var createdBy = ClassTypeInformation.from(AbstractRole.class).getProperty("createdBy"); assertThat(createdBy.getProperty("roles").getActualType().getProperty("createdBy"))// .satisfies(second -> { - TypeInformation third = second.getProperty("roles").getActualType().getProperty("createdBy"); + var third = second.getProperty("roles").getActualType().getProperty("createdBy"); assertThat(third).isEqualTo(second); assertThat(third.hashCode()).isEqualTo(second.hashCode()); diff --git a/src/test/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapperUnitTests.java b/src/test/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapperUnitTests.java index 324e38ac1..6fb9cbf5c 100755 --- a/src/test/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapperUnitTests.java +++ b/src/test/java/org/springframework/data/util/DirectFieldAccessFallbackBeanWrapperUnitTests.java @@ -32,7 +32,7 @@ public class DirectFieldAccessFallbackBeanWrapperUnitTests { @Test // DATACMNS-452 public void usesFieldAccessForReadIfNoAccessorCanBeFound() { - Sample sample = new Sample(); + var sample = new Sample(); sample.firstname = "Dave"; BeanWrapper wrapper = new DirectFieldAccessFallbackBeanWrapper(sample); @@ -43,7 +43,7 @@ public class DirectFieldAccessFallbackBeanWrapperUnitTests { @Test // DATACMNS-452 public void usesFieldAccessForWriteIfNoAccessorCanBeFound() { - Sample sample = new Sample(); + var sample = new Sample(); BeanWrapper wrapper = new DirectFieldAccessFallbackBeanWrapper(sample); wrapper.setPropertyValue("firstname", "Dave"); diff --git a/src/test/java/org/springframework/data/util/KotlinReflectionUtilsUnitTests.java b/src/test/java/org/springframework/data/util/KotlinReflectionUtilsUnitTests.java index 3ca6b3926..104968dc7 100644 --- a/src/test/java/org/springframework/data/util/KotlinReflectionUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/util/KotlinReflectionUtilsUnitTests.java @@ -77,9 +77,9 @@ public class KotlinReflectionUtilsUnitTests { void runTest(String testName) throws ClassNotFoundException, InstantiationException, IllegalAccessException, NoSuchMethodException { - KotlinExcludingURLClassLoader classLoader = new KotlinExcludingURLClassLoader( + var classLoader = new KotlinExcludingURLClassLoader( ((URLClassLoader) getClass().getClassLoader()).getURLs()); - Class testClass = ClassUtils.forName(getClass().getName(), classLoader); + var testClass = ClassUtils.forName(getClass().getName(), classLoader); ReflectionUtils.invokeMethod(testClass.getMethod(testName), testClass.newInstance()); } diff --git a/src/test/java/org/springframework/data/util/LazyUnitTests.java b/src/test/java/org/springframework/data/util/LazyUnitTests.java index 87b2c69e3..7af0f1fc5 100755 --- a/src/test/java/org/springframework/data/util/LazyUnitTests.java +++ b/src/test/java/org/springframework/data/util/LazyUnitTests.java @@ -49,7 +49,7 @@ class LazyUnitTests { @Test void createsLazyFromValue() { - Object value = new Object(); + var value = new Object(); assertThat(Lazy.of(value).get()).isEqualTo(value); } @@ -57,9 +57,9 @@ class LazyUnitTests { @Test void returnsLastValueInChain() { - Object reference = new Object(); + var reference = new Object(); - Object foo = Lazy.of(() -> null) // + var foo = Lazy.of(() -> null) // .or(() -> null) // .or(() -> reference) // .get(); @@ -70,7 +70,7 @@ class LazyUnitTests { @Test void returnsCachedInstanceOnMultipleAccesses() { - Lazy lazy = Lazy.of(() -> new Object()); + var lazy = Lazy.of(() -> new Object()); assertThat(lazy.get()).isSameAs(lazy.get()); } @@ -95,10 +95,10 @@ class LazyUnitTests { @Test void ignoresElseIfValuePresent() { - Object first = new Object(); - Object second = new Object(); + var first = new Object(); + var second = new Object(); - Lazy nonEmpty = Lazy.of(() -> first); + var nonEmpty = Lazy.of(() -> first); assertThat(nonEmpty.orElse(second)).isEqualTo(first); assertThat(nonEmpty.or(second).get()).isEqualTo(first); @@ -108,9 +108,9 @@ class LazyUnitTests { @Test void returnsElseValue() { - Object reference = new Object(); + var reference = new Object(); - Lazy empty = Lazy.of(() -> null); + var empty = Lazy.of(() -> null); assertThat(empty.orElse(reference)).isEqualTo(reference); assertThat(empty.or(reference).get()).isEqualTo(reference); diff --git a/src/test/java/org/springframework/data/util/MethodInvocationRecorderUnitTests.java b/src/test/java/org/springframework/data/util/MethodInvocationRecorderUnitTests.java index cd7363f20..4b2ef162a 100644 --- a/src/test/java/org/springframework/data/util/MethodInvocationRecorderUnitTests.java +++ b/src/test/java/org/springframework/data/util/MethodInvocationRecorderUnitTests.java @@ -44,7 +44,7 @@ class MethodInvocationRecorderUnitTests { @Test // DATACMNS-1449 void createsPropertyPathForSimpleMethodReference() { - Recorded wrapper = recorder.record(Foo::getBar); + var wrapper = recorder.record(Foo::getBar); assertThat(wrapper.getPropertyPath()).hasValue("bar"); } @@ -52,7 +52,7 @@ class MethodInvocationRecorderUnitTests { @Test // DATACMNS-1449 void createsPropertyPathForNestedMethodReference() { - Recorded wrapper = recorder.record(Foo::getBar).record(Bar::getFooBar); + var wrapper = recorder.record(Foo::getBar).record(Bar::getFooBar); assertThat(wrapper.getPropertyPath()).hasValue("bar.fooBar"); } @@ -60,7 +60,7 @@ class MethodInvocationRecorderUnitTests { @Test // DATACMNS-1449 void createsPropertyPathForNestedCall() { - Recorded wrapper = recorder.record((Foo source) -> source.getBar().getFooBar()); + var wrapper = recorder.record((Foo source) -> source.getBar().getFooBar()); assertThat(wrapper.getPropertyPath()).hasValue("bar.fooBar"); } @@ -68,7 +68,7 @@ class MethodInvocationRecorderUnitTests { @Test // DATACMNS-1449 void usesCustomPropertyNamingStrategy() { - Recorded recorded = MethodInvocationRecorder.forProxyOf(Foo.class).record(Foo::getBar); + var recorded = MethodInvocationRecorder.forProxyOf(Foo.class).record(Foo::getBar); assertThat(recorded.getPropertyPath(method -> method.getName())).hasValue("getBar"); } @@ -81,7 +81,7 @@ class MethodInvocationRecorderUnitTests { @Test // DATACMNS-1449 void recordsInvocationOnInterface() { - Recorded recorder = MethodInvocationRecorder.forProxyOf(Sample.class); + var recorder = MethodInvocationRecorder.forProxyOf(Sample.class); assertThat(recorder.record(Sample::getName).getPropertyPath()).hasValue("name"); } diff --git a/src/test/java/org/springframework/data/util/NullableUtilsUnitTests.java b/src/test/java/org/springframework/data/util/NullableUtilsUnitTests.java index c41e47f96..f14da330e 100644 --- a/src/test/java/org/springframework/data/util/NullableUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/util/NullableUtilsUnitTests.java @@ -18,9 +18,9 @@ package org.springframework.data.util; import static org.assertj.core.api.Assertions.*; import java.lang.annotation.ElementType; -import java.lang.reflect.Method; import org.junit.jupiter.api.Test; + import org.springframework.core.MethodParameter; import org.springframework.data.util.nonnull.NullableAnnotatedType; import org.springframework.data.util.nonnull.packagelevel.NonNullOnPackage; @@ -39,7 +39,7 @@ class NullableUtilsUnitTests { @Test // DATACMNS-1154 void packageAnnotatedShouldConsiderNonNullAnnotation() { - Method method = ReflectionUtils.findMethod(NonNullOnPackage.class, "nonNullReturnValue"); + var method = ReflectionUtils.findMethod(NonNullOnPackage.class, "nonNullReturnValue"); assertThat(NullableUtils.isNonNull(method, ElementType.METHOD)).isTrue(); assertThat(NullableUtils.isNonNull(method, ElementType.PARAMETER)).isTrue(); @@ -84,10 +84,10 @@ class NullableUtilsUnitTests { @Test // DATACMNS-1154 void shouldConsiderParametersWithoutNullableAnnotation() { - Method method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "nonNullMethod", String.class); + var method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "nonNullMethod", String.class); - MethodParameter returnValue = new MethodParameter(method, -1); - MethodParameter parameter = new MethodParameter(method, 0); + var returnValue = new MethodParameter(method, -1); + var parameter = new MethodParameter(method, 0); assertThat(NullableUtils.isExplicitNullable(returnValue)).isFalse(); assertThat(NullableUtils.isExplicitNullable(parameter)).isFalse(); @@ -96,7 +96,7 @@ class NullableUtilsUnitTests { @Test // DATACMNS-1154 void shouldConsiderParametersNullableAnnotation() { - Method method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "nullableReturn"); + var method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "nullableReturn"); assertThat(NullableUtils.isExplicitNullable(new MethodParameter(method, -1))).isTrue(); } @@ -104,7 +104,7 @@ class NullableUtilsUnitTests { @Test // DATACMNS-1154 void shouldConsiderParametersJsr305NullableMetaAnnotation() { - Method method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "jsr305NullableReturn"); + var method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "jsr305NullableReturn"); assertThat(NullableUtils.isExplicitNullable(new MethodParameter(method, -1))).isTrue(); } @@ -112,7 +112,7 @@ class NullableUtilsUnitTests { @Test // DATACMNS-1154 void shouldConsiderParametersJsr305NonnullAnnotation() { - Method method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "jsr305NullableReturnWhen"); + var method = ReflectionUtils.findMethod(NullableAnnotatedType.class, "jsr305NullableReturnWhen"); assertThat(NullableUtils.isExplicitNullable(new MethodParameter(method, -1))).isTrue(); } diff --git a/src/test/java/org/springframework/data/util/PairUnitTests.java b/src/test/java/org/springframework/data/util/PairUnitTests.java index 14049934c..a32198bc2 100755 --- a/src/test/java/org/springframework/data/util/PairUnitTests.java +++ b/src/test/java/org/springframework/data/util/PairUnitTests.java @@ -29,7 +29,7 @@ class PairUnitTests { @Test // DATACMNS-790 void setsUpSimpleInstance() { - Pair pair = Pair.of(1, 2); + var pair = Pair.of(1, 2); assertThat(pair.getFirst()).isEqualTo(1); assertThat(pair.getSecond()).isEqualTo(2); @@ -48,8 +48,8 @@ class PairUnitTests { @Test // DATACMNS-790 void hasCorrectEquals() { - Pair first = Pair.of(1, 2); - Pair second = Pair.of(1, 2); + var first = Pair.of(1, 2); + var second = Pair.of(1, 2); assertThat(first).isEqualTo(first); assertThat(first).isEqualTo(second); @@ -59,9 +59,9 @@ class PairUnitTests { @Test // DATACMNS-790 void hasCorrectHashCode() { - Pair first = Pair.of(1, 2); - Pair second = Pair.of(1, 2); - Pair third = Pair.of(2, 2); + var first = Pair.of(1, 2); + var second = Pair.of(1, 2); + var third = Pair.of(2, 2); assertThat(first.hashCode()).isEqualTo(second.hashCode()); assertThat(first.hashCode()).isNotEqualTo(third.hashCode()); diff --git a/src/test/java/org/springframework/data/util/ParameterTypesUnitTests.java b/src/test/java/org/springframework/data/util/ParameterTypesUnitTests.java index ad3634579..f44b022dc 100644 --- a/src/test/java/org/springframework/data/util/ParameterTypesUnitTests.java +++ b/src/test/java/org/springframework/data/util/ParameterTypesUnitTests.java @@ -17,10 +17,8 @@ package org.springframework.data.util; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; -import java.util.List; - import org.junit.jupiter.api.Test; + import org.springframework.util.ReflectionUtils; /** @@ -33,9 +31,9 @@ public class ParameterTypesUnitTests { @Test // DATACMNS-1518 public void detectsDirectMatch() { - Method method = ReflectionUtils.findMethod(Sample.class, "twoStrings", String.class, String.class); + var method = ReflectionUtils.findMethod(Sample.class, "twoStrings", String.class, String.class); - ParameterTypes types = ParameterTypes.of(String.class, String.class); + var types = ParameterTypes.of(String.class, String.class); assertThat(types.areValidFor(method)).isTrue(); assertThat(types.exactlyMatchParametersOf(method)).isTrue(); @@ -44,9 +42,9 @@ public class ParameterTypesUnitTests { @Test // DATACMNS-1518 public void supportsSimpleVarArg() { - Method method = ReflectionUtils.findMethod(Sample.class, "stringPlusStringVarArg", String.class, String[].class); + var method = ReflectionUtils.findMethod(Sample.class, "stringPlusStringVarArg", String.class, String[].class); - ParameterTypes types = ParameterTypes.of(String.class, String.class); + var types = ParameterTypes.of(String.class, String.class); assertThat(types.areValidFor(method)).isTrue(); assertThat(types.exactlyMatchParametersOf(method)).isFalse(); @@ -55,9 +53,9 @@ public class ParameterTypesUnitTests { @Test // DATACMNS-1518 public void supportsTrailingObjectVarArg() { - Method method = ReflectionUtils.findMethod(Sample.class, "stringPlusObjectVarArg", String.class, Object[].class); + var method = ReflectionUtils.findMethod(Sample.class, "stringPlusObjectVarArg", String.class, Object[].class); - ParameterTypes types = ParameterTypes.of(String.class, String.class); + var types = ParameterTypes.of(String.class, String.class); assertThat(types.areValidFor(method)).isTrue(); assertThat(types.exactlyMatchParametersOf(method)).isFalse(); @@ -66,9 +64,9 @@ public class ParameterTypesUnitTests { @Test // DATACMNS-1518 public void supportsObjectVarArg() { - Method method = ReflectionUtils.findMethod(Sample.class, "objectVarArg", Object[].class); + var method = ReflectionUtils.findMethod(Sample.class, "objectVarArg", Object[].class); - ParameterTypes types = ParameterTypes.of(String.class, String.class); + var types = ParameterTypes.of(String.class, String.class); assertThat(types.areValidFor(method)).isTrue(); assertThat(types.exactlyMatchParametersOf(method)).isFalse(); @@ -78,9 +76,9 @@ public class ParameterTypesUnitTests { @Test // DATACMNS-1518 public void doesNotAddNonObjectVarArgsForParents() { - ParameterTypes types = ParameterTypes.of(String.class, String.class, Integer.class, Integer.class); + var types = ParameterTypes.of(String.class, String.class, Integer.class, Integer.class); - List alternatives = types.getAllAlternatives(); + var alternatives = types.getAllAlternatives(); assertThat(alternatives).hasSize(6); diff --git a/src/test/java/org/springframework/data/util/ParameterizedTypeInformationUnitTests.java b/src/test/java/org/springframework/data/util/ParameterizedTypeInformationUnitTests.java index 8b728e412..100a5a524 100755 --- a/src/test/java/org/springframework/data/util/ParameterizedTypeInformationUnitTests.java +++ b/src/test/java/org/springframework/data/util/ParameterizedTypeInformationUnitTests.java @@ -55,11 +55,11 @@ class ParameterizedTypeInformationUnitTests { @Test void considersTypeInformationsWithDifferingParentsNotEqual() { - TypeDiscoverer stringParent = new TypeDiscoverer<>(String.class, emptyMap()); - TypeDiscoverer objectParent = new TypeDiscoverer<>(Object.class, emptyMap()); + var stringParent = new TypeDiscoverer(String.class, emptyMap()); + var objectParent = new TypeDiscoverer(Object.class, emptyMap()); - ParameterizedTypeInformation first = new ParameterizedTypeInformation<>(one, stringParent); - ParameterizedTypeInformation second = new ParameterizedTypeInformation<>(one, objectParent); + var first = new ParameterizedTypeInformation(one, stringParent); + var second = new ParameterizedTypeInformation(one, objectParent); assertThat(first).isNotEqualTo(second); } @@ -67,10 +67,10 @@ class ParameterizedTypeInformationUnitTests { @Test void considersTypeInformationsWithSameParentsNotEqual() { - TypeDiscoverer stringParent = new TypeDiscoverer<>(String.class, emptyMap()); + var stringParent = new TypeDiscoverer(String.class, emptyMap()); - ParameterizedTypeInformation first = new ParameterizedTypeInformation<>(one, stringParent); - ParameterizedTypeInformation second = new ParameterizedTypeInformation<>(one, stringParent); + var first = new ParameterizedTypeInformation(one, stringParent); + var second = new ParameterizedTypeInformation(one, stringParent); assertThat(first.equals(second)).isTrue(); } @@ -79,8 +79,8 @@ class ParameterizedTypeInformationUnitTests { void resolvesMapValueTypeCorrectly() { TypeInformation type = ClassTypeInformation.from(Foo.class); - TypeInformation propertyType = type.getProperty("param"); - TypeInformation value = propertyType.getProperty("value"); + var propertyType = type.getProperty("param"); + var value = propertyType.getProperty("value"); assertThat(value.getType()).isEqualTo(String.class); assertThat(propertyType.getMapValueType().getType()).isEqualTo(String.class); @@ -102,8 +102,8 @@ class ParameterizedTypeInformationUnitTests { @Test // DATACMNS-485 void hashCodeShouldBeConsistentWithEqualsForResolvedTypes() { - TypeInformation first = from(First.class).getProperty("property"); - TypeInformation second = from(Second.class).getProperty("property"); + var first = from(First.class).getProperty("property"); + var second = from(Second.class).getProperty("property"); assertThat(first).isEqualTo(second); @@ -114,7 +114,7 @@ class ParameterizedTypeInformationUnitTests { @Test // DATACMNS-485 void getActualTypeShouldNotUnwrapParameterizedTypes() { - TypeInformation type = from(First.class).getProperty("property"); + var type = from(First.class).getProperty("property"); assertThat(type.getActualType()).isEqualTo(type); } @@ -131,7 +131,7 @@ class ParameterizedTypeInformationUnitTests { @Test // DATACMNS-899 void returnsEmptyOptionalMapValueTypeForNonMapProperties() { - TypeInformation typeInformation = ClassTypeInformation.from(Bar.class).getProperty("param"); + var typeInformation = ClassTypeInformation.from(Bar.class).getProperty("param"); assertThat(typeInformation).isInstanceOf(ParameterizedTypeInformation.class); assertThat(typeInformation.getMapValueType()).isNull(); } @@ -139,9 +139,9 @@ class ParameterizedTypeInformationUnitTests { @Test // DATACMNS-1135 void prefersLocalGenericsDeclarationOverParentBound() { - ClassTypeInformation candidate = ClassTypeInformation.from(Candidate.class); + var candidate = ClassTypeInformation.from(Candidate.class); - TypeInformation componentType = candidate.getRequiredProperty("experiences.values").getRequiredComponentType(); + var componentType = candidate.getRequiredProperty("experiences.values").getRequiredComponentType(); componentType = componentType.getRequiredProperty("responsibilities.values").getRequiredComponentType(); assertThat(componentType.getType()).isEqualTo(Responsibility.class); @@ -150,7 +150,7 @@ class ParameterizedTypeInformationUnitTests { @Test // DATACMNS-1196 void detectsNestedGenerics() { - TypeInformation myList = ClassTypeInformation.from(EnumGeneric.class).getRequiredProperty("inner.myList"); + var myList = ClassTypeInformation.from(EnumGeneric.class).getRequiredProperty("inner.myList"); assertThat(myList.getRequiredComponentType().getType()).isEqualTo(MyEnum.class); } diff --git a/src/test/java/org/springframework/data/util/ParsingUtilsUnitTests.java b/src/test/java/org/springframework/data/util/ParsingUtilsUnitTests.java index cbc9c8554..27d93da26 100755 --- a/src/test/java/org/springframework/data/util/ParsingUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/util/ParsingUtilsUnitTests.java @@ -17,8 +17,6 @@ package org.springframework.data.util; import static org.assertj.core.api.Assertions.*; -import java.util.List; - import org.junit.jupiter.api.Test; /** @@ -31,7 +29,7 @@ public class ParsingUtilsUnitTests { @Test // DATCMNS-486 public void splitsCamelCaseWithAllSortsOfCharacters() { - String sample = "prefix" + "이름" // + var sample = "prefix" + "이름" // + "Anders" // + "Øre" // + "År" // @@ -43,7 +41,7 @@ public class ParsingUtilsUnitTests { + "BAR$FOO" // + "Suffix"; - List result = ParsingUtils.splitCamelCaseToLower(sample); + var result = ParsingUtils.splitCamelCaseToLower(sample); assertThat(result).contains("prefix", "이름", "anders", "øre", "år", "property1", "생일", "foo_bar", "foo_bar", "bar$foo", "bar$foo", "suffix"); } diff --git a/src/test/java/org/springframework/data/util/ProxyUtilsUnitTests.java b/src/test/java/org/springframework/data/util/ProxyUtilsUnitTests.java index e1b4e350b..a801879e7 100644 --- a/src/test/java/org/springframework/data/util/ProxyUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/util/ProxyUtilsUnitTests.java @@ -34,9 +34,9 @@ public class ProxyUtilsUnitTests { @Test // DATACMNS-1324 public void detectsStandardProxy() { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setTarget(new Sample()); - Object proxy = factory.getProxy(); + var proxy = factory.getProxy(); assertThat(proxy.getClass()).isNotEqualTo(Sample.class); assertThat(ProxyUtils.getUserClass(proxy)).isEqualTo(Sample.class); @@ -45,9 +45,9 @@ public class ProxyUtilsUnitTests { @Test // DATACMNS-1324 public void usesCustomProxyDetector() { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setTarget(new AnotherSample()); - Object proxy = factory.getProxy(); + var proxy = factory.getProxy(); assertThat(ProxyUtils.getUserClass(proxy)).isEqualTo(UserType.class); } @@ -55,10 +55,10 @@ public class ProxyUtilsUnitTests { @Test // DATACMNS-1341 public void detectsTargetTypeOfJdkProxy() { - ProxyFactory factory = new ProxyFactory(); + var factory = new ProxyFactory(); factory.setTarget(new SomeTypeWithInterface()); factory.setInterfaces(Serializable.class); - Object proxy = factory.getProxy(); + var proxy = factory.getProxy(); assertThat(ProxyUtils.getUserClass(proxy)).isEqualTo(SomeTypeWithInterface.class); } diff --git a/src/test/java/org/springframework/data/util/ReflectionUtilsUnitTests.java b/src/test/java/org/springframework/data/util/ReflectionUtilsUnitTests.java index 13dd3aedc..417cedc4a 100755 --- a/src/test/java/org/springframework/data/util/ReflectionUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/util/ReflectionUtilsUnitTests.java @@ -51,14 +51,14 @@ class ReflectionUtilsUnitTests { @Test void findsFieldByFilter() { - Field field = ReflectionUtils.findField(Sample.class, (FieldFilter) new FieldNameFieldFilter("field")); + var field = ReflectionUtils.findField(Sample.class, (FieldFilter) new FieldNameFieldFilter("field")); assertThat(field).isEqualTo(reference); } @Test void returnsNullIfNoFieldFound() { - Field field = ReflectionUtils.findField(Sample.class, (FieldFilter) new FieldNameFieldFilter("foo")); + var field = ReflectionUtils.findField(Sample.class, (FieldFilter) new FieldNameFieldFilter("foo")); assertThat(field).isNull(); } @@ -71,7 +71,7 @@ class ReflectionUtilsUnitTests { @Test void findsUniqueField() { - Field field = ReflectionUtils.findField(Sample.class, new FieldNameFieldFilter("field"), false); + var field = ReflectionUtils.findField(Sample.class, new FieldNameFieldFilter("field"), false); assertThat(field).isEqualTo(reference); } @@ -82,15 +82,15 @@ class ReflectionUtilsUnitTests { } - Field field = ReflectionUtils.findField(Subclass.class, new FieldNameFieldFilter("field")); + var field = ReflectionUtils.findField(Subclass.class, new FieldNameFieldFilter("field")); assertThat(field).isEqualTo(reference); } @Test void setsNonPublicField() { - Sample sample = new Sample(); - Field field = ReflectionUtils.findField(Sample.class, new FieldNameFieldFilter("first")); + var sample = new Sample(); + var field = ReflectionUtils.findField(Sample.class, new FieldNameFieldFilter("first")); ReflectionUtils.setField(field, sample, "foo"); assertThat(sample.first).isEqualTo("foo"); } @@ -118,28 +118,28 @@ class ReflectionUtilsUnitTests { @Test // DATACMNS-1154 void discoversNoReturnType() throws Exception { - MethodParameter parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("noReturnValue"), -1); + var parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("noReturnValue"), -1); assertThat(ReflectionUtils.isNullable(parameter)).isTrue(); } @Test // DATACMNS-1154 void discoversNullableReturnType() throws Exception { - MethodParameter parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("nullableReturnValue"), -1); + var parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("nullableReturnValue"), -1); assertThat(ReflectionUtils.isNullable(parameter)).isTrue(); } @Test // DATACMNS-1154 void discoversNonNullableReturnType() throws Exception { - MethodParameter parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("mandatoryReturnValue"), -1); + var parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("mandatoryReturnValue"), -1); assertThat(ReflectionUtils.isNullable(parameter)).isFalse(); } @Test // DATACMNS-1154 void discoversNullableParameter() throws Exception { - MethodParameter parameter = new MethodParameter( + var parameter = new MethodParameter( DummyInterface.class.getDeclaredMethod("nullableParameter", User.class), 0); assertThat(ReflectionUtils.isNullable(parameter)).isTrue(); } @@ -147,7 +147,7 @@ class ReflectionUtilsUnitTests { @Test // DATACMNS-1154 void discoversNonNullablePrimitiveParameter() throws Exception { - MethodParameter parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("primitive", int.class), 0); + var parameter = new MethodParameter(DummyInterface.class.getDeclaredMethod("primitive", int.class), 0); assertThat(ReflectionUtils.isNullable(parameter)).isFalse(); } diff --git a/src/test/java/org/springframework/data/util/StreamUtilsTests.java b/src/test/java/org/springframework/data/util/StreamUtilsTests.java index 1e961f306..175f11f3f 100755 --- a/src/test/java/org/springframework/data/util/StreamUtilsTests.java +++ b/src/test/java/org/springframework/data/util/StreamUtilsTests.java @@ -19,7 +19,6 @@ import static org.assertj.core.api.Assertions.*; import static org.springframework.data.util.StreamUtils.*; import java.util.Arrays; -import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -36,9 +35,9 @@ public class StreamUtilsTests { @Test // DATACMNS-650 public void shouldConvertAnIteratorToAStream() { - List input = Arrays.asList("a", "b", "c"); - Stream stream = createStreamFromIterator(input.iterator()); - List output = stream.collect(Collectors.toList()); + var input = Arrays.asList("a", "b", "c"); + var stream = createStreamFromIterator(input.iterator()); + var output = stream.collect(Collectors.toList()); assertThat(input).isEqualTo(output); } @@ -46,8 +45,8 @@ public class StreamUtilsTests { @Test // #2426 void combinesInfiniteStreamCorrectly() { - Stream indices = Stream.iterate(1L, n -> n + 1); - Stream lines = Stream.of("first line", "second line"); + var indices = Stream.iterate(1L, n -> n + 1); + var lines = Stream.of("first line", "second line"); assertThat(StreamUtils.zip(indices, lines, (index, line) -> index + ":" + line).count()).isEqualTo(2); } diff --git a/src/test/java/org/springframework/data/util/StreamableUnitTests.java b/src/test/java/org/springframework/data/util/StreamableUnitTests.java index bfc321950..56693e4ff 100644 --- a/src/test/java/org/springframework/data/util/StreamableUnitTests.java +++ b/src/test/java/org/springframework/data/util/StreamableUnitTests.java @@ -34,7 +34,7 @@ public class StreamableUnitTests { @Test // DATACMNS-1432 public void collectsToCollections() { - Streamable streamable = Streamable.of(() -> Stream.of(1, 2, 1)); + var streamable = Streamable.of(() -> Stream.of(1, 2, 1)); assertThat(streamable.toList()).containsExactly(1, 2, 1); assertThat(streamable.toSet()).containsExactlyInAnyOrder(1, 2); diff --git a/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java b/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java index d0a9dd8f2..4f652b782 100755 --- a/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java +++ b/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java @@ -18,7 +18,6 @@ package org.springframework.data.util; import static org.assertj.core.api.Assertions.*; import static org.springframework.data.util.ClassTypeInformation.from; -import java.lang.reflect.Constructor; import java.lang.reflect.Type; import java.lang.reflect.TypeVariable; import java.util.Collection; @@ -55,8 +54,8 @@ public class TypeDiscovererUnitTests { @Test void isNotEqualIfTypesDiffer() { - TypeDiscoverer objectTypeInfo = new TypeDiscoverer<>(Object.class, EMPTY_MAP); - TypeDiscoverer stringTypeInfo = new TypeDiscoverer<>(String.class, EMPTY_MAP); + var objectTypeInfo = new TypeDiscoverer(Object.class, EMPTY_MAP); + var stringTypeInfo = new TypeDiscoverer(String.class, EMPTY_MAP); assertThat(objectTypeInfo.equals(stringTypeInfo)).isFalse(); } @@ -66,8 +65,8 @@ public class TypeDiscovererUnitTests { assertThat(firstMap.equals(secondMap)).isFalse(); - TypeDiscoverer first = new TypeDiscoverer<>(Object.class, firstMap); - TypeDiscoverer second = new TypeDiscoverer<>(Object.class, secondMap); + var first = new TypeDiscoverer(Object.class, firstMap); + var second = new TypeDiscoverer(Object.class, secondMap); assertThat(first.equals(second)).isFalse(); } @@ -76,8 +75,8 @@ public class TypeDiscovererUnitTests { void dealsWithTypesReferencingThemselves() { TypeInformation information = from(SelfReferencing.class); - TypeInformation first = information.getProperty("parent").getMapValueType(); - TypeInformation second = first.getProperty("map").getMapValueType(); + var first = information.getProperty("parent").getMapValueType(); + var second = first.getProperty("map").getMapValueType(); assertThat(second).isEqualTo(first); } @@ -86,7 +85,7 @@ public class TypeDiscovererUnitTests { void dealsWithTypesReferencingThemselvesInAMap() { TypeInformation information = from(SelfReferencingMap.class); - TypeInformation property = information.getProperty("map"); + var property = information.getProperty("map"); assertThat(property.getMapValueType()).isEqualTo(information); } @@ -103,7 +102,7 @@ public class TypeDiscovererUnitTests { @Test void returnsComponentTypeForCollectionExtension() { - TypeDiscoverer discoverer = new TypeDiscoverer<>(CustomCollection.class, firstMap); + var discoverer = new TypeDiscoverer(CustomCollection.class, firstMap); assertThat(discoverer.getComponentType().getType()).isEqualTo(String.class); } @@ -111,7 +110,7 @@ public class TypeDiscovererUnitTests { @Test void returnsComponentTypeForArrays() { - TypeDiscoverer discoverer = new TypeDiscoverer<>(String[].class, EMPTY_MAP); + var discoverer = new TypeDiscoverer(String[].class, EMPTY_MAP); assertThat(discoverer.getComponentType().getType()).isEqualTo(String.class); } @@ -119,9 +118,9 @@ public class TypeDiscovererUnitTests { @Test // DATACMNS-57 void discoveresConstructorParameterTypesCorrectly() throws NoSuchMethodException, SecurityException { - TypeDiscoverer discoverer = new TypeDiscoverer<>(GenericConstructors.class, firstMap); - Constructor constructor = GenericConstructors.class.getConstructor(List.class, Locale.class); - List> types = discoverer.getParameterTypes(constructor); + var discoverer = new TypeDiscoverer(GenericConstructors.class, firstMap); + var constructor = GenericConstructors.class.getConstructor(List.class, Locale.class); + var types = discoverer.getParameterTypes(constructor); assertThat(types).hasSize(2); assertThat(types.get(0).getType()).isEqualTo(List.class); @@ -132,7 +131,7 @@ public class TypeDiscovererUnitTests { @SuppressWarnings("rawtypes") void returnsNullForComponentAndValueTypesForRawMaps() { - TypeDiscoverer discoverer = new TypeDiscoverer<>(Map.class, EMPTY_MAP); + var discoverer = new TypeDiscoverer(Map.class, EMPTY_MAP); assertThat(discoverer.getComponentType()).isNull(); assertThat(discoverer.getMapValueType()).isNull(); @@ -142,17 +141,17 @@ public class TypeDiscovererUnitTests { @SuppressWarnings("rawtypes") void doesNotConsiderTypeImplementingIterableACollection() { - TypeDiscoverer discoverer = new TypeDiscoverer<>(Person.class, EMPTY_MAP); + var discoverer = new TypeDiscoverer(Person.class, EMPTY_MAP); TypeInformation reference = from(Address.class); - TypeInformation addresses = discoverer.getProperty("addresses"); + var addresses = discoverer.getProperty("addresses"); assertThat(addresses).satisfies(it -> { assertThat(it.isCollectionLike()).isFalse(); assertThat(it.getComponentType()).isEqualTo(reference); }); - TypeInformation adressIterable = discoverer.getProperty("addressIterable"); + var adressIterable = discoverer.getProperty("addressIterable"); assertThat(adressIterable).satisfies(it -> { assertThat(it.isCollectionLike()).isTrue(); @@ -172,7 +171,7 @@ public class TypeDiscovererUnitTests { @Test // DATACMNS-1419 void detectsSubTypes() { - ClassTypeInformation type = from(Set.class); + var type = from(Set.class); assertThat(type.isSubTypeOf(Collection.class)).isTrue(); assertThat(type.isSubTypeOf(Set.class)).isFalse(); diff --git a/src/test/java/org/springframework/data/util/VersionUnitTests.java b/src/test/java/org/springframework/data/util/VersionUnitTests.java index 0e9a1307d..dd5fa1cfd 100755 --- a/src/test/java/org/springframework/data/util/VersionUnitTests.java +++ b/src/test/java/org/springframework/data/util/VersionUnitTests.java @@ -30,8 +30,8 @@ class VersionUnitTests { @Test // DATCMNS-384 void sameVersionsEqualOneDigits() { - Version first = new Version(6); - Version second = new Version(6); + var first = new Version(6); + var second = new Version(6); assertThat(first).isEqualTo(second); assertThat(second).isEqualTo(first); @@ -40,8 +40,8 @@ class VersionUnitTests { @Test // DATCMNS-384 void sameVersionsEqualTwoDigits() { - Version first = new Version(5, 2); - Version second = new Version(5, 2); + var first = new Version(5, 2); + var second = new Version(5, 2); assertThat(first).isEqualTo(second); assertThat(second).isEqualTo(first); @@ -50,8 +50,8 @@ class VersionUnitTests { @Test // DATCMNS-384 void sameVersionsEqualThreeDigits() { - Version first = new Version(1, 2, 3); - Version second = new Version(1, 2, 3); + var first = new Version(1, 2, 3); + var second = new Version(1, 2, 3); assertThat(first).isEqualTo(second); assertThat(second).isEqualTo(first); @@ -60,8 +60,8 @@ class VersionUnitTests { @Test // DATCMNS-384 void sameVersionsEqualFourDigits() { - Version first = new Version(1, 2, 3, 1000); - Version second = new Version(1, 2, 3, 1000); + var first = new Version(1, 2, 3, 1000); + var second = new Version(1, 2, 3, 1000); assertThat(first).isEqualTo(second); assertThat(second).isEqualTo(first); @@ -70,39 +70,39 @@ class VersionUnitTests { @Test // DATCMNS-384 void parsesVersionCorrectlyOneDigits() { - Version version = Version.parse("5"); + var version = Version.parse("5"); assertThat(version).isEqualTo(new Version(5)); } @Test // DATCMNS-384 void parsesVersionCorrectlyTwoDigits() { - Version version = Version.parse("5.2"); + var version = Version.parse("5.2"); assertThat(version).isEqualTo(new Version(5, 2)); } @Test // DATCMNS-384 void parsesVersionCorrectlyThreeDigits() { - Version version = Version.parse("12.1.3"); + var version = Version.parse("12.1.3"); assertThat(version).isEqualTo(new Version(12, 1, 3)); } @Test // DATCMNS-384 void parsesVersionCorrectlyFourDigits() { - Version version = Version.parse("12.1.3.1000"); + var version = Version.parse("12.1.3.1000"); assertThat(version).isEqualTo(new Version(12, 1, 3, 1000)); } @Test // DATCMNS-384 void comparesToCorrectly() { - Version version = new Version(1, 2, 3, 1000); - Version nextBuild = new Version(1, 2, 3, 1001); - Version nextBugfix = new Version(1, 2, 4); - Version nextMinor = new Version(1, 3); - Version nextMajor = new Version(2); + var version = new Version(1, 2, 3, 1000); + var nextBuild = new Version(1, 2, 3, 1001); + var nextBugfix = new Version(1, 2, 4); + var nextMinor = new Version(1, 3); + var nextMajor = new Version(2); assertThat(nextMajor.isGreaterThan(nextMinor)).isTrue(); assertThat(nextMajor.isGreaterThan(nextMajor)).isFalse(); diff --git a/src/test/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolverUnitTests.java index 77d2688e0..c39f2415a 100755 --- a/src/test/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/HateoasPageableHandlerMethodArgumentResolverUnitTests.java @@ -17,15 +17,12 @@ package org.springframework.data.web; import static org.assertj.core.api.Assertions.*; -import java.util.List; - import org.junit.jupiter.api.Test; + import org.springframework.core.MethodParameter; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.hateoas.server.mvc.UriComponentsContributor; -import org.springframework.util.MultiValueMap; -import org.springframework.web.util.UriComponents; import org.springframework.web.util.UriComponentsBuilder; /** @@ -39,7 +36,7 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Test void buildsUpRequestParameters() { - String basicString = String.format("page=%d&size=%d", PAGE_NUMBER, PAGE_SIZE); + var basicString = String.format("page=%d&size=%d", PAGE_NUMBER, PAGE_SIZE); assertUriStringFor(REFERENCE_WITHOUT_SORT, basicString); assertUriStringFor(REFERENCE_WITH_SORT, basicString + "&sort=firstname,lastname,desc"); @@ -49,18 +46,18 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Test // DATACMNS-343 void replacesExistingPaginationInformation() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("supportedMethod", Pageable.class), 0); + var parameter = new MethodParameter(Sample.class.getMethod("supportedMethod", Pageable.class), 0); UriComponentsContributor resolver = new HateoasPageableHandlerMethodArgumentResolver(); - UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080?page=0&size=10"); + var builder = UriComponentsBuilder.fromHttpUrl("http://localhost:8080?page=0&size=10"); resolver.enhance(builder, parameter, PageRequest.of(1, 20)); - MultiValueMap params = builder.build().getQueryParams(); + var params = builder.build().getQueryParams(); - List page = params.get("page"); + var page = params.get("page"); assertThat(page).hasSize(1); assertThat(page.get(0)).isEqualTo("1"); - List size = params.get("size"); + var size = params.get("size"); assertThat(size).hasSize(1); assertThat(size.get(0)).isEqualTo("20"); } @@ -84,11 +81,11 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Test // DATACMNS-418 void returnsCustomizedTemplateVariables() { - UriComponents uriComponents = UriComponentsBuilder.fromPath("/foo").build(); + var uriComponents = UriComponentsBuilder.fromPath("/foo").build(); - HateoasPageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setPageParameterName("foo"); - String variables = resolver.getPaginationTemplateVariables(null, uriComponents).toString(); + var variables = resolver.getPaginationTemplateVariables(null, uriComponents).toString(); assertThat(variables).isEqualTo("{?foo,size,sort}"); } @@ -96,14 +93,14 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Test // DATACMNS-563 void enablingOneIndexedParameterReturnsOneForFirstPage() { - HateoasPageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setOneIndexedParameters(true); - UriComponentsBuilder builder = UriComponentsBuilder.fromPath("/"); + var builder = UriComponentsBuilder.fromPath("/"); resolver.enhance(builder, null, PageRequest.of(0, 10)); - MultiValueMap params = builder.build().getQueryParams(); + var params = builder.build().getQueryParams(); assertThat(params.containsKey(resolver.getPageParameterName())).isTrue(); assertThat(params.getFirst(resolver.getPageParameterName())).isEqualTo("1"); @@ -112,7 +109,7 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Test // DATACMNS-1455 void enhancesUnpaged() { - UriComponentsBuilder builder = UriComponentsBuilder.fromPath("/"); + var builder = UriComponentsBuilder.fromPath("/"); getResolver().enhance(builder, null, Pageable.unpaged()); @@ -122,15 +119,15 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests @Override protected HateoasPageableHandlerMethodArgumentResolver getResolver() { - HateoasPageableHandlerMethodArgumentResolver resolver = new HateoasPageableHandlerMethodArgumentResolver(); + var resolver = new HateoasPageableHandlerMethodArgumentResolver(); resolver.setMaxPageSize(100); return resolver; } protected void assertUriStringFor(Pageable pageable, String expected) { - UriComponentsBuilder builder = UriComponentsBuilder.fromPath("/"); - MethodParameter parameter = getParameterOfMethod("supportedMethod"); + var builder = UriComponentsBuilder.fromPath("/"); + var parameter = getParameterOfMethod("supportedMethod"); getResolver().enhance(builder, parameter, pageable); @@ -139,9 +136,9 @@ class HateoasPageableHandlerMethodArgumentResolverUnitTests private void assertTemplateEnrichment(String baseUri, String expected) { - UriComponents uriComponents = UriComponentsBuilder.fromUriString(baseUri).build(); + var uriComponents = UriComponentsBuilder.fromUriString(baseUri).build(); - HateoasPageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); assertThat(resolver.getPaginationTemplateVariables(null, uriComponents).toString()).isEqualTo(expected); } } diff --git a/src/test/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolverUnitTests.java index ba210a438..dd2e2d5ed 100755 --- a/src/test/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/HateoasSortHandlerMethodArgumentResolverUnitTests.java @@ -21,9 +21,8 @@ import static org.springframework.data.domain.Sort.Direction.*; import java.net.URI; import org.junit.jupiter.api.Test; -import org.springframework.core.MethodParameter; + import org.springframework.data.domain.Sort; -import org.springframework.web.util.UriComponents; import org.springframework.web.util.UriComponentsBuilder; /** @@ -51,9 +50,9 @@ class HateoasSortHandlerMethodArgumentResolverUnitTests extends SortHandlerMetho @Test // DATACMNS-418 void returnCorrectTemplateVariables() { - UriComponents uriComponents = UriComponentsBuilder.fromPath("/").build(); + var uriComponents = UriComponentsBuilder.fromPath("/").build(); - HateoasSortHandlerMethodArgumentResolver resolver = new HateoasSortHandlerMethodArgumentResolver(); + var resolver = new HateoasSortHandlerMethodArgumentResolver(); assertThat(resolver.getSortTemplateVariables(null, uriComponents).toString()).isEqualTo("{?sort}"); } @@ -63,8 +62,8 @@ class HateoasSortHandlerMethodArgumentResolverUnitTests extends SortHandlerMetho private void assertUriStringFor(Sort sort, String expected, String baseUri) throws Exception { - UriComponentsBuilder builder = UriComponentsBuilder.fromUri(new URI(baseUri)); - MethodParameter parameter = getParameterOfMethod("supportedMethod"); + var builder = UriComponentsBuilder.fromUri(new URI(baseUri)); + var parameter = getParameterOfMethod("supportedMethod"); new HateoasSortHandlerMethodArgumentResolver().enhance(builder, parameter, sort); diff --git a/src/test/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactoryUnitTests.java b/src/test/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactoryUnitTests.java index c8b628cd2..b43126b56 100755 --- a/src/test/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/web/JsonProjectingMethodInterceptorFactoryUnitTests.java @@ -54,14 +54,14 @@ class JsonProjectingMethodInterceptorFactoryUnitTests { @BeforeEach void setUp() { - String json = "{\"firstname\" : \"Dave\", "// + var json = "{\"firstname\" : \"Dave\", "// + "\"address\" : { \"zipCode\" : \"01097\", \"city\" : \"Dresden\" }," // + "\"addresses\" : [ { \"zipCode\" : \"01097\", \"city\" : \"Dresden\" }, { \"zipCode\" : \"69469\", \"city\" : \"Weinheim\" }]" + " }"; - SpelAwareProxyProjectionFactory projectionFactory = new SpelAwareProxyProjectionFactory(); + var projectionFactory = new SpelAwareProxyProjectionFactory(); - ObjectMapper objectMapper = new ObjectMapper(); + var objectMapper = new ObjectMapper(); MappingProvider mappingProvider = new JacksonMappingProvider(objectMapper); JsonProvider jsonProvider = new JacksonJsonProvider(objectMapper); projectionFactory @@ -121,7 +121,7 @@ class JsonProjectingMethodInterceptorFactoryUnitTests { @Test // DATCMNS-885 void accessCollectionPropertyThatUsesJsonPathProjectionInTurn() { - List projections = customer.getAnotherAddressProjections(); + var projections = customer.getAnotherAddressProjections(); assertThat(projections).hasSize(2); assertThat(projections.get(0).getZipCodeButNotCity()).isEqualTo("01097"); @@ -130,7 +130,7 @@ class JsonProjectingMethodInterceptorFactoryUnitTests { @Test // DATCMNS-885 void accessAsCollectionPropertyThatUsesJsonPathProjectionInTurn() { - Set projections = customer.getAnotherAddressProjectionAsCollection(); + var projections = customer.getAnotherAddressProjectionAsCollection(); assertThat(projections).hasSize(1); assertThat(projections.iterator().next().getZipCodeButNotCity()).isEqualTo("01097"); @@ -139,7 +139,7 @@ class JsonProjectingMethodInterceptorFactoryUnitTests { @Test // DATCMNS-885 void accessNestedPropertyButStayOnRootLevel() { - Name name = customer.getName(); + var name = customer.getName(); assertThat(name).isNotNull(); assertThat(name.getFirstname()).isEqualTo("Dave"); @@ -165,10 +165,10 @@ class JsonProjectingMethodInterceptorFactoryUnitTests { @Test // gh-2270 void shouldProjectOnArray() { - String json = "[ { \"creationDate\": 1610111331413, \"changeDate\": 1610111332160, \"person\": { \"caption\": \"Test2 TEST2\", \"firstName\": \"Test2\", \"lastName\": \"Test2\" } }, " + var json = "[ { \"creationDate\": 1610111331413, \"changeDate\": 1610111332160, \"person\": { \"caption\": \"Test2 TEST2\", \"firstName\": \"Test2\", \"lastName\": \"Test2\" } }, " + "{ \"creationDate\": 1609775450502, \"changeDate\": 1609775451333, \"person\": { \"caption\": \"Test TEST\", \"firstName\": \"Test\", \"lastName\": \"Test\" } }]"; - UserPayload projection = projectionFactory.createProjection(UserPayload.class, + var projection = projectionFactory.createProjection(UserPayload.class, new ByteArrayInputStream(json.getBytes(StandardCharsets.UTF_8))); assertThat(projection.users()).hasSize(2); diff --git a/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java b/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java index 8098af684..7185fe87a 100755 --- a/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java +++ b/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java @@ -28,7 +28,7 @@ import java.util.List; import java.util.Map; import org.junit.jupiter.api.Test; -import org.springframework.beans.ConfigurablePropertyAccessor; + import org.springframework.beans.MutablePropertyValues; import org.springframework.beans.NotWritablePropertyException; import org.springframework.beans.PropertyValues; @@ -47,9 +47,9 @@ class MapDataBinderUnitTests { @Test // DATACMNS-630 void honorsFormattingAnnotationOnAccessor() { - Date reference = new Date(); + var reference = new Date(); - MutablePropertyValues values = new MutablePropertyValues(); + var values = new MutablePropertyValues(); values.add("foo.date", new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX").format(reference)); Map nested = new HashMap<>(); @@ -61,10 +61,10 @@ class MapDataBinderUnitTests { @Test // DATACMNS-630 void bindsNestedCollectionElement() { - MutablePropertyValues values = new MutablePropertyValues(); + var values = new MutablePropertyValues(); values.add("foo.bar.fooBar[0]", "String"); - Map result = bind(values); + var result = bind(values); List list = new ArrayList<>(); list.add("String"); @@ -75,11 +75,11 @@ class MapDataBinderUnitTests { @Test // DATACMNS-630 void bindsNestedPrimitive() { - MutablePropertyValues values = new MutablePropertyValues(); + var values = new MutablePropertyValues(); values.add("foo.firstname", "Dave"); values.add("foo.lastname", "Matthews"); - Map result = bind(values); + var result = bind(values); Map dave = new HashMap<>(); dave.put("firstname", "Dave"); @@ -91,7 +91,7 @@ class MapDataBinderUnitTests { @Test // DATACMNS-630 void skipsPropertyNotExposedByTheTypeHierarchy() { - MutablePropertyValues values = new MutablePropertyValues(); + var values = new MutablePropertyValues(); values.add("somethingWeird", "Value"); assertThat(bind(values)).isEqualTo(Collections.emptyMap()); @@ -100,7 +100,7 @@ class MapDataBinderUnitTests { @Test // DATACMNS-1264 void dropsMapExpressionsForCollectionReferences() { - ConfigurablePropertyAccessor accessor = new MapDataBinder(Bar.class, new DefaultFormattingConversionService()) + var accessor = new MapDataBinder(Bar.class, new DefaultFormattingConversionService()) .getPropertyAccessor(); assertThatExceptionOfType(NotWritablePropertyException.class) // @@ -111,7 +111,7 @@ class MapDataBinderUnitTests { @Test // DATACMNS-1264 void rejectsExpressionContainingTypeExpression() { - ConfigurablePropertyAccessor accessor = new MapDataBinder(Bar.class, new DefaultFormattingConversionService()) + var accessor = new MapDataBinder(Bar.class, new DefaultFormattingConversionService()) .getPropertyAccessor(); assertThatExceptionOfType(NotWritablePropertyException.class) // @@ -121,7 +121,7 @@ class MapDataBinderUnitTests { private static Map bind(PropertyValues values) { - MapDataBinder binder = new MapDataBinder(Root.class, new DefaultFormattingConversionService()); + var binder = new MapDataBinder(Root.class, new DefaultFormattingConversionService()); binder.bind(values); return binder.getTarget(); diff --git a/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java b/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java index cf292f0f5..2763650c3 100755 --- a/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java +++ b/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java @@ -60,7 +60,7 @@ abstract class PageableDefaultUnitTests { @Test void doesNotSupportNonPageable() { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); assertThat(getResolver().supportsParameter(parameter)).isFalse(); } @@ -98,7 +98,7 @@ abstract class PageableDefaultUnitTests { @Test void rejectsInvalidQulifiers() throws Exception { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "invalidQualifiers", + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "invalidQualifiers", Pageable.class, Pageable.class); HandlerMethodArgumentResolver resolver = getResolver(); @@ -112,7 +112,7 @@ abstract class PageableDefaultUnitTests { @Test void rejectsNoQualifiers() throws Exception { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "noQualifiers", Pageable.class, + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "noQualifiers", Pageable.class, Pageable.class); HandlerMethodArgumentResolver resolver = getResolver(); diff --git a/src/test/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverUnitTests.java index 72d144f17..a6d301adf 100755 --- a/src/test/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/PageableHandlerMethodArgumentResolverUnitTests.java @@ -50,7 +50,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit void preventsPageSizeFromExceedingMayValueIfConfigured() throws Exception { // Read side - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "0"); request.addParameter("size", "200"); @@ -84,9 +84,9 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test void qualifierIsUsedInParameterLookup() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("validQualifier", Pageable.class), 0); + var parameter = new MethodParameter(Sample.class.getMethod("validQualifier", Pageable.class), 0); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("foo_page", "2"); request.addParameter("foo_size", "10"); @@ -96,7 +96,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-377 void usesDefaultPageSizeIfRequestPageSizeIsLessThanOne() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "0"); request.addParameter("size", "0"); @@ -106,7 +106,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-377 void rejectsInvalidCustomDefaultForPageSize() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("invalidDefaultPageSize", Pageable.class), + var parameter = new MethodParameter(Sample.class.getMethod("invalidDefaultPageSize", Pageable.class), 0); assertThatIllegalStateException().isThrownBy(() -> assertSupportedAndResult(parameter, DEFAULT_PAGE_REQUEST)) // @@ -116,7 +116,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-408 void fallsBackToFirstPageIfNegativePageNumberIsGiven() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "-1"); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); @@ -125,7 +125,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-408 void pageParamIsNotNumeric() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "a"); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); @@ -134,7 +134,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-408 void sizeParamIsNotNumeric() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("size", "a"); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); @@ -143,7 +143,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-477 void returnsNullIfFallbackIsUnpagedAndNoParametersGiven() throws Exception { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setFallbackPageable(Pageable.unpaged()); assertSupportedAndResult(supportedMethodParameter, Pageable.unpaged(), @@ -153,10 +153,10 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-477 void returnsFallbackIfOnlyPageIsGiven() throws Exception { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "20"); assertThat(resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null)) @@ -166,10 +166,10 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-477 void returnsFallbackIfFallbackIsUnpagedAndOnlySizeIsGiven() throws Exception { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("size", "10"); assertThat(resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null)) @@ -179,10 +179,10 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-563 void considersOneIndexedParametersSetting() { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setOneIndexedParameters(true); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "1"); assertThat( @@ -193,14 +193,14 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-640 void usesNullSortIfNoDefaultIsConfiguredAndPageAndSizeAreGiven() { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "0"); request.addParameter("size", "10"); - Pageable result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); + var result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); assertThat(result.getPageNumber()).isEqualTo(0); assertThat(result.getPageSize()).isEqualTo(10); @@ -210,13 +210,13 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-692 void oneIndexedParametersDefaultsIndexOutOfRange() { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setOneIndexedParameters(true); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "0"); - Pageable result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); + var result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); assertThat(result.getPageNumber()).isEqualTo(0); } @@ -224,13 +224,13 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-761 void returnsCorrectPageSizeForOneIndexParameters() { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setOneIndexedParameters(true); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("size", "10"); - Pageable result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); + var result = resolver.resolveArgument(supportedMethodParameter, null, new ServletWebRequest(request), null); assertThat(result.getPageSize()).isEqualTo(10); } @@ -238,7 +238,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-929 void detectsFallbackPageableIfNullOneIsConfigured() { - PageableHandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); resolver.setFallbackPageable(Pageable.unpaged()); assertThat(resolver.isFallbackPageable(null)).isFalse(); @@ -248,9 +248,9 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-1827 void emptyQualifierIsUsedInParameterLookup() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("emptyQualifier", Pageable.class), 0); + var parameter = new MethodParameter(Sample.class.getMethod("emptyQualifier", Pageable.class), 0); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("page", "2"); request.addParameter("size", "10"); @@ -260,9 +260,9 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Test // DATACMNS-1827 void mergedQualifierIsUsedInParameterLookup() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("mergedQualifier", Pageable.class), 0); + var parameter = new MethodParameter(Sample.class.getMethod("mergedQualifier", Pageable.class), 0); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("merged_page", "2"); request.addParameter("merged_size", "10"); @@ -271,7 +271,7 @@ class PageableHandlerMethodArgumentResolverUnitTests extends PageableDefaultUnit @Override protected PageableHandlerMethodArgumentResolver getResolver() { - PageableHandlerMethodArgumentResolver resolver = new PageableHandlerMethodArgumentResolver(); + var resolver = new PageableHandlerMethodArgumentResolver(); resolver.setMaxPageSize(100); return resolver; } diff --git a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolverUnitTests.java index 2fde182a9..6b2e63438 100755 --- a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolverUnitTests.java @@ -41,15 +41,15 @@ class PagedResourcesAssemblerArgumentResolverUnitTests { WebTestUtils.initWebTest(); - HateoasPageableHandlerMethodArgumentResolver hateoasPageableHandlerMethodArgumentResolver = new HateoasPageableHandlerMethodArgumentResolver(); + var hateoasPageableHandlerMethodArgumentResolver = new HateoasPageableHandlerMethodArgumentResolver(); this.resolver = new PagedResourcesAssemblerArgumentResolver(hateoasPageableHandlerMethodArgumentResolver); } @Test // DATACMNS-418 void createsPlainAssemblerWithoutContext() throws Exception { - Method method = Controller.class.getMethod("noContext", PagedResourcesAssembler.class); - Object result = resolver.resolveArgument(new MethodParameter(method, 0), null, null, null); + var method = Controller.class.getMethod("noContext", PagedResourcesAssembler.class); + var result = resolver.resolveArgument(new MethodParameter(method, 0), null, null, null); assertThat(result).isInstanceOf(PagedResourcesAssembler.class); assertThat(result).isNotInstanceOf(MethodParameterAwarePagedResourcesAssembler.class); @@ -58,28 +58,28 @@ class PagedResourcesAssemblerArgumentResolverUnitTests { @Test // DATACMNS-418 void selectsUniquePageableParameter() throws Exception { - Method method = Controller.class.getMethod("unique", PagedResourcesAssembler.class, Pageable.class); + var method = Controller.class.getMethod("unique", PagedResourcesAssembler.class, Pageable.class); assertSelectsParameter(method, 1); } @Test // DATACMNS-418 void selectsUniquePageableParameterForQualifiedAssembler() throws Exception { - Method method = Controller.class.getMethod("unnecessarilyQualified", PagedResourcesAssembler.class, Pageable.class); + var method = Controller.class.getMethod("unnecessarilyQualified", PagedResourcesAssembler.class, Pageable.class); assertSelectsParameter(method, 1); } @Test // DATACMNS-418 void selectsUniqueQualifiedPageableParameter() throws Exception { - Method method = Controller.class.getMethod("qualifiedUnique", PagedResourcesAssembler.class, Pageable.class); + var method = Controller.class.getMethod("qualifiedUnique", PagedResourcesAssembler.class, Pageable.class); assertSelectsParameter(method, 1); } @Test // DATACMNS-418 void selectsQualifiedPageableParameter() throws Exception { - Method method = Controller.class.getMethod("qualified", PagedResourcesAssembler.class, Pageable.class, + var method = Controller.class.getMethod("qualified", PagedResourcesAssembler.class, Pageable.class, Pageable.class); assertSelectsParameter(method, 1); } @@ -102,31 +102,31 @@ class PagedResourcesAssemblerArgumentResolverUnitTests { @Test // DATACMNS-419 void doesNotFailForTemplatedMethodMapping() throws Exception { - Method method = Controller.class.getMethod("methodWithPathVariable", PagedResourcesAssembler.class); - Object result = resolver.resolveArgument(new MethodParameter(method, 0), null, null, null); + var method = Controller.class.getMethod("methodWithPathVariable", PagedResourcesAssembler.class); + var result = resolver.resolveArgument(new MethodParameter(method, 0), null, null, null); assertThat(result).isNotNull(); } private void assertSelectsParameter(Method method, int expectedIndex) { - MethodParameter parameter = new MethodParameter(method, 0); + var parameter = new MethodParameter(method, 0); - Object result = resolver.resolveArgument(parameter, null, null, null); + var result = resolver.resolveArgument(parameter, null, null, null); assertMethodParameterAwarePagedResourcesAssemblerFor(result, new MethodParameter(method, expectedIndex)); } private static void assertMethodParameterAwarePagedResourcesAssemblerFor(Object result, MethodParameter parameter) { assertThat(result).isInstanceOf(MethodParameterAwarePagedResourcesAssembler.class); - MethodParameterAwarePagedResourcesAssembler assembler = (MethodParameterAwarePagedResourcesAssembler) result; + var assembler = (MethodParameterAwarePagedResourcesAssembler) result; assertThat(assembler.getMethodParameter()).isEqualTo(parameter); } private void assertRejectsAmbiguity(String methodName) throws Exception { - Method method = Controller.class.getMethod(methodName, PagedResourcesAssembler.class, Pageable.class, + var method = Controller.class.getMethod(methodName, PagedResourcesAssembler.class, Pageable.class, Pageable.class); assertThatIllegalStateException() diff --git a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java index 0fdf99cd3..2e537542e 100755 --- a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java +++ b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java @@ -65,7 +65,7 @@ class PagedResourcesAssemblerUnitTests { @Test void addsNextLinkForFirstPage() { - PagedModel> resources = assembler.toModel(createPage(0)); + var resources = assembler.toModel(createPage(0)); assertThat(resources.getLink(IanaLinkRelations.PREV)).isEmpty(); assertThat(resources.getLink(IanaLinkRelations.SELF)).isNotEmpty(); @@ -75,7 +75,7 @@ class PagedResourcesAssemblerUnitTests { @Test void addsPreviousAndNextLinksForMiddlePage() { - PagedModel> resources = assembler.toModel(createPage(1)); + var resources = assembler.toModel(createPage(1)); assertThat(resources.getLink(IanaLinkRelations.PREV)).isNotEmpty(); assertThat(resources.getLink(IanaLinkRelations.SELF)).isNotEmpty(); @@ -85,7 +85,7 @@ class PagedResourcesAssemblerUnitTests { @Test void addsPreviousLinkForLastPage() { - PagedModel> resources = assembler.toModel(createPage(2)); + var resources = assembler.toModel(createPage(2)); assertThat(resources.getLink(IanaLinkRelations.PREV)).isNotEmpty(); assertThat(resources.getLink(IanaLinkRelations.SELF)).isNotEmpty(); @@ -95,10 +95,10 @@ class PagedResourcesAssemblerUnitTests { @Test void usesBaseUriIfConfigured() { - UriComponents baseUri = UriComponentsBuilder.fromUriString("https://foo:9090").build(); + var baseUri = UriComponentsBuilder.fromUriString("https://foo:9090").build(); - PagedResourcesAssembler assembler = new PagedResourcesAssembler<>(resolver, baseUri); - PagedModel> resources = assembler.toModel(createPage(1)); + var assembler = new PagedResourcesAssembler(resolver, baseUri); + var resources = assembler.toModel(createPage(1)); assertThat(resources.getRequiredLink(IanaLinkRelations.PREV).getHref()).startsWith(baseUri.toUriString()); assertThat(resources.getRequiredLink(IanaLinkRelations.SELF)).isNotNull(); @@ -108,9 +108,9 @@ class PagedResourcesAssemblerUnitTests { @Test void usesCustomLinkProvided() { - Link link = Link.of("https://foo:9090", "rel"); + var link = Link.of("https://foo:9090", "rel"); - PagedModel> resources = assembler.toModel(createPage(1), link); + var resources = assembler.toModel(createPage(1), link); assertThat(resources.getRequiredLink(IanaLinkRelations.PREV).getHref()).startsWith(link.getHref()); assertThat(resources.getRequiredLink(IanaLinkRelations.SELF)).isEqualTo(link.withSelfRel()); @@ -131,7 +131,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-418, DATACMNS-515 void createsACanonicalLinkWithoutTemplateParameters() { - PagedModel> resources = assembler.toModel(createPage(1)); + var resources = assembler.toModel(createPage(1)); assertThat(resources.getRequiredLink(IanaLinkRelations.SELF).getHref()).doesNotContain("{").doesNotContain("}"); } @@ -139,13 +139,13 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-418 void invokesCustomElementResourceAssembler() { - PersonResourceAssembler personAssembler = new PersonResourceAssembler(); + var personAssembler = new PersonResourceAssembler(); - PagedModel resources = assembler.toModel(createPage(0), personAssembler); + var resources = assembler.toModel(createPage(0), personAssembler); assertThat(resources.hasLink(IanaLinkRelations.SELF)).isTrue(); assertThat(resources.hasLink(IanaLinkRelations.NEXT)).isTrue(); - Collection content = resources.getContent(); + var content = resources.getContent(); assertThat(content).hasSize(1); assertThat(content.iterator().next().name).isEqualTo("Dave"); } @@ -153,11 +153,11 @@ class PagedResourcesAssemblerUnitTests { @Test // DATAMCNS-563 void createsPaginationLinksForOneIndexedArgumentResolverCorrectly() { - HateoasPageableHandlerMethodArgumentResolver argumentResolver = new HateoasPageableHandlerMethodArgumentResolver(); + var argumentResolver = new HateoasPageableHandlerMethodArgumentResolver(); argumentResolver.setOneIndexedParameters(true); - PagedResourcesAssembler assembler = new PagedResourcesAssembler<>(argumentResolver, null); - PagedModel> resource = assembler.toModel(createPage(1)); + var assembler = new PagedResourcesAssembler(argumentResolver, null); + var resource = assembler.toModel(createPage(1)); assertThat(resource.hasLink("prev")).isTrue(); assertThat(resource.hasLink("next")).isTrue(); @@ -172,7 +172,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-515 void generatedLinksShouldNotBeTemplated() { - PagedModel> resources = assembler.toModel(createPage(1)); + var resources = assembler.toModel(createPage(1)); assertThat(resources.getRequiredLink(IanaLinkRelations.SELF).getHref()).doesNotContain("{").doesNotContain("}"); assertThat(resources.getRequiredLink(IanaLinkRelations.NEXT).getHref()).endsWith("?page=2&size=1"); @@ -182,12 +182,12 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-699 void generatesEmptyPagedResourceWithEmbeddedWrapper() { - PagedModel result = assembler.toEmptyModel(EMPTY_PAGE, Person.class); + var result = assembler.toEmptyModel(EMPTY_PAGE, Person.class); - Collection content = result.getContent(); + var content = result.getContent(); assertThat(content).hasSize(1); - Object element = content.iterator().next(); + var element = content.iterator().next(); assertThat(element).isInstanceOf(EmbeddedWrapper.class); assertThat(((EmbeddedWrapper) element).getRelTargetType()).isEqualTo(Person.class); } @@ -205,7 +205,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-701 void addsFirstAndLastLinksForMultiplePages() { - PagedModel> resources = assembler.toModel(createPage(1)); + var resources = assembler.toModel(createPage(1)); assertThat(resources.getRequiredLink(IanaLinkRelations.FIRST).getHref()).endsWith("?page=0&size=1"); assertThat(resources.getRequiredLink(IanaLinkRelations.LAST).getHref()).endsWith("?page=2&size=1"); @@ -214,7 +214,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-701 void addsFirstAndLastLinksForFirstPage() { - PagedModel> resources = assembler.toModel(createPage(0)); + var resources = assembler.toModel(createPage(0)); assertThat(resources.getRequiredLink(IanaLinkRelations.FIRST).getHref()).endsWith("?page=0&size=1"); assertThat(resources.getRequiredLink(IanaLinkRelations.LAST).getHref()).endsWith("?page=2&size=1"); @@ -223,7 +223,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-701 void addsFirstAndLastLinksForLastPage() { - PagedModel> resources = assembler.toModel(createPage(2)); + var resources = assembler.toModel(createPage(2)); assertThat(resources.getRequiredLink(IanaLinkRelations.FIRST).getHref()).endsWith("?page=0&size=1"); assertThat(resources.getRequiredLink(IanaLinkRelations.LAST).getHref()).endsWith("?page=2&size=1"); @@ -232,10 +232,10 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-701 void alwaysAddsFirstAndLastLinkIfConfiguredTo() { - PagedResourcesAssembler assembler = new PagedResourcesAssembler<>(resolver, null); + var assembler = new PagedResourcesAssembler(resolver, null); assembler.setForceFirstAndLastRels(true); - PagedModel> resources = assembler.toModel(EMPTY_PAGE); + var resources = assembler.toModel(EMPTY_PAGE); assertThat(resources.getRequiredLink(IanaLinkRelations.FIRST).getHref()).endsWith("?page=0&size=20"); assertThat(resources.getRequiredLink(IanaLinkRelations.LAST).getHref()).endsWith("?page=0&size=20"); @@ -253,7 +253,7 @@ class PagedResourcesAssemblerUnitTests { @Test // DATACMNS-1042 void selfLinkContainsCoordinatesForCurrentPage() { - PagedModel> resource = assembler.toModel(createPage(0)); + var resource = assembler.toModel(createPage(0)); assertThat(resource.getRequiredLink(IanaLinkRelations.SELF).getHref()).endsWith("?page=0&size=1"); } @@ -263,7 +263,7 @@ class PagedResourcesAssemblerUnitTests { WebTestUtils.initWebTest(new MockHttpServletRequest("GET", "/sample?foo=bar")); - PagedModel> model = assembler.toModel(createPage(1)); + var model = assembler.toModel(createPage(1)); assertThat(model.getRequiredLink(IanaLinkRelations.FIRST).getHref()) .isEqualTo("http://localhost/sample?foo=bar&page=0&size=1"); @@ -273,7 +273,7 @@ class PagedResourcesAssemblerUnitTests { Pageable request = PageRequest.of(index, 1); - Person person = new Person(); + var person = new Person(); person.name = "Dave"; return new PageImpl<>(Collections.singletonList(person), request, 3); @@ -281,7 +281,7 @@ class PagedResourcesAssemblerUnitTests { private static Map getQueryParameters(Link link) { - UriComponents uriComponents = UriComponentsBuilder.fromUri(URI.create(link.expand().getHref())).build(); + var uriComponents = UriComponentsBuilder.fromUri(URI.create(link.expand().getHref())).build(); return uriComponents.getQueryParams().toSingleValueMap(); } @@ -301,7 +301,7 @@ class PagedResourcesAssemblerUnitTests { */ @Override public PersonResource toModel(Person entity) { - PersonResource resource = new PersonResource(); + var resource = new PersonResource(); resource.name = entity.name; return resource; } diff --git a/src/test/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverterUnitTests.java b/src/test/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverterUnitTests.java index 8910d6795..22093853b 100755 --- a/src/test/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverterUnitTests.java +++ b/src/test/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverterUnitTests.java @@ -17,10 +17,8 @@ package org.springframework.data.web; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; -import java.lang.reflect.Type; - import org.junit.jupiter.api.Test; + import org.springframework.http.MediaType; /** @@ -54,8 +52,8 @@ class ProjectingJackson2HttpMessageConverterUnitTests { @Test // DATACMNS-972 void doesNotConsiderTypeVariableBoundTo() throws Throwable { - Method method = BaseController.class.getDeclaredMethod("createEntity", AbstractDto.class); - Type type = method.getGenericParameterTypes()[0]; + var method = BaseController.class.getDeclaredMethod("createEntity", AbstractDto.class); + var type = method.getGenericParameterTypes()[0]; assertThat(converter.canRead(type, BaseController.class, ANYTHING_JSON)).isFalse(); } @@ -63,8 +61,8 @@ class ProjectingJackson2HttpMessageConverterUnitTests { @Test // DATACMNS-972 void genericTypeOnConcreteOne() throws Throwable { - Method method = ConcreteController.class.getMethod("createEntity", AbstractDto.class); - Type type = method.getGenericParameterTypes()[0]; + var method = ConcreteController.class.getMethod("createEntity", AbstractDto.class); + var type = method.getGenericParameterTypes()[0]; assertThat(converter.canRead(type, ConcreteController.class, ANYTHING_JSON)).isFalse(); } diff --git a/src/test/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolverUnitTests.java index b67cad091..01bb42982 100755 --- a/src/test/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/ProxyingHandlerMethodArgumentResolverUnitTests.java @@ -17,10 +17,10 @@ package org.springframework.data.web; import static org.assertj.core.api.Assertions.*; -import java.lang.reflect.Method; import java.util.List; import org.junit.jupiter.api.Test; + import org.springframework.core.MethodParameter; import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.data.web.ProjectingJackson2HttpMessageConverterUnitTests.SampleInterface; @@ -40,8 +40,8 @@ public class ProxyingHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-776 void supportAnnotatedInterface() throws Exception { - Method method = Controller.class.getMethod("with", AnnotatedInterface.class); - MethodParameter parameter = new MethodParameter(method, 0); + var method = Controller.class.getMethod("with", AnnotatedInterface.class); + var parameter = new MethodParameter(method, 0); assertThat(resolver.supportsParameter(parameter)).isTrue(); } @@ -49,8 +49,8 @@ public class ProxyingHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-776 void supportsUnannotatedInterfaceFromUserPackage() throws Exception { - Method method = Controller.class.getMethod("with", SampleInterface.class); - MethodParameter parameter = new MethodParameter(method, 0); + var method = Controller.class.getMethod("with", SampleInterface.class); + var parameter = new MethodParameter(method, 0); assertThat(resolver.supportsParameter(parameter)).isTrue(); } @@ -58,8 +58,8 @@ public class ProxyingHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-776 void doesNotSupportUnannotatedInterfaceFromSpringNamespace() throws Exception { - Method method = Controller.class.getMethod("with", UnannotatedInterface.class); - MethodParameter parameter = new MethodParameter(method, 0); + var method = Controller.class.getMethod("with", UnannotatedInterface.class); + var parameter = new MethodParameter(method, 0); assertThat(resolver.supportsParameter(parameter)).isFalse(); } @@ -67,8 +67,8 @@ public class ProxyingHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-776 void doesNotSupportCoreJavaType() throws Exception { - Method method = Controller.class.getMethod("with", List.class); - MethodParameter parameter = new MethodParameter(method, 0); + var method = Controller.class.getMethod("with", List.class); + var parameter = new MethodParameter(method, 0); assertThat(resolver.supportsParameter(parameter)).isFalse(); } diff --git a/src/test/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolverUnitTests.java index 5342fcd0e..7465f05a3 100755 --- a/src/test/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/ReactivePageableHandlerMethodArgumentResolverUnitTests.java @@ -50,7 +50,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { void preventsPageSizeFromExceedingMayValueIfConfigured() { // Read side - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=0&size=200").build(); + var request = MockServerHttpRequest.get("foo?page=0&size=200").build(); assertSupportedAndResult(supportedMethodParameter, PageRequest.of(0, 100), request); } @@ -82,9 +82,9 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void qualifierIsUsedInParameterLookup() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("validQualifier", Pageable.class), 0); + var parameter = new MethodParameter(Sample.class.getMethod("validQualifier", Pageable.class), 0); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?foo_page=2&foo_size=10").build(); + var request = MockServerHttpRequest.get("foo?foo_page=2&foo_size=10").build(); assertSupportedAndResult(parameter, PageRequest.of(2, 10), request); } @@ -92,7 +92,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void usesDefaultPageSizeIfRequestPageSizeIsLessThanOne() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=0&size=0").build(); + var request = MockServerHttpRequest.get("foo?page=0&size=0").build(); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); } @@ -100,7 +100,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void rejectsInvalidCustomDefaultForPageSize() throws Exception { - MethodParameter parameter = new MethodParameter(Sample.class.getMethod("invalidDefaultPageSize", Pageable.class), + var parameter = new MethodParameter(Sample.class.getMethod("invalidDefaultPageSize", Pageable.class), 0); assertThatIllegalStateException().isThrownBy(() -> assertSupportedAndResult(parameter, DEFAULT_PAGE_REQUEST)) @@ -110,7 +110,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void fallsBackToFirstPageIfNegativePageNumberIsGiven() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=-1").build(); + var request = MockServerHttpRequest.get("foo?page=-1").build(); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); } @@ -118,7 +118,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void pageParamIsNotNumeric() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=a").build(); + var request = MockServerHttpRequest.get("foo?page=a").build(); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); } @@ -126,7 +126,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void sizeParamIsNotNumeric() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?size=a").build(); + var request = MockServerHttpRequest.get("foo?size=a").build(); assertSupportedAndResult(supportedMethodParameter, DEFAULT_PAGE_REQUEST, request); } @@ -134,7 +134,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void returnsNullIfFallbackIsUnpagedAndNoParametersGiven() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setFallbackPageable(Pageable.unpaged()); assertSupportedAndResult(supportedMethodParameter, Pageable.unpaged(), TestUtils.getWebfluxRequest(), resolver); @@ -143,10 +143,10 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void returnsFallbackIfOnlyPageIsGiven() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=20").build(); + var request = MockServerHttpRequest.get("foo?page=20").build(); assertThat(resolve(resolver, request)).isEqualTo(Pageable.unpaged()); } @@ -154,10 +154,10 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void returnsFallbackIfFallbackIsUnpagedAndOnlySizeIsGiven() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?size=10").build(); + var request = MockServerHttpRequest.get("foo?size=10").build(); assertThat(resolve(resolver, request)).isEqualTo(Pageable.unpaged()); } @@ -165,10 +165,10 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void considersOneIndexedParametersSetting() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setOneIndexedParameters(true); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=1").build(); + var request = MockServerHttpRequest.get("foo?page=1").build(); assertThat(resolve(resolver, request).getPageNumber()).isEqualTo(0); } @@ -176,12 +176,12 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void usesNullSortIfNoDefaultIsConfiguredAndPageAndSizeAreGiven() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setFallbackPageable(Pageable.unpaged()); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=0&size=10").build(); + var request = MockServerHttpRequest.get("foo?page=0&size=10").build(); - Pageable result = resolve(resolver, request); + var result = resolve(resolver, request); assertThat(result.getPageNumber()).isEqualTo(0); assertThat(result.getPageSize()).isEqualTo(10); @@ -191,10 +191,10 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void oneIndexedParametersDefaultsIndexOutOfRange() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setOneIndexedParameters(true); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?page=0").build(); + var request = MockServerHttpRequest.get("foo?page=0").build(); assertThat(resolve(resolver, request).getPageNumber()).isEqualTo(0); } @@ -202,10 +202,10 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void returnsCorrectPageSizeForOneIndexParameters() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setOneIndexedParameters(true); - MockServerHttpRequest request = MockServerHttpRequest.get("foo?size=10").build(); + var request = MockServerHttpRequest.get("foo?size=10").build(); assertThat(resolve(resolver, request).getPageSize()).isEqualTo(10); } @@ -213,7 +213,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void detectsFallbackPageableIfNullOneIsConfigured() { - ReactivePageableHandlerMethodArgumentResolver resolver = getReactiveResolver(); + var resolver = getReactiveResolver(); resolver.setFallbackPageable(Pageable.unpaged()); assertThat(resolver.isFallbackPageable(null)).isFalse(); @@ -222,7 +222,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { private static ReactivePageableHandlerMethodArgumentResolver getReactiveResolver() { - ReactivePageableHandlerMethodArgumentResolver resolver = new ReactivePageableHandlerMethodArgumentResolver(); + var resolver = new ReactivePageableHandlerMethodArgumentResolver(); resolver.setMaxPageSize(100); return resolver; } @@ -242,7 +242,7 @@ class ReactivePageableHandlerMethodArgumentResolverUnitTests { assertThat(resolver.supportsParameter(parameter)).isTrue(); - Object value = resolver.resolveArgumentValue(parameter, null, MockServerWebExchange.from(request)); + var value = resolver.resolveArgumentValue(parameter, null, MockServerWebExchange.from(request)); assertThat(value).isEqualTo(pageable); } diff --git a/src/test/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolverUnitTests.java index 67ebfe03b..869554e50 100755 --- a/src/test/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/ReactiveSortHandlerMethodArgumentResolverUnitTests.java @@ -26,7 +26,6 @@ import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.core.MethodParameter; import org.springframework.data.domain.Sort; import org.springframework.data.domain.Sort.Direction; -import org.springframework.data.domain.Sort.Order; import org.springframework.data.web.SortDefault.SortDefaults; import org.springframework.lang.Nullable; import org.springframework.mock.http.server.reactive.MockServerHttpRequest; @@ -50,7 +49,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void supportsSortParameter() { - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); assertThat(resolver.supportsParameter(getParameterOfMethod("supportedMethod"))).isTrue(); } @@ -73,9 +72,9 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void fallbackToGivenDefaultSort() { - MethodParameter parameter = TestUtils.getParameterOfMethod(Controller.class, "unsupportedMethod", String.class); - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); - Sort fallbackSort = Sort.by(Direction.ASC, "ID"); + var parameter = TestUtils.getParameterOfMethod(Controller.class, "unsupportedMethod", String.class); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var fallbackSort = Sort.by(Direction.ASC, "ID"); resolver.setFallbackSort(fallbackSort); assertThat(resolve(resolver, TestUtils.getWebfluxRequest(), parameter)).isEqualTo(fallbackSort); @@ -84,8 +83,8 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void fallbackToDefaultDefaultSort() { - MethodParameter parameter = TestUtils.getParameterOfMethod(Controller.class, "unsupportedMethod", String.class); - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var parameter = TestUtils.getParameterOfMethod(Controller.class, "unsupportedMethod", String.class); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); assertThat(resolve(resolver, TestUtils.getWebfluxRequest(), parameter).isSorted()).isFalse(); } @@ -93,9 +92,9 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void discoversSimpleSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("simpleDefault"); - Sort reference = Sort.by("bar", "foo"); - MockServerHttpRequest request = getRequestWithSort(reference); + var parameter = getParameterOfMethod("simpleDefault"); + var reference = Sort.by("bar", "foo"); + var request = getRequestWithSort(reference); assertSupportedAndResolvedTo(request, parameter, reference); } @@ -103,8 +102,8 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void discoversComplexSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("simpleDefault"); - Sort reference = Sort.by("bar", "foo").and(Sort.by("fizz", "buzz")); + var parameter = getParameterOfMethod("simpleDefault"); + var reference = Sort.by("bar", "foo").and(Sort.by("fizz", "buzz")); assertSupportedAndResolvedTo(getRequestWithSort(reference), parameter, reference); } @@ -112,8 +111,8 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void discoversQualifiedSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("qualifiedSort"); - Sort reference = Sort.by("bar", "foo"); + var parameter = getParameterOfMethod("qualifiedSort"); + var reference = Sort.by("bar", "foo"); assertSupportedAndResolvedTo(getRequestWithSort(reference, "qual"), parameter, reference); } @@ -121,11 +120,11 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void requestForMultipleSortPropertiesIsUnmarshalledCorrectly() { - MockServerHttpRequest request = MockServerHttpRequest.get(String.format("foo?sort=%s", SortDefaultUnitTests.SORT_3)) + var request = MockServerHttpRequest.get(String.format("foo?sort=%s", SortDefaultUnitTests.SORT_3)) .build(); - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); - Sort result = resolve(resolver, request, PARAMETER); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var result = resolve(resolver, request, PARAMETER); assertThat(result).isEqualTo(Sort.by(Direction.ASC, "firstname", "lastname")); } @@ -133,7 +132,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void parsesEmptySortToNull() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=").build(); + var request = MockServerHttpRequest.get("foo?sort=").build(); assertThat(resolve(request, PARAMETER).isSorted()).isFalse(); } @@ -141,7 +140,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void sortParamIsInvalidProperty() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=,DESC").build(); + var request = MockServerHttpRequest.get("foo?sort=,DESC").build(); assertThat(resolve(request, PARAMETER).isSorted()).isFalse(); } @@ -149,7 +148,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void sortParamIsInvalidPropertyWhenMultiProperty() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=property1,,DESC").build(); + var request = MockServerHttpRequest.get("foo?sort=property1,,DESC").build(); assertThat(resolve(request, PARAMETER)).isEqualTo(Sort.by(DESC, "property1")); } @@ -157,9 +156,9 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void rejectsDoubleAnnotatedMethod() { - MethodParameter parameter = getParameterOfMethod("invalid"); + var parameter = getParameterOfMethod("invalid"); - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); assertThat(resolver.supportsParameter(parameter)).isTrue(); assertThatIllegalArgumentException() @@ -173,7 +172,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void sortParamIsEmptyWhenMultiParams() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=property,DESC&sort=").build(); + var request = MockServerHttpRequest.get("foo?sort=property,DESC&sort=").build(); assertThat(resolve(request, PARAMETER)).isEqualTo(Sort.by(DESC, "property")); } @@ -181,7 +180,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void parsesCommaParameterForSort() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=,").build(); + var request = MockServerHttpRequest.get("foo?sort=,").build(); assertThat(resolve(request, PARAMETER).isSorted()).isFalse(); } @@ -189,7 +188,7 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { @Test // DATACMNS-1211 void doesNotReturnNullWhenAnnotatedWithSortDefault() { - MockServerHttpRequest request = MockServerHttpRequest.get("foo?sort=").build(); + var request = MockServerHttpRequest.get("foo?sort=").build(); assertThat(resolve(request, getParameterOfMethod("simpleDefault"))).isEqualTo(Sort.by("firstname", "lastname")); assertThat(resolve(request, getParameterOfMethod("containeredDefault"))).isEqualTo(Sort.by("foo", "bar")); @@ -211,10 +210,10 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { private static void assertSupportedAndResolvedTo(MockServerHttpRequest request, MethodParameter parameter, Sort sort) { - ReactiveSortHandlerMethodArgumentResolver resolver = new ReactiveSortHandlerMethodArgumentResolver(); + var resolver = new ReactiveSortHandlerMethodArgumentResolver(); assertThat(resolver.supportsParameter(parameter)).isTrue(); - Sort resolved = resolve(resolver, request, parameter); + var resolved = resolve(resolver, request, parameter); assertThat(resolved).isEqualTo(sort); } @@ -229,10 +228,10 @@ class ReactiveSortHandlerMethodArgumentResolverUnitTests { return TestUtils.getWebfluxRequest(); } - StringBuilder queryString = new StringBuilder(); - for (Order order : sort) { + var queryString = new StringBuilder(); + for (var order : sort) { - String prefix = StringUtils.hasText(qualifier) ? qualifier + "_" : ""; + var prefix = StringUtils.hasText(qualifier) ? qualifier + "_" : ""; if (queryString.length() != 0) { queryString.append('&'); diff --git a/src/test/java/org/springframework/data/web/SortDefaultUnitTests.java b/src/test/java/org/springframework/data/web/SortDefaultUnitTests.java index 7f18052c6..1beba2935 100755 --- a/src/test/java/org/springframework/data/web/SortDefaultUnitTests.java +++ b/src/test/java/org/springframework/data/web/SortDefaultUnitTests.java @@ -58,8 +58,8 @@ abstract class SortDefaultUnitTests { private static void assertSortStringParsedInto(Sort expected, String... source) { - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); - Sort sort = resolver.parseParameterIntoSort(Arrays.asList(source), ","); + var resolver = new SortHandlerMethodArgumentResolver(); + var sort = resolver.parseParameterIntoSort(Arrays.asList(source), ","); assertThat(sort).isEqualTo(expected); } @@ -87,14 +87,14 @@ abstract class SortDefaultUnitTests { @Test void rejectsNonSortParameter() { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); assertThat(getResolver().supportsParameter(parameter)).isFalse(); } @Test void rejectsDoubleAnnotatedMethod() { - MethodParameter parameter = getParameterOfMethod("invalid"); + var parameter = getParameterOfMethod("invalid"); HandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); assertThat(resolver.supportsParameter(parameter)).isTrue(); @@ -109,8 +109,8 @@ abstract class SortDefaultUnitTests { @Test void discoversContaineredDefault() throws Exception { - MethodParameter parameter = getParameterOfMethod("containeredDefault"); - Sort reference = Sort.by("foo", "bar"); + var parameter = getParameterOfMethod("containeredDefault"); + var reference = Sort.by("foo", "bar"); assertSupportedAndResolvedTo(parameter, reference); } @@ -123,7 +123,7 @@ abstract class SortDefaultUnitTests { private void assertSupportedAndResolvedTo(MethodParameter parameter, Sort sort) throws Exception { - HandlerMethodArgumentResolver resolver = getResolver(); + var resolver = getResolver(); assertThat(resolver.supportsParameter(parameter)).isTrue(); assertThat(resolver.resolveArgument(parameter, null, TestUtils.getWebRequest(), null)).isEqualTo(sort); } diff --git a/src/test/java/org/springframework/data/web/SortHandlerMethodArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/SortHandlerMethodArgumentResolverUnitTests.java index 878f25a9b..294c7f0a2 100755 --- a/src/test/java/org/springframework/data/web/SortHandlerMethodArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/SortHandlerMethodArgumentResolverUnitTests.java @@ -59,31 +59,31 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-351 void fallbackToGivenDefaultSort() { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); - Sort fallbackSort = Sort.by(Direction.ASC, "ID"); + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); + var resolver = new SortHandlerMethodArgumentResolver(); + var fallbackSort = Sort.by(Direction.ASC, "ID"); resolver.setFallbackSort(fallbackSort); - Sort sort = resolver.resolveArgument(parameter, null, new ServletWebRequest(new MockHttpServletRequest()), null); + var sort = resolver.resolveArgument(parameter, null, new ServletWebRequest(new MockHttpServletRequest()), null); assertThat(sort).isEqualTo(fallbackSort); } @Test // DATACMNS-351 void fallbackToDefaultDefaultSort() { - MethodParameter parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); + var parameter = TestUtils.getParameterOfMethod(getControllerClass(), "unsupportedMethod", String.class); + var resolver = new SortHandlerMethodArgumentResolver(); - Sort sort = resolver.resolveArgument(parameter, null, new ServletWebRequest(new MockHttpServletRequest()), null); + var sort = resolver.resolveArgument(parameter, null, new ServletWebRequest(new MockHttpServletRequest()), null); assertThat(sort.isSorted()).isFalse(); } @Test void discoversSimpleSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("simpleDefault"); - Sort reference = Sort.by("bar", "foo"); - NativeWebRequest request = getRequestWithSort(reference); + var parameter = getParameterOfMethod("simpleDefault"); + var reference = Sort.by("bar", "foo"); + var request = getRequestWithSort(reference); assertSupportedAndResolvedTo(request, parameter, reference); } @@ -91,8 +91,8 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test void discoversComplexSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("simpleDefault"); - Sort reference = Sort.by("bar", "foo").and(Sort.by("fizz", "buzz")); + var parameter = getParameterOfMethod("simpleDefault"); + var reference = Sort.by("bar", "foo").and(Sort.by("fizz", "buzz")); assertSupportedAndResolvedTo(getRequestWithSort(reference), parameter, reference); } @@ -100,8 +100,8 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test void discoversQualifiedSortFromRequest() { - MethodParameter parameter = getParameterOfMethod("qualifiedSort"); - Sort reference = Sort.by("bar", "foo"); + var parameter = getParameterOfMethod("qualifiedSort"); + var reference = Sort.by("bar", "foo"); assertSupportedAndResolvedTo(getRequestWithSort(reference, "qual"), parameter, reference); } @@ -109,33 +109,33 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test void returnsNullForSortParameterSetToNothing() { - MethodParameter parameter = getParameterOfMethod("supportedMethod"); + var parameter = getParameterOfMethod("supportedMethod"); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", (String) null); - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); - Sort result = resolver.resolveArgument(parameter, null, new ServletWebRequest(request), null); + var resolver = new SortHandlerMethodArgumentResolver(); + var result = resolver.resolveArgument(parameter, null, new ServletWebRequest(request), null); assertThat(result.isSorted()).isFalse(); } @Test // DATACMNS-366 void requestForMultipleSortPropertiesIsUnmarshalledCorrectly() { - MethodParameter parameter = getParameterOfMethod("supportedMethod"); + var parameter = getParameterOfMethod("supportedMethod"); - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", SORT_3); - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); - Sort result = resolver.resolveArgument(parameter, null, new ServletWebRequest(request), null); + var resolver = new SortHandlerMethodArgumentResolver(); + var result = resolver.resolveArgument(parameter, null, new ServletWebRequest(request), null); assertThat(result).isEqualTo(Sort.by(Direction.ASC, "firstname", "lastname")); } @Test // DATACMNS-408 void parsesEmptySortToNull() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", ""); assertThat(resolveSort(request, PARAMETER).isSorted()).isFalse(); @@ -144,7 +144,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-408 void sortParamIsInvalidProperty() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", ",DESC"); assertThat(resolveSort(request, PARAMETER).isSorted()).isFalse(); @@ -153,7 +153,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-408 void sortParamIsInvalidPropertyWhenMultiProperty() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", "property1,,DESC"); assertThat(resolveSort(request, PARAMETER)).isEqualTo(Sort.by(DESC, "property1")); @@ -162,7 +162,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-408 void sortParamIsEmptyWhenMultiParams() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", "property,DESC"); request.addParameter("sort", ""); @@ -172,7 +172,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-658 void sortParamHandlesSortOrderAndIgnoreCase() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", "property,DESC,IgnoreCase"); request.addParameter("sort", ""); @@ -182,7 +182,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-658 void sortParamHandlesMultiplePropertiesWithSortOrderAndIgnoreCase() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", "property1,property2,DESC,IgnoreCase"); assertThat(resolveSort(request, PARAMETER)) @@ -192,7 +192,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-658 void sortParamHandlesIgnoreCase() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", "property,IgnoreCase"); request.addParameter("sort", ""); @@ -202,7 +202,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-658 void returnsDefaultCaseInsensitive() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", ""); assertThat(resolveSort(request, getParameterOfMethod("simpleDefaultWithDirectionCaseInsensitive"))) @@ -212,7 +212,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-379 void parsesCommaParameterForSort() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", ","); assertThat(resolveSort(request, PARAMETER).isSorted()).isFalse(); @@ -221,7 +221,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-753, DATACMNS-408 void doesNotReturnNullWhenAnnotatedWithSortDefault() throws Exception { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", ""); assertThat(resolveSort(request, getParameterOfMethod("simpleDefault"))).isEqualTo(Sort.by("firstname", "lastname")); @@ -233,7 +233,7 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { Stream.of(".", ".,ASC").forEach(it -> { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); request.addParameter("sort", it); assertThatCode(() -> { @@ -245,8 +245,8 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-1827 void emptyQualifierIsUsedInParameterLookup() { - MethodParameter parameter = getParameterOfMethod("emptyQualifier"); - Sort reference = Sort.by("bar", "foo"); + var parameter = getParameterOfMethod("emptyQualifier"); + var reference = Sort.by("bar", "foo"); assertSupportedAndResolvedTo(getRequestWithSort(reference, ""), parameter, reference); } @@ -254,21 +254,21 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { @Test // DATACMNS-1827 void mergedQualifierIsUsedInParameterLookup() { - MethodParameter parameter = getParameterOfMethod("mergedQualifier"); - Sort reference = Sort.by("bar", "foo"); + var parameter = getParameterOfMethod("mergedQualifier"); + var reference = Sort.by("bar", "foo"); assertSupportedAndResolvedTo(getRequestWithSort(reference, "merged"), parameter, reference); } private static Sort resolveSort(HttpServletRequest request, MethodParameter parameter) throws Exception { - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); + var resolver = new SortHandlerMethodArgumentResolver(); return resolver.resolveArgument(parameter, null, new ServletWebRequest(request), null); } private static void assertSupportedAndResolvedTo(NativeWebRequest request, MethodParameter parameter, Sort sort) { - SortHandlerMethodArgumentResolver resolver = new SortHandlerMethodArgumentResolver(); + var resolver = new SortHandlerMethodArgumentResolver(); assertThat(resolver.supportsParameter(parameter)).isTrue(); try { @@ -284,16 +284,16 @@ class SortHandlerMethodArgumentResolverUnitTests extends SortDefaultUnitTests { private static NativeWebRequest getRequestWithSort(@Nullable Sort sort, @Nullable String qualifier) { - MockHttpServletRequest request = new MockHttpServletRequest(); + var request = new MockHttpServletRequest(); if (sort == null) { return new ServletWebRequest(request); } - for (Order order : sort) { + for (var order : sort) { - String prefix = StringUtils.hasText(qualifier) ? qualifier + "_" : ""; - String suffix = order.isIgnoreCase() ? ",IgnoreCase" : ""; + var prefix = StringUtils.hasText(qualifier) ? qualifier + "_" : ""; + var suffix = order.isIgnoreCase() ? ",IgnoreCase" : ""; request.addParameter(prefix + "sort", String.format("%s,%s%s", order.getProperty(), order.getDirection().name(), suffix)); } diff --git a/src/test/java/org/springframework/data/web/TestUtils.java b/src/test/java/org/springframework/data/web/TestUtils.java index f74fe78e6..606f3e8d0 100644 --- a/src/test/java/org/springframework/data/web/TestUtils.java +++ b/src/test/java/org/springframework/data/web/TestUtils.java @@ -42,7 +42,7 @@ class TestUtils { static MethodParameter getParameterOfMethod(Class controller, String name, Class... argumentTypes) { - Method method = getMethod(controller, name, argumentTypes); + var method = getMethod(controller, name, argumentTypes); return new MethodParameter(method, 0); } diff --git a/src/test/java/org/springframework/data/web/WebTestUtils.java b/src/test/java/org/springframework/data/web/WebTestUtils.java index 8bb0ac22e..61d39c710 100644 --- a/src/test/java/org/springframework/data/web/WebTestUtils.java +++ b/src/test/java/org/springframework/data/web/WebTestUtils.java @@ -43,7 +43,7 @@ public class WebTestUtils { */ public static void initWebTest(HttpServletRequest request) { - ServletRequestAttributes requestAttributes = new ServletRequestAttributes(request); + var requestAttributes = new ServletRequestAttributes(request); RequestContextHolder.setRequestAttributes(requestAttributes); } @@ -66,14 +66,14 @@ public class WebTestUtils { */ public static WebApplicationContext createApplicationContext(ClassLoader classLoader, Class... configClasses) { - AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); + var context = new AnnotationConfigWebApplicationContext(); if (classLoader != null) { context.setClassLoader(classLoader); } context.setServletContext(new MockServletContext()); - for (Class configClass : configClasses) { + for (var configClass : configClasses) { context.register(configClass); } diff --git a/src/test/java/org/springframework/data/web/XmlBeamHttpMessageConverterUnitTests.java b/src/test/java/org/springframework/data/web/XmlBeamHttpMessageConverterUnitTests.java index dcf54badc..b094b5672 100755 --- a/src/test/java/org/springframework/data/web/XmlBeamHttpMessageConverterUnitTests.java +++ b/src/test/java/org/springframework/data/web/XmlBeamHttpMessageConverterUnitTests.java @@ -52,7 +52,7 @@ class XmlBeamHttpMessageConverterUnitTests { preparePayload("DaveMatthews"); - Customer customer = (Customer) converter.read(Customer.class, message); + var customer = (Customer) converter.read(Customer.class, message); assertThat(customer.getFirstname()).isEqualTo("Dave"); assertThat(customer.getLastname()).isEqualTo("Matthews"); @@ -63,7 +63,7 @@ class XmlBeamHttpMessageConverterUnitTests { preparePayload("DaveMatthews"); - Customer customer = (Customer) converter.read(Customer.class, message); + var customer = (Customer) converter.read(Customer.class, message); assertThat(customer.getFirstname()).isEqualTo("Dave"); assertThat(customer.getLastname()).isEqualTo("Matthews"); @@ -94,10 +94,14 @@ class XmlBeamHttpMessageConverterUnitTests { @Test // DATACMNS-1292 void doesNotSupportEntityExpansion() throws Exception { - preparePayload("\n" // - + "\n" // - + "]>&xxe;Matthews"); + // + // + // + preparePayload(""" + + + ]>&xxe;Matthews"""); assertThatExceptionOfType(HttpMessageNotReadableException.class) // .isThrownBy(() -> converter.read(Customer.class, message)) // diff --git a/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java b/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java index bf2f21de8..69d83b361 100755 --- a/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java @@ -20,9 +20,9 @@ import static org.springframework.test.web.servlet.request.MockMvcRequestBuilder import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; import java.util.Arrays; -import java.util.List; import org.junit.jupiter.api.Test; + import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -40,10 +40,7 @@ import org.springframework.data.web.SortHandlerMethodArgumentResolver; import org.springframework.data.web.WebTestUtils; import org.springframework.hateoas.Link; import org.springframework.test.util.ReflectionTestUtils; -import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.setup.MockMvcBuilders; -import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.method.support.HandlerMethodArgumentResolver; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter; import org.springframework.web.util.UriComponentsBuilder; @@ -108,7 +105,7 @@ class EnableSpringDataWebSupportIntegrationTests { void registersBasicBeanDefinitions() throws Exception { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).contains("pageableResolver", "sortResolver"); @@ -120,7 +117,7 @@ class EnableSpringDataWebSupportIntegrationTests { void registersHateoasSpecificBeanDefinitions() throws Exception { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).contains("pagedResourcesAssembler", "pagedResourcesAssemblerArgumentResolver"); assertResolversRegistered(context, PagedResourcesAssemblerArgumentResolver.class); @@ -129,11 +126,11 @@ class EnableSpringDataWebSupportIntegrationTests { @Test // DATACMNS-330 void doesNotRegisterHateoasSpecificComponentsIfHateoasNotPresent() throws Exception { - HidingClassLoader classLoader = HidingClassLoader.hide(Link.class); + var classLoader = HidingClassLoader.hide(Link.class); ApplicationContext context = WebTestUtils.createApplicationContext(classLoader, SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).contains("pageableResolver", "sortResolver"); assertThat(names).doesNotContain("pagedResourcesAssembler", "pagedResourcesAssemblerArgumentResolver"); @@ -143,7 +140,7 @@ class EnableSpringDataWebSupportIntegrationTests { void registersJacksonSpecificBeanDefinitions() throws Exception { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).contains("jacksonGeoModule"); } @@ -154,7 +151,7 @@ class EnableSpringDataWebSupportIntegrationTests { ApplicationContext context = WebTestUtils.createApplicationContext(HidingClassLoader.hide(ObjectMapper.class), SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).doesNotContain("jacksonGeoModule"); } @@ -164,7 +161,7 @@ class EnableSpringDataWebSupportIntegrationTests { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - ConversionService conversionService = context.getBean(ConversionService.class); + var conversionService = context.getBean(ConversionService.class); assertThat(conversionService.canConvert(String.class, Distance.class)).isTrue(); assertThat(conversionService.canConvert(Distance.class, String.class)).isTrue(); @@ -175,10 +172,10 @@ class EnableSpringDataWebSupportIntegrationTests { @Test // DATACMNS-630 void createsProxyForInterfaceBasedControllerMethodParameter() throws Exception { - WebApplicationContext applicationContext = WebTestUtils.createApplicationContext(SampleConfig.class); - MockMvc mvc = MockMvcBuilders.webAppContextSetup(applicationContext).build(); + var applicationContext = WebTestUtils.createApplicationContext(SampleConfig.class); + var mvc = MockMvcBuilders.webAppContextSetup(applicationContext).build(); - UriComponentsBuilder builder = UriComponentsBuilder.fromUriString("/proxy"); + var builder = UriComponentsBuilder.fromUriString("/proxy"); builder.queryParam("name", "Foo"); builder.queryParam("shippingAddresses[0].zipCode", "ZIP"); builder.queryParam("shippingAddresses[0].city", "City"); @@ -194,7 +191,7 @@ class EnableSpringDataWebSupportIntegrationTests { void picksUpWebConfigurationMixins() { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); + var names = Arrays.asList(context.getBeanDefinitionNames()); assertThat(names).contains("sampleBean"); } @@ -203,8 +200,8 @@ class EnableSpringDataWebSupportIntegrationTests { void picksUpPageableResolverCustomizer() { ApplicationContext context = WebTestUtils.createApplicationContext(PageableResolverCustomizerConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); - PageableHandlerMethodArgumentResolver resolver = context.getBean("pageableResolver", PageableHandlerMethodArgumentResolver.class); + var names = Arrays.asList(context.getBeanDefinitionNames()); + var resolver = context.getBean("pageableResolver", PageableHandlerMethodArgumentResolver.class); assertThat(names).contains("testPageableResolverCustomizer"); assertThat((Integer) ReflectionTestUtils.getField(resolver, "maxPageSize")).isEqualTo(100); @@ -214,8 +211,8 @@ class EnableSpringDataWebSupportIntegrationTests { void picksUpSortResolverCustomizer() { ApplicationContext context = WebTestUtils.createApplicationContext(SortResolverCustomizerConfig.class); - List names = Arrays.asList(context.getBeanDefinitionNames()); - SortHandlerMethodArgumentResolver resolver = context.getBean("sortResolver", SortHandlerMethodArgumentResolver.class); + var names = Arrays.asList(context.getBeanDefinitionNames()); + var resolver = context.getBean("sortResolver", SortHandlerMethodArgumentResolver.class); assertThat(names).contains("testSortResolverCustomizer"); assertThat((String) ReflectionTestUtils.getField(resolver, "sortParameter")).isEqualTo("foo"); @@ -226,7 +223,7 @@ class EnableSpringDataWebSupportIntegrationTests { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - RequestMappingHandlerAdapter adapter = context.getBean(RequestMappingHandlerAdapter.class); + var adapter = context.getBean(RequestMappingHandlerAdapter.class); assertThat(adapter.getArgumentResolvers().get(0)).isInstanceOf(ProxyingHandlerMethodArgumentResolver.class); } @@ -234,7 +231,7 @@ class EnableSpringDataWebSupportIntegrationTests { @Test // DATACMNS-1235 void picksUpEntityPathResolverIfRegistered() { - WebApplicationContext context = WebTestUtils.createApplicationContext(CustomEntityPathResolver.class); + var context = WebTestUtils.createApplicationContext(CustomEntityPathResolver.class); assertThat(context.getBean(EntityPathResolver.class)).isEqualTo(CustomEntityPathResolver.resolver); assertThat(context.getBean(QuerydslBindingsFactory.class).getEntityPathResolver()) @@ -243,9 +240,9 @@ class EnableSpringDataWebSupportIntegrationTests { private static void assertResolversRegistered(ApplicationContext context, Class... resolverTypes) { - RequestMappingHandlerAdapter adapter = context.getBean(RequestMappingHandlerAdapter.class); + var adapter = context.getBean(RequestMappingHandlerAdapter.class); assertThat(adapter).isNotNull(); - List resolvers = adapter.getCustomArgumentResolvers(); + var resolvers = adapter.getCustomArgumentResolvers(); Arrays.asList(resolverTypes).forEach(type -> assertThat(resolvers).hasAtLeastOneElementOfType(type)); } diff --git a/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java b/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java index e67a903c2..ecbfc0e57 100755 --- a/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java @@ -37,7 +37,6 @@ import org.springframework.hateoas.IanaLinkRelations; import org.springframework.hateoas.PagedModel; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.context.WebApplicationContext; /** * Integration tests for {@link PagedResourcesAssembler}. @@ -64,12 +63,12 @@ class PageableResourcesAssemblerIntegrationTests { @Test void injectsPagedResourcesAssembler() { - WebApplicationContext context = WebTestUtils.createApplicationContext(Config.class); - SampleController controller = context.getBean(SampleController.class); + var context = WebTestUtils.createApplicationContext(Config.class); + var controller = context.getBean(SampleController.class); assertThat(controller.assembler).isNotNull(); - PagedModel> resources = controller.sample(PageRequest.of(1, 1)); + var resources = controller.sample(PageRequest.of(1, 1)); assertThat(resources.getLink(IanaLinkRelations.PREV)).isNotNull(); assertThat(resources.getLink(IanaLinkRelations.NEXT)).isNotNull(); @@ -79,7 +78,7 @@ class PageableResourcesAssemblerIntegrationTests { @Test // DATACMNS-471 void setsUpPagedResourcesAssemblerFromManualXmlConfig() { - ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("manual.xml", getClass()); + var context = new ClassPathXmlApplicationContext("manual.xml", getClass()); assertThat(context.getBean(PagedResourcesAssembler.class)).isNotNull(); context.close(); } @@ -87,7 +86,7 @@ class PageableResourcesAssemblerIntegrationTests { @Test // DATACMNS-471 void setsUpPagedResourcesAssemblerFromJavaConfigXmlConfig() { - ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("via-config-class.xml", getClass()); + var context = new ClassPathXmlApplicationContext("via-config-class.xml", getClass()); assertThat(context.getBean(PagedResourcesAssembler.class)).isNotNull(); context.close(); } diff --git a/src/test/java/org/springframework/data/web/config/SampleController.java b/src/test/java/org/springframework/data/web/config/SampleController.java index 3870ab1c4..0d826c1fc 100755 --- a/src/test/java/org/springframework/data/web/config/SampleController.java +++ b/src/test/java/org/springframework/data/web/config/SampleController.java @@ -21,7 +21,6 @@ import java.util.Collection; import java.util.Date; import org.springframework.data.web.ProjectedPayload; -import org.springframework.data.web.config.SampleController.SampleDto.Address; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat.ISO; import org.springframework.stereotype.Controller; @@ -40,7 +39,7 @@ class SampleController { assertThat(sampleDto.getName()).isEqualTo("Foo"); assertThat(sampleDto.getDate()).isNotNull(); - Collection
shippingAddresses = sampleDto.getShippingAddresses(); + var shippingAddresses = sampleDto.getShippingAddresses(); assertThat(shippingAddresses).hasSize(1); assertThat(shippingAddresses.iterator().next().getZipCode()).isEqualTo("ZIP"); diff --git a/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java b/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java index 8f3b9ca0c..f49ff5710 100644 --- a/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/SpringDataWebConfigurationIntegrationTests.java @@ -120,7 +120,7 @@ class SpringDataWebConfigurationIntegrationTests { List> configClasses = new ArrayList<>(Arrays.asList(additionalConfigurationClasses)); configClasses.add(SpringDataWebConfiguration.class); - try (AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext( + try (var context = new AnnotationConfigApplicationContext( configClasses.toArray(new Class[configClasses.size()]))) { context.setClassLoader(classLoader); @@ -131,8 +131,8 @@ class SpringDataWebConfigurationIntegrationTests { private static Class loadWithout(Class configurationClass, Class... typesOfPackagesToExclude) throws ClassNotFoundException { - HidingClassLoader hidingClassLoader = HidingClassLoader.hide(typesOfPackagesToExclude); - ShadowingClassLoader loader = new ShadowingClassLoader(hidingClassLoader); + var hidingClassLoader = HidingClassLoader.hide(typesOfPackagesToExclude); + var loader = new ShadowingClassLoader(hidingClassLoader); loader.excludeClass(configurationClass.getName()); return loader.loadClass(configurationClass.getName()); diff --git a/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java index 59773dece..792b9f95d 100755 --- a/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java @@ -26,6 +26,7 @@ import java.util.Optional; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import org.springframework.core.MethodParameter; import org.springframework.core.annotation.AliasFor; import org.springframework.core.annotation.MergedAnnotation; @@ -50,7 +51,6 @@ import org.springframework.web.context.request.ServletWebRequest; import org.springframework.web.servlet.ModelAndView; import com.querydsl.core.types.Predicate; -import com.querydsl.core.types.dsl.BooleanExpression; /** * Unit tests for {@link QuerydslPredicateArgumentResolver}. @@ -100,7 +100,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "rand"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo(QUser.user.firstname.eq("rand")); @@ -112,7 +112,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "rand"); request.addParameter("lastname", "al'thor"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo(QUser.user.firstname.eq("rand").and(QUser.user.lastname.eq("al'thor"))); @@ -123,10 +123,10 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("address.city", "two rivers"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("simpleFind", Predicate.class), null, new ServletWebRequest(request), null); - BooleanExpression eq = QUser.user.address.city.eq("two rivers"); + var eq = QUser.user.address.city.eq("two rivers"); assertThat(predicate).isEqualTo(eq); } @@ -136,7 +136,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("address.city", "tar valon"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("pagedFind", Predicate.class, Pageable.class), + var predicate = resolver.resolveArgument(getMethodParameterFor("pagedFind", Predicate.class, Pageable.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo(QUser.user.address.city.eq("tar valon")); @@ -148,7 +148,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "egwene"); request.addParameter("lastname", "al'vere"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo( @@ -161,7 +161,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "egwene"); request.addParameter("lastname", "al'vere"); - Object predicate = resolver.resolveArgument( + var predicate = resolver.resolveArgument( getMethodParameterFor("specificFindWithMetaAnnotation", Predicate.class), null, new ServletWebRequest(request), null); @@ -174,7 +174,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", "978"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo(QUser.user.inceptionYear.eq(978L)); @@ -185,7 +185,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", new String[] { "978", "998" }); - Object predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo(QUser.user.inceptionYear.in(978L, 998L)); @@ -197,7 +197,7 @@ class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("address.street", "downhill"); request.addParameter("inceptionYear", "973"); - Object predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, + var predicate = resolver.resolveArgument(getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate.toString()).isEqualTo(QUser.user.inceptionYear.eq(973L).toString()); @@ -230,7 +230,7 @@ class QuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1593 void returnsEmptyPredicateForEmptyInput() throws Exception { - MethodParameter parameter = getMethodParameterFor("predicateWithoutAnnotation", Predicate.class); + var parameter = getMethodParameterFor("predicateWithoutAnnotation", Predicate.class); request.addParameter("firstname", ""); @@ -241,7 +241,7 @@ class QuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1635 void forwardsNullValueForNullablePredicate() throws Exception { - MethodParameter parameter = getMethodParameterFor("nullablePredicateWithoutAnnotation", Predicate.class); + var parameter = getMethodParameterFor("nullablePredicateWithoutAnnotation", Predicate.class); request.addParameter("firstname", ""); @@ -251,7 +251,7 @@ class QuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1635 void returnsOptionalIfDeclared() throws Exception { - MethodParameter parameter = getMethodParameterFor("optionalPredicateWithoutAnnotation", Optional.class); + var parameter = getMethodParameterFor("optionalPredicateWithoutAnnotation", Optional.class); request.addParameter("firstname", ""); diff --git a/src/test/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolverUnitTests.java b/src/test/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolverUnitTests.java index e26ed5651..d16d58df1 100755 --- a/src/test/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/querydsl/ReactiveQuerydslPredicateArgumentResolverUnitTests.java @@ -74,9 +74,9 @@ class ReactiveQuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1785 void resolveArgumentShouldCreateSingleStringParameterPredicateCorrectly() { - MockServerHttpRequest request = MockServerHttpRequest.get("").queryParam("firstname", "rand").build(); + var request = MockServerHttpRequest.get("").queryParam("firstname", "rand").build(); - Object predicate = resolver.resolveArgumentValue(getMethodParameterFor("simpleFind", Predicate.class), null, + var predicate = resolver.resolveArgumentValue(getMethodParameterFor("simpleFind", Predicate.class), null, MockServerWebExchange.from(request)); assertThat(predicate).isEqualTo(QUser.user.firstname.eq("rand")); @@ -85,10 +85,10 @@ class ReactiveQuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1785 void resolveArgumentShouldHonorCustomSpecification() { - MockServerHttpRequest request = MockServerHttpRequest.get("").queryParam("firstname", "egwene") + var request = MockServerHttpRequest.get("").queryParam("firstname", "egwene") .queryParam("lastname", "al'vere").build(); - Object predicate = resolver.resolveArgumentValue(getMethodParameterFor("specificFind", Predicate.class), null, + var predicate = resolver.resolveArgumentValue(getMethodParameterFor("specificFind", Predicate.class), null, MockServerWebExchange.from(request)); assertThat(predicate).isEqualTo( @@ -98,9 +98,9 @@ class ReactiveQuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1785 void returnsEmptyPredicateForEmptyInput() { - MethodParameter parameter = getMethodParameterFor("predicateWithoutAnnotation", Predicate.class); + var parameter = getMethodParameterFor("predicateWithoutAnnotation", Predicate.class); - MockServerHttpRequest request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); + var request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); assertThat(resolver.resolveArgumentValue(parameter, null, MockServerWebExchange.from(request))) // .isNotNull(); @@ -109,9 +109,9 @@ class ReactiveQuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1785 void forwardsNullValueForNullablePredicate() { - MethodParameter parameter = getMethodParameterFor("nullablePredicateWithoutAnnotation", Predicate.class); + var parameter = getMethodParameterFor("nullablePredicateWithoutAnnotation", Predicate.class); - MockServerHttpRequest request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); + var request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); assertThat(resolver.resolveArgumentValue(parameter, null, MockServerWebExchange.from(request))).isNull(); } @@ -119,9 +119,9 @@ class ReactiveQuerydslPredicateArgumentResolverUnitTests { @Test // DATACMNS-1785 void returnsOptionalIfDeclared() { - MethodParameter parameter = getMethodParameterFor("optionalPredicateWithoutAnnotation", Optional.class); + var parameter = getMethodParameterFor("optionalPredicateWithoutAnnotation", Optional.class); - MockServerHttpRequest request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); + var request = MockServerHttpRequest.get("").queryParam("firstname", "").build(); assertThat(resolver.resolveArgumentValue(parameter, null, MockServerWebExchange.from(request))) // .isInstanceOfSatisfying(Optional.class, it -> assertThat(it).isEmpty());