diff --git a/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java b/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java index 0bd469e04..7c61eea87 100644 --- a/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java +++ b/src/main/java/org/springframework/data/auditing/AnnotationAuditingMetadata.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,6 +41,7 @@ import org.springframework.util.Assert; * * @author Ranie Jade Ramiso * @author Oliver Gierke + * @author Christoph Strobl * @since 1.5 */ final class AnnotationAuditingMetadata { @@ -51,7 +52,7 @@ final class AnnotationAuditingMetadata { private static final AnnotationFieldFilter LAST_MODIFIED_DATE_FILTER = new AnnotationFieldFilter( LastModifiedDate.class); - private static final Map, AnnotationAuditingMetadata> METADATA_CACHE = new ConcurrentHashMap, AnnotationAuditingMetadata>(); + private static final Map, AnnotationAuditingMetadata> METADATA_CACHE = new ConcurrentHashMap<>(); public static final boolean IS_JDK_8 = org.springframework.util.ClassUtils.isPresent("java.time.Clock", AnnotationAuditingMetadata.class.getClassLoader()); @@ -124,7 +125,7 @@ final class AnnotationAuditingMetadata { * @param type the type to inspect, must not be {@literal null}. */ public static AnnotationAuditingMetadata getMetadata(Class type) { - return METADATA_CACHE.computeIfAbsent(type, it -> new AnnotationAuditingMetadata(it)); + return METADATA_CACHE.computeIfAbsent(type, AnnotationAuditingMetadata::new); } /** diff --git a/src/main/java/org/springframework/data/auditing/AuditingHandler.java b/src/main/java/org/springframework/data/auditing/AuditingHandler.java index 81ec06195..85a82ac40 100644 --- a/src/main/java/org/springframework/data/auditing/AuditingHandler.java +++ b/src/main/java/org/springframework/data/auditing/AuditingHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ package org.springframework.data.auditing; import java.time.temporal.TemporalAccessor; import java.util.Arrays; +import java.util.Collections; import java.util.Optional; import org.joda.time.DateTime; @@ -35,6 +36,7 @@ import org.springframework.util.Assert; * Auditing handler to mark entity objects created and modified. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.5 */ public class AuditingHandler implements InitializingBean { @@ -59,7 +61,7 @@ public class AuditingHandler implements InitializingBean { @Deprecated public AuditingHandler( MappingContext, ? extends PersistentProperty> mappingContext) { - this(new PersistentEntities(Arrays.asList(mappingContext))); + this(new PersistentEntities(Collections.singletonList(mappingContext))); } /** diff --git a/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java b/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java index 3e19b442b..6a532b982 100644 --- a/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java +++ b/src/main/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactory.java @@ -162,9 +162,9 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory DefaultFormattingConversionService conversionService = new DefaultFormattingConversionService(); - JodaTimeConverters.getConvertersToRegister().forEach(it -> conversionService.addConverter(it)); - Jsr310Converters.getConvertersToRegister().forEach(it -> conversionService.addConverter(it)); - ThreeTenBackPortConverters.getConvertersToRegister().forEach(it -> conversionService.addConverter(it)); + JodaTimeConverters.getConvertersToRegister().forEach(conversionService::addConverter); + Jsr310Converters.getConvertersToRegister().forEach(conversionService::addConverter); + ThreeTenBackPortConverters.getConvertersToRegister().forEach(conversionService::addConverter); this.conversionService = conversionService; } @@ -214,9 +214,7 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory @SuppressWarnings("unchecked") protected Optional getAsTemporalAccessor(Optional source, Class target) { - return source.map(it -> { - return target.isInstance(it) ? (T) it : conversionService.convert(it, target); - }); + return source.map(it -> target.isInstance(it) ? (T) it : conversionService.convert(it, target)); } } @@ -302,10 +300,8 @@ class DefaultAuditableBeanWrapperFactory implements AuditableBeanWrapperFactory */ private Optional setField(Optional field, Optional value) { - field.ifPresent(it -> { - ReflectionUtils.setField(it, target, - Optional.class.isAssignableFrom(it.getType()) ? value : value.orElse(null)); - }); + field.ifPresent(it -> ReflectionUtils.setField(it, target, + Optional.class.isAssignableFrom(it.getType()) ? value : value.orElse(null))); return value; } diff --git a/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java b/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java index f93cf550a..14fe64b69 100644 --- a/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java +++ b/src/main/java/org/springframework/data/auditing/IsNewAwareAuditingHandler.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ package org.springframework.data.auditing; import java.util.Arrays; +import java.util.Collections; import java.util.Optional; import org.springframework.data.mapping.PersistentEntity; @@ -33,6 +34,7 @@ import org.springframework.util.Assert; * {@link #markModified(Optional)} based on the {@link IsNewStrategy} determined from the factory. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.5 */ public class IsNewAwareAuditingHandler extends AuditingHandler { @@ -49,7 +51,7 @@ public class IsNewAwareAuditingHandler extends AuditingHandler { @Deprecated public IsNewAwareAuditingHandler( MappingContext, ? extends PersistentProperty> mappingContext) { - this(new PersistentEntities(Arrays.asList(mappingContext))); + this(new PersistentEntities(Collections.singletonList(mappingContext))); } /** diff --git a/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java b/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java index 280ea4997..41e0b605d 100644 --- a/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java +++ b/src/main/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2015 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ import org.springframework.util.Assert; * values. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.8 */ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrapperFactory { @@ -56,7 +57,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap Assert.notNull(entities, "PersistentEntities must not be null!"); this.entities = entities; - this.metadataCache = new HashMap, MappingAuditingMetadata>(); + this.metadataCache = new HashMap<>(); } /* @@ -159,9 +160,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap @Override public Optional setCreatedBy(Optional value) { - metadata.createdByProperty.ifPresent(it -> { - this.accessor.setProperty(it, value); - }); + metadata.createdByProperty.ifPresent(it -> this.accessor.setProperty(it, value)); return value; } @@ -173,9 +172,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap @Override public Optional setCreatedDate(Optional value) { - metadata.createdDateProperty.ifPresent(it -> { - this.accessor.setProperty(it, getDateValueToSet(value, it.getType(), it)); - }); + metadata.createdDateProperty.ifPresent(it -> this.accessor.setProperty(it, getDateValueToSet(value, it.getType(), it))); return value; } @@ -187,9 +184,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap @Override public Optional setLastModifiedBy(Optional value) { - metadata.lastModifiedByProperty.ifPresent(it -> { - this.accessor.setProperty(it, value); - }); + metadata.lastModifiedByProperty.ifPresent(it -> this.accessor.setProperty(it, value)); return value; } @@ -200,7 +195,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap */ @Override public Optional getLastModifiedDate() { - return getAsTemporalAccessor(metadata.lastModifiedDateProperty.map(it -> accessor.getProperty(it)), + return getAsTemporalAccessor(metadata.lastModifiedDateProperty.map(accessor::getProperty), TemporalAccessor.class); } @@ -211,9 +206,7 @@ public class MappingAuditableBeanWrapperFactory extends DefaultAuditableBeanWrap @Override public Optional setLastModifiedDate(Optional value) { - metadata.lastModifiedDateProperty.ifPresent(it -> { - this.accessor.setProperty(it, getDateValueToSet(value, it.getType(), it)); - }); + metadata.lastModifiedDateProperty.ifPresent(it -> this.accessor.setProperty(it, getDateValueToSet(value, it.getType(), it))); return value; } diff --git a/src/main/java/org/springframework/data/convert/ClassGeneratingEntityInstantiator.java b/src/main/java/org/springframework/data/convert/ClassGeneratingEntityInstantiator.java index 1ad9f278d..c62c3d5af 100644 --- a/src/main/java/org/springframework/data/convert/ClassGeneratingEntityInstantiator.java +++ b/src/main/java/org/springframework/data/convert/ClassGeneratingEntityInstantiator.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -48,13 +48,14 @@ import org.springframework.util.ClassUtils; * @author Thomas Darimont * @author Oliver Gierke * @author Phillip Webb + * @author Christoph Strobl * @since 1.11 */ public class ClassGeneratingEntityInstantiator implements EntityInstantiator { private final ObjectInstantiatorClassGenerator generator; - private volatile Map, EntityInstantiator> entityInstantiators = new HashMap, EntityInstantiator>( + private volatile Map, EntityInstantiator> entityInstantiators = new HashMap<>( 32); /** @@ -97,7 +98,7 @@ public class ClassGeneratingEntityInstantiator implements EntityInstantiator { instantiator = createEntityInstantiator(entity); - map = new HashMap, EntityInstantiator>(map); + map = new HashMap<>(map); map.put(entity.getTypeInformation(), instantiator); this.entityInstantiators = map; @@ -217,7 +218,7 @@ public class ClassGeneratingEntityInstantiator implements EntityInstantiator { } return it.getParameters().stream()// - .map(parameter -> provider.getParameterValue(parameter))// + .map(provider::getParameterValue)// .toArray(); }).orElse(EMPTY_ARRAY); diff --git a/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java b/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java index ed307b39f..8e57cabee 100644 --- a/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java +++ b/src/main/java/org/springframework/data/convert/DefaultTypeMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,13 +32,11 @@ import org.springframework.data.util.TypeInformation; import org.springframework.util.Assert; /** - * Default implementation of {@link MongoTypeMapper} allowing configuration of the key to lookup and store type - * information in {@link DBObject}. The key defaults to {@link #DEFAULT_TYPE_KEY}. Actual type-to-{@link String} - * conversion and back is done in {@link #getTypeString(TypeInformation)} or {@link #getTypeInformation(String)} - * respectively. + * Default implementation of {@link TypeMapper}. * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl */ public class DefaultTypeMapper implements TypeMapper { @@ -53,7 +51,7 @@ public class DefaultTypeMapper implements TypeMapper { * @param accessor must not be {@literal null}. */ public DefaultTypeMapper(TypeAliasAccessor accessor) { - this(accessor, Arrays.asList(new SimpleTypeInformationMapper())); + this(accessor, Collections.singletonList(new SimpleTypeInformationMapper())); } /** @@ -151,7 +149,7 @@ public class DefaultTypeMapper implements TypeMapper { return readType(source)// .map(it -> readType(source))// .orElseGet(() -> getFallbackTypeFor(source))// - .map(it -> it.getType()); + .map(TypeInformation::getType); } /** diff --git a/src/main/java/org/springframework/data/convert/EntityInstantiators.java b/src/main/java/org/springframework/data/convert/EntityInstantiators.java index 14fad8a54..737146eff 100644 --- a/src/main/java/org/springframework/data/convert/EntityInstantiators.java +++ b/src/main/java/org/springframework/data/convert/EntityInstantiators.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,6 +27,7 @@ import org.springframework.util.Assert; * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl */ public class EntityInstantiators { @@ -37,7 +38,7 @@ public class EntityInstantiators { * Creates a new {@link EntityInstantiators} using the default fallback instantiator and no custom ones. */ public EntityInstantiators() { - this(Collections., EntityInstantiator> emptyMap()); + this(Collections.emptyMap()); } /** @@ -46,7 +47,7 @@ public class EntityInstantiators { * @param fallback must not be {@literal null}. */ public EntityInstantiators(EntityInstantiator fallback) { - this(fallback, Collections., EntityInstantiator> emptyMap()); + this(fallback, Collections.emptyMap()); } /** diff --git a/src/main/java/org/springframework/data/convert/JodaTimeConverters.java b/src/main/java/org/springframework/data/convert/JodaTimeConverters.java index c3ade59be..67d6212b4 100644 --- a/src/main/java/org/springframework/data/convert/JodaTimeConverters.java +++ b/src/main/java/org/springframework/data/convert/JodaTimeConverters.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2014 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +33,7 @@ import org.springframework.util.ClassUtils; * classpath. * * @author Oliver Gierke + * @author Christoph Strobl */ @SuppressWarnings("deprecation") public abstract class JodaTimeConverters { @@ -50,7 +51,7 @@ public abstract class JodaTimeConverters { return Collections.emptySet(); } - List> converters = new ArrayList>(); + List> converters = new ArrayList<>(); converters.add(LocalDateToDateConverter.INSTANCE); converters.add(LocalDateTimeToDateConverter.INSTANCE); converters.add(DateTimeToDateConverter.INSTANCE); diff --git a/src/main/java/org/springframework/data/convert/Jsr310Converters.java b/src/main/java/org/springframework/data/convert/Jsr310Converters.java index 27f254028..53e3989a7 100644 --- a/src/main/java/org/springframework/data/convert/Jsr310Converters.java +++ b/src/main/java/org/springframework/data/convert/Jsr310Converters.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2016 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,6 +41,7 @@ import org.springframework.util.ClassUtils; * * @author Oliver Gierke * @author Barak Schoster + * @author Christoph Strobl */ public abstract class Jsr310Converters { @@ -58,7 +59,7 @@ public abstract class Jsr310Converters { return Collections.emptySet(); } - List> converters = new ArrayList>(); + List> converters = new ArrayList<>(); converters.add(DateToLocalDateTimeConverter.INSTANCE); converters.add(LocalDateTimeToDateConverter.INSTANCE); converters.add(DateToLocalDateConverter.INSTANCE); diff --git a/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java b/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java index c62987ad1..8c44d317c 100644 --- a/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java +++ b/src/main/java/org/springframework/data/convert/MappingContextTypeInformationMapper.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +33,7 @@ import org.springframework.util.Assert; * inspecting the {@link PersistentEntity} instances for type alias information. * * @author Oliver Gierke + * @author Christoph Strobl */ public class MappingContextTypeInformationMapper implements TypeInformationMapper { @@ -63,9 +64,7 @@ public class MappingContextTypeInformationMapper implements TypeInformationMappe */ public Alias createAliasFor(TypeInformation type) { - return typeMap.computeIfAbsent(type.getRawTypeInformation(), key -> { - return verify(key, mappingContext.getPersistentEntity(key).map(it -> it.getTypeAlias()).orElse(Alias.NONE)); - }); + return typeMap.computeIfAbsent(type.getRawTypeInformation(), key -> verify(key, mappingContext.getPersistentEntity(key).map(PersistentEntity::getTypeAlias).orElse(Alias.NONE))); } /** diff --git a/src/main/java/org/springframework/data/convert/ReflectionEntityInstantiator.java b/src/main/java/org/springframework/data/convert/ReflectionEntityInstantiator.java index ebd4198dc..57ad5684b 100644 --- a/src/main/java/org/springframework/data/convert/ReflectionEntityInstantiator.java +++ b/src/main/java/org/springframework/data/convert/ReflectionEntityInstantiator.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2013 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ import org.springframework.data.mapping.model.ParameterValueProvider; * instance of the entity via reflection. * * @author Oliver Gierke + * @author Christoph Strobl */ public enum ReflectionEntityInstantiator implements EntityInstantiator { @@ -50,7 +51,7 @@ public enum ReflectionEntityInstantiator implements EntityInstantiator { .map(it -> constructor.getParameters().stream()// .map(parameter -> it.getParameterValue(parameter).orElse(Optional.empty()))// .collect(Collectors.toList()))// - .orElseGet(() -> Collections.emptyList()); + .orElseGet(Collections::emptyList); List foo = new ArrayList<>(params.size()); diff --git a/src/main/java/org/springframework/data/convert/ThreeTenBackPortConverters.java b/src/main/java/org/springframework/data/convert/ThreeTenBackPortConverters.java index 12bb7e5fb..f51b45bbc 100644 --- a/src/main/java/org/springframework/data/convert/ThreeTenBackPortConverters.java +++ b/src/main/java/org/springframework/data/convert/ThreeTenBackPortConverters.java @@ -40,6 +40,7 @@ import org.threeten.bp.ZoneId; * the classpath. * * @author Oliver Gierke + * @author Christoph Strobl * @see http://www.threeten.org/threetenbp * @since 1.10 */ @@ -59,7 +60,7 @@ public abstract class ThreeTenBackPortConverters { return Collections.emptySet(); } - List> converters = new ArrayList>(); + List> converters = new ArrayList<>(); converters.add(DateToLocalDateTimeConverter.INSTANCE); converters.add(LocalDateTimeToDateConverter.INSTANCE); converters.add(DateToLocalDateConverter.INSTANCE); diff --git a/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java b/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java index 694cef704..5f294de8c 100644 --- a/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java +++ b/src/main/java/org/springframework/data/crossstore/HashMapChangeSet.java @@ -1,5 +1,5 @@ /* - * Copyright 2011 the original author or authors. + * Copyright 2011.2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ import org.springframework.core.convert.ConversionService; * * @author Thomas Risberg * @author Rod Johnson + * @author Christoph Strobl */ public class HashMapChangeSet implements ChangeSet { @@ -36,7 +37,7 @@ public class HashMapChangeSet implements ChangeSet { } public HashMapChangeSet() { - this(new HashMap()); + this(new HashMap<>()); } public void set(String key, Object o) { diff --git a/src/main/java/org/springframework/data/domain/AbstractAggregateRoot.java b/src/main/java/org/springframework/data/domain/AbstractAggregateRoot.java index 1be2d258d..eb9748241 100644 --- a/src/main/java/org/springframework/data/domain/AbstractAggregateRoot.java +++ b/src/main/java/org/springframework/data/domain/AbstractAggregateRoot.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,7 @@ import org.springframework.util.Assert; * here, rather build your own base class and use the annotations directly. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 */ public class AbstractAggregateRoot { @@ -37,7 +38,7 @@ public class AbstractAggregateRoot { * All domain events currently captured by the aggregate. */ @Getter(onMethod = @__(@DomainEvents)) // - private transient final List domainEvents = new ArrayList(); + private transient final List domainEvents = new ArrayList<>(); /** * Registers the given event object for publication on a call to a Spring Data repository's save method. diff --git a/src/main/java/org/springframework/data/domain/Chunk.java b/src/main/java/org/springframework/data/domain/Chunk.java index 4cbc1c36c..a0fe6713d 100644 --- a/src/main/java/org/springframework/data/domain/Chunk.java +++ b/src/main/java/org/springframework/data/domain/Chunk.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2015 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,7 @@ import org.springframework.util.Assert; * A chunk of data restricted by the configured {@link Pageable}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.8 */ abstract class Chunk implements Slice, Serializable { @@ -159,7 +160,7 @@ abstract class Chunk implements Slice, Serializable { Assert.notNull(converter, "Converter must not be null!"); - return this.stream().map(it -> converter.convert(it)).collect(Collectors.toList()); + return this.stream().map(converter::convert).collect(Collectors.toList()); } /* diff --git a/src/main/java/org/springframework/data/domain/ExampleMatcher.java b/src/main/java/org/springframework/data/domain/ExampleMatcher.java index ffea0c87a..f0f349372 100644 --- a/src/main/java/org/springframework/data/domain/ExampleMatcher.java +++ b/src/main/java/org/springframework/data/domain/ExampleMatcher.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -62,7 +62,7 @@ public class ExampleMatcher { @Wither(AccessLevel.PRIVATE) MatchMode mode; private ExampleMatcher() { - this(NullHandler.IGNORE, StringMatcher.DEFAULT, new PropertySpecifiers(), Collections.emptySet(), false, + this(NullHandler.IGNORE, StringMatcher.DEFAULT, new PropertySpecifiers(), Collections.emptySet(), false, MatchMode.ALL); } @@ -807,7 +807,7 @@ public class ExampleMatcher { @EqualsAndHashCode public static class PropertySpecifiers { - private final Map propertySpecifiers = new LinkedHashMap(); + private final Map propertySpecifiers = new LinkedHashMap<>(); PropertySpecifiers() {} 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 681a07e98..b57ce5c83 100644 --- a/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java +++ b/src/main/java/org/springframework/data/domain/jaxb/PageableAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2014 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,7 @@ import org.springframework.data.domain.jaxb.SpringDataJaxb.SortDto; * {@link XmlAdapter} to convert {@link Pageable} instances int a {@link PageRequestDto} and vice versa. * * @author Oliver Gierke + * @author Christoph Strobl */ class PageableAdapter extends XmlAdapter { @@ -42,7 +43,7 @@ class PageableAdapter extends XmlAdapter { SortDto sortDto = SortAdapter.INSTANCE.marshal(request.getSort()); PageRequestDto dto = new PageRequestDto(); - dto.orders = sortDto == null ? Collections.emptyList() : sortDto.orders; + dto.orders = sortDto == null ? Collections.emptyList() : sortDto.orders; dto.page = request.getPageNumber(); dto.size = request.getPageSize(); 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 55cf5cec7..63f486dda 100644 --- a/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java +++ b/src/main/java/org/springframework/data/geo/format/DistanceFormatter.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2015 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ import org.springframework.util.StringUtils; * {@value #SUPPORTED_METRICS}. * * @author Oliver Gierke + * @author Christoph Strobl */ public enum DistanceFormatter implements Converter, Formatter { @@ -45,7 +46,7 @@ public enum DistanceFormatter implements Converter, Formatter< static { - Map metrics = new LinkedHashMap(); + Map metrics = new LinkedHashMap<>(); for (Metric metric : Metrics.values()) { metrics.put(metric.getAbbreviation(), metric); diff --git a/src/main/java/org/springframework/data/history/Revision.java b/src/main/java/org/springframework/data/history/Revision.java index 7b310822d..607e9824e 100755 --- a/src/main/java/org/springframework/data/history/Revision.java +++ b/src/main/java/org/springframework/data/history/Revision.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,6 +28,7 @@ import java.util.Optional; * * @author Oliver Gierke * @author Philipp Huegelmeyer + * @author Christoph Strobl */ @Value @RequiredArgsConstructor(access = AccessLevel.PRIVATE) @@ -51,7 +52,7 @@ public final class Revision, T> implements Comp * @return */ public static , T> Revision of(RevisionMetadata metadata, T entity) { - return new Revision(metadata, entity); + return new Revision<>(metadata, entity); } /** @@ -81,9 +82,7 @@ public final class Revision, T> implements Comp Optional thisRevisionNumber = getRevisionNumber(); Optional thatRevisionNumber = that.getRevisionNumber(); - return thisRevisionNumber.map(left -> { - return thatRevisionNumber.map(right -> left.compareTo(right)).orElse(1); - }).orElse(-1); + return thisRevisionNumber.map(left -> thatRevisionNumber.map(left::compareTo).orElse(1)).orElse(-1); } /* diff --git a/src/main/java/org/springframework/data/history/Revisions.java b/src/main/java/org/springframework/data/history/Revisions.java index e0557bc4a..daad89bc7 100644 --- a/src/main/java/org/springframework/data/history/Revisions.java +++ b/src/main/java/org/springframework/data/history/Revisions.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,6 +28,7 @@ import org.springframework.util.Assert; * Allows iterating over the underlying {@link Revisions} starting with older revisions. * * @author Oliver Gierke + * @author Christoph Strobl */ public class Revisions, T> implements Iterable> { @@ -64,7 +65,7 @@ public class Revisions, T> implements Iterable< } public static , T> Revisions of(List> revisions) { - return new Revisions(revisions); + return new Revisions<>(revisions); } /** @@ -83,7 +84,7 @@ public class Revisions, T> implements Iterable< * @return */ public Revisions reverse() { - return new Revisions(revisions, !latestLast); + return new Revisions<>(revisions, !latestLast); } /* diff --git a/src/main/java/org/springframework/data/mapping/Alias.java b/src/main/java/org/springframework/data/mapping/Alias.java index 7d393b8bc..84df2bd92 100644 --- a/src/main/java/org/springframework/data/mapping/Alias.java +++ b/src/main/java/org/springframework/data/mapping/Alias.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -23,6 +23,7 @@ import java.util.Optional; /** * @author Oliver Gierke + * @author Christoph Strobl */ @Value @RequiredArgsConstructor(access = AccessLevel.PRIVATE) @@ -57,7 +58,7 @@ public class Alias { } public Optional mapTyped(Class type) { - return value.filter(it -> type.isInstance(it)).map(it -> type.cast(it)); + return value.filter(type::isInstance).map(type::cast); } public String toString() { diff --git a/src/main/java/org/springframework/data/mapping/PreferredConstructor.java b/src/main/java/org/springframework/data/mapping/PreferredConstructor.java index 58bb708d8..df284e624 100644 --- a/src/main/java/org/springframework/data/mapping/PreferredConstructor.java +++ b/src/main/java/org/springframework/data/mapping/PreferredConstructor.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,12 +42,13 @@ import org.springframework.util.StringUtils; * @author Oliver Gierke * @author Jon Brisbin * @author Thomas Darimont + * @author Christoph Strobl */ public class PreferredConstructor> { private final Constructor constructor; private final List> parameters; - private final Map, Boolean> isPropertyParameterCache = new HashMap, Boolean>(); + private final Map, Boolean> isPropertyParameterCache = new HashMap<>(); private final ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); private final Lock read = lock.readLock(); @@ -218,7 +219,7 @@ public class PreferredConstructor> { this.entity = entity; this.enclosingClassCache = Lazy.of(() -> { - Class owningType = entity.orElseThrow(() -> new IllegalStateException()).getType(); + Class owningType = entity.orElseThrow(IllegalStateException::new).getType(); return owningType.isMemberClass() && type.getType().equals(owningType.getEnclosingClass()); }); @@ -230,7 +231,7 @@ public class PreferredConstructor> { return Arrays.stream(annotations)// .filter(it -> it.annotationType() == Value.class)// .findFirst().map(it -> ((Value) it).value())// - .filter(it -> StringUtils.hasText(it)); + .filter(StringUtils::hasText); } /** @@ -286,13 +287,11 @@ public class PreferredConstructor> { */ boolean maps(PersistentProperty property) { - if (!name.isPresent()) { - return false; - } - - return entity// - .flatMap(it -> it.getPersistentProperty(name.get()))// - .map(it -> property.equals(it)).orElse(false); + // +// + return name.map(s -> entity + .flatMap(it -> it.getPersistentProperty(s)) + .map(property::equals).orElse(false)).orElse(false); } private boolean isEnclosingClassParameter() { diff --git a/src/main/java/org/springframework/data/mapping/PropertyPath.java b/src/main/java/org/springframework/data/mapping/PropertyPath.java index b93bb7b8d..9a5a82fbe 100644 --- a/src/main/java/org/springframework/data/mapping/PropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/PropertyPath.java @@ -61,7 +61,7 @@ public class PropertyPath implements Streamable { * @param owningType must not be {@literal null}. */ PropertyPath(String name, Class owningType) { - this(name, ClassTypeInformation.from(owningType), Collections. emptyList()); + this(name, ClassTypeInformation.from(owningType), Collections.emptyList()); } /** 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 a5b689673..59a28c47a 100644 --- a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java +++ b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 by the original author(s). + * Copyright 2011-2017 by the original author(s). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -76,6 +76,7 @@ import org.springframework.util.StringUtils; * @author Tomasz Wysocki * @author Mark Paluch * @author Mikael Klamra + * @author Christoph Strobl */ public abstract class AbstractMappingContext, P extends PersistentProperty

> implements MappingContext, ApplicationEventPublisherAware, InitializingBean { @@ -86,7 +87,7 @@ public abstract class AbstractMappingContext> initialEntitySet = new HashSet>(); + private Set> initialEntitySet = new HashSet<>(); private boolean strict = false; private SimpleTypeHolder simpleTypeHolder = new SimpleTypeHolder(); @@ -147,7 +148,7 @@ public abstract class AbstractMappingContext Optionals.toStream(it))// + .flatMap(Optionals::toStream)// .collect(Collectors.toSet()); } finally { @@ -391,7 +392,7 @@ public abstract class AbstractMappingContext descriptors = new HashMap(); + final Map descriptors = new HashMap<>(); for (PropertyDescriptor descriptor : pds) { descriptors.put(descriptor.getName(), descriptor); } @@ -415,7 +416,7 @@ public abstract class AbstractMappingContext(this, entity)); + applicationEventPublisher.publishEvent(new MappingContextEvent<>(this, entity)); } return Optional.of(entity); @@ -437,7 +438,7 @@ public abstract class AbstractMappingContext>(persistentEntities.keySet())); + return Collections.unmodifiableSet(new HashSet<>(persistentEntities.keySet())); } finally { read.unlock(); @@ -478,7 +479,7 @@ public abstract class AbstractMappingContext addPersistentEntity(it)); + initialEntitySet.forEach(this::addPersistentEntity); } /** @@ -551,13 +552,13 @@ public abstract class AbstractMappingContext entity.addAssociation(it)); + property.getAssociation().ifPresent(entity::addAssociation); if (entity.getType().equals(property.getRawType())) { return; } - property.getPersistentEntityType().forEach(it -> addPersistentEntity(it)); + property.getPersistentEntityType().forEach(AbstractMappingContext.this::addPersistentEntity); } } 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 4f2496207..ef474de74 100644 --- a/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java +++ b/src/main/java/org/springframework/data/mapping/context/DefaultPersistentPropertyPath.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.springframework.util.StringUtils; * Abstraction of a path of {@link PersistentProperty}s. * * @author Oliver Gierke + * @author Christoph Strobl */ class DefaultPersistentPropertyPath> implements PersistentPropertyPath { @@ -77,7 +78,7 @@ class DefaultPersistentPropertyPath> implements Assert.notNull(property, "Property must not be null!"); if (isEmpty()) { - return new DefaultPersistentPropertyPath<>(Arrays.asList(property)); + return new DefaultPersistentPropertyPath<>(Collections.singletonList(property)); } Class leafPropertyType = getLeafProperty().getActualType(); @@ -121,8 +122,8 @@ class DefaultPersistentPropertyPath> implements public String toPath(String delimiter, Converter converter) { @SuppressWarnings("unchecked") - Converter converterToUse = (Converter) (converter == null - ? PropertyNameConverter.INSTANCE : converter); + Converter converterToUse = converter == null + ? PropertyNameConverter.INSTANCE : converter; String delimiterToUse = delimiter == null ? "." : delimiter; List result = new ArrayList<>(); diff --git a/src/main/java/org/springframework/data/mapping/context/MappingContextIsNewStrategyFactory.java b/src/main/java/org/springframework/data/mapping/context/MappingContextIsNewStrategyFactory.java index d199f1b4b..3eac2a575 100644 --- a/src/main/java/org/springframework/data/mapping/context/MappingContextIsNewStrategyFactory.java +++ b/src/main/java/org/springframework/data/mapping/context/MappingContextIsNewStrategyFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ import lombok.NonNull; import lombok.RequiredArgsConstructor; import java.util.Arrays; +import java.util.Collections; import java.util.Optional; import java.util.function.Function; @@ -37,6 +38,7 @@ import org.springframework.util.Assert; * value of 0 in case of a version property. * * @author Oliver Gierke + * @author Christoph Strobl */ public class MappingContextIsNewStrategyFactory extends IsNewStrategyFactorySupport { @@ -50,7 +52,7 @@ public class MappingContextIsNewStrategyFactory extends IsNewStrategyFactorySupp */ @Deprecated public MappingContextIsNewStrategyFactory(MappingContext, ?> context) { - this(new PersistentEntities(Arrays.asList(context))); + this(new PersistentEntities(Collections.singletonList(context))); } /** @@ -73,7 +75,7 @@ public class MappingContextIsNewStrategyFactory extends IsNewStrategyFactorySupp protected IsNewStrategy doGetIsNewStrategy(Class type) { return context.getPersistentEntity(type)// - .flatMap(it -> foo(it))// + .flatMap(MappingContextIsNewStrategyFactory::foo)// .orElseThrow(() -> new MappingException(String.format("Cannot determine IsNewStrategy for type %s!", type))); } 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 f43ae97c7..e411d1d56 100644 --- a/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java +++ b/src/main/java/org/springframework/data/mapping/model/AbstractPersistentProperty.java @@ -72,7 +72,7 @@ public abstract class AbstractPersistentProperty

this.association = isAssociation() ? Optional.of(createAssociation()) : Optional.empty(); this.owner = owner; this.simpleTypeHolder = simpleTypeHolder; - this.hashCode = Lazy.of(() -> property.hashCode()); + this.hashCode = Lazy.of(property::hashCode); } protected abstract Association

createAssociation(); @@ -125,7 +125,7 @@ public abstract class AbstractPersistentProperty

} TypeInformation candidate = getTypeInformationIfEntityCandidate(); - return candidate != null ? Collections.singleton(candidate) : Collections.>emptySet(); + return candidate != null ? Collections.singleton(candidate) : Collections.emptySet(); } private TypeInformation getTypeInformationIfEntityCandidate() { @@ -267,7 +267,7 @@ public abstract class AbstractPersistentProperty

*/ @Override public Class getMapValueType() { - return isMap() ? information.getMapValueType().map(it -> it.getType()).orElse(null) : null; + return isMap() ? information.getMapValueType().map(TypeInformation::getType).orElse(null) : null; } /* 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 bc5fd8ee8..9a337934a 100644 --- a/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java +++ b/src/main/java/org/springframework/data/mapping/model/AnnotationBasedPersistentProperty.java @@ -83,7 +83,7 @@ public abstract class AnnotationBasedPersistentProperty

{ @@ -221,7 +221,7 @@ public abstract class AnnotationBasedPersistentProperty

it.map(inner -> AnnotatedElementUtils.findMergedAnnotation(inner, annotationType)))// - .flatMap(it -> Optionals.toStream(it))// + .flatMap(Optionals::toStream)// .findFirst()); } @@ -281,12 +281,15 @@ public abstract class AnnotationBasedPersistentProperty

Optionals.toStream(it))// + String builder = annotationCache.values().stream()// + .flatMap(Optionals::toStream)// .map(Object::toString)// - .collect(Collectors.joining(" "))); + .collect(Collectors.joining(" ")); - return builder.toString() + super.toString(); + return builder// +// +// + + super.toString(); } private Stream> getAccessors() { diff --git a/src/main/java/org/springframework/data/mapping/model/BasicPersistentEntity.java b/src/main/java/org/springframework/data/mapping/model/BasicPersistentEntity.java index def7da1b7..ef167ec91 100644 --- a/src/main/java/org/springframework/data/mapping/model/BasicPersistentEntity.java +++ b/src/main/java/org/springframework/data/mapping/model/BasicPersistentEntity.java @@ -109,7 +109,7 @@ public class BasicPersistentEntity> implement this.comparator = comparator; this.constructor = new PreferredConstructorDiscoverer<>(this).getConstructor(); this.associations = comparator.>> map(it -> new TreeSet<>(new AssociationComparator<>(it))) - .orElseGet(() -> new HashSet<>()); + .orElseGet(HashSet::new); this.propertyCache = new HashMap<>(); this.annotationCache = new HashMap<>(); @@ -118,7 +118,7 @@ public class BasicPersistentEntity> implement this.typeAlias = Lazy.of(() -> Alias .ofOptional(Optional.ofNullable(AnnotatedElementUtils.findMergedAnnotation(getType(), TypeAlias.class))// .map(TypeAlias::value)// - .filter(it -> StringUtils.hasText(it)))); + .filter(StringUtils::hasText))); } /* @@ -338,7 +338,7 @@ public class BasicPersistentEntity> implement Assert.notNull(handler, "PropertyHandler must not be null!"); - getPersistentProperties().forEach(it -> handler.doWithPersistentProperty(it)); + getPersistentProperties().forEach(handler::doWithPersistentProperty); } /* @@ -350,7 +350,7 @@ public class BasicPersistentEntity> implement Assert.notNull(handler, "Handler must not be null!"); - getPersistentProperties().forEach(it -> handler.doWithPersistentProperty(it)); + getPersistentProperties().forEach(handler::doWithPersistentProperty); } /* @@ -416,7 +416,7 @@ public class BasicPersistentEntity> implement * @see org.springframework.data.mapping.MutablePersistentEntity#verify() */ public void verify() { - comparator.ifPresent(it -> Collections.sort(properties, it)); + comparator.ifPresent(it -> properties.sort(it)); } /* 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 7cb87a325..6f4c2ebbf 100644 --- a/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java +++ b/src/main/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactory.java @@ -36,6 +36,7 @@ import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Function; import java.util.stream.Collectors; import org.springframework.asm.ClassWriter; @@ -66,7 +67,7 @@ import org.springframework.util.ReflectionUtils; */ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropertyAccessorFactory { - private volatile Map, Class> propertyAccessorClasses = new HashMap, Class>( + private volatile Map, Class> propertyAccessorClasses = new HashMap<>( 32); private volatile Map, Constructor> constructorMap = new HashMap<>(32); @@ -303,25 +304,15 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static List> getPersistentProperties(PersistentEntity entity) { - final List> persistentProperties = new ArrayList>(); + final List> persistentProperties = new ArrayList<>(); - entity.doWithAssociations(new SimpleAssociationHandler() { - - @Override - public void doWithAssociation(Association> association) { - if (association.getInverse() != null) { - persistentProperties.add(association.getInverse()); - } + entity.doWithAssociations((SimpleAssociationHandler) association -> { + if (association.getInverse() != null) { + persistentProperties.add(association.getInverse()); } }); - entity.doWithProperties(new SimplePropertyHandler() { - - @Override - public void doWithPersistentProperty(PersistentProperty property) { - persistentProperties.add(property); - } - }); + entity.doWithProperties((SimplePropertyHandler) property -> persistentProperties.add(property)); return persistentProperties; } @@ -360,15 +351,10 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert for (PersistentProperty property : persistentProperties) { - property.getSetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> { - cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC, setterName(property), - referenceName(JAVA_LANG_INVOKE_METHOD_HANDLE), null, null).visitEnd(); - }); - property.getGetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> { - - cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC, getterName(property), - referenceName(JAVA_LANG_INVOKE_METHOD_HANDLE), null, null).visitEnd(); - }); + property.getSetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC, setterName(property), + referenceName(JAVA_LANG_INVOKE_METHOD_HANDLE), null, null).visitEnd()); + property.getGetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> cw.visitField(ACC_PRIVATE + ACC_FINAL + ACC_STATIC, getterName(property), + referenceName(JAVA_LANG_INVOKE_METHOD_HANDLE), null, null).visitEnd()); property.getField().filter(it -> generateSetterMethodHandle(entity, it)).ifPresent(it -> { @@ -497,18 +483,12 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert if (property.usePropertyAccess()) { - property.getGetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> { - visitPropertyGetterInitializer(property, mv, entityClasses, internalClassName); - }); + property.getGetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> visitPropertyGetterInitializer(property, mv, entityClasses, internalClassName)); - property.getSetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> { - visitPropertySetterInitializer(property, mv, entityClasses, internalClassName); - }); + property.getSetter().filter(it -> generateMethodHandle(entity, it)).ifPresent(it -> visitPropertySetterInitializer(property, mv, entityClasses, internalClassName)); } - property.getField().filter(it -> generateSetterMethodHandle(entity, it)).ifPresent(it -> { - visitFieldGetterSetterInitializer(property, mv, entityClasses, internalClassName); - }); + property.getField().filter(it -> generateSetterMethodHandle(entity, it)).ifPresent(it -> visitFieldGetterSetterInitializer(property, mv, entityClasses, internalClassName)); } mv.visitLabel(l1); @@ -1249,7 +1229,7 @@ public class ClassGeneratingPropertyAccessorFactory implements PersistentPropert private static Map createPropertyStackMap( List> persistentProperties) { - Map stackmap = new HashMap(); + Map stackmap = new HashMap<>(); for (PersistentProperty property : persistentProperties) { stackmap.put(property.getName(), new PropertyStackAddress(new Label(), property.getName().hashCode())); diff --git a/src/main/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessor.java b/src/main/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessor.java index 334d7bacb..949ddddf9 100644 --- a/src/main/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessor.java +++ b/src/main/java/org/springframework/data/mapping/model/IdPropertyIdentifierAccessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2014 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -57,6 +57,6 @@ public class IdPropertyIdentifierAccessor implements IdentifierAccessor { * @see org.springframework.data.keyvalue.core.IdentifierAccessor#getIdentifier() */ public Optional getIdentifier() { - return idProperty.flatMap(it -> accessor.getProperty(it)); + return idProperty.flatMap(accessor::getProperty); } } 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 0f22b1fbf..8fe07c60b 100644 --- a/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java +++ b/src/main/java/org/springframework/data/mapping/model/MappingInstantiationException.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2013 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -29,6 +29,7 @@ import org.springframework.data.mapping.PreferredConstructor; * * @author Oliver Gierke * @author Jon Brisbin + * @author Christoph Strobl */ public class MappingInstantiationException extends RuntimeException { @@ -57,13 +58,13 @@ public class MappingInstantiationException extends RuntimeException { super(buildExceptionMessage(entity, arguments.stream(), message), cause); - this.entityType = entity.map(it -> it.getType()).orElse(null); - this.constructor = entity.flatMap(it -> it.getPersistenceConstructor()).map(c -> c.getConstructor()).orElse(null); + this.entityType = entity.map(PersistentEntity::getType).orElse(null); + this.constructor = entity.flatMap(PersistentEntity::getPersistenceConstructor).map(PreferredConstructor::getConstructor).orElse(null); this.constructorArguments = arguments; } - private static final String buildExceptionMessage(Optional> entity, Stream arguments, - String defaultMessage) { + private static String buildExceptionMessage(Optional> entity, Stream arguments, + String defaultMessage) { return entity.map(it -> { 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 d192875ed..90811d193 100644 --- a/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java +++ b/src/main/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.springframework.util.Assert; * expression evaluation. * * @author Oliver Gierke + * @author Christoph Strobl */ public class PersistentEntityParameterValueProvider

> implements ParameterValueProvider

{ @@ -72,7 +73,7 @@ public class PersistentEntityParameterValueProvider

entity.getPersistentProperty(it))// + .flatMap(entity::getPersistentProperty)// .orElseThrow(() -> new MappingException( String.format("No property %s found on entity %s to bind constructor parameter to!", parameter.getName(), entity.getType())))); 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 244673c1b..f39e7a634 100644 --- a/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java +++ b/src/main/java/org/springframework/data/mapping/model/PreferredConstructorDiscoverer.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 by the original author(s). + * Copyright 2011-2017 by the original author(s). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +33,7 @@ import org.springframework.data.util.TypeInformation; * Helper class to find a {@link PreferredConstructor}. * * @author Oliver Gierke + * @author Christoph Strobl */ public class PreferredConstructorDiscoverer> { @@ -104,7 +105,7 @@ public class PreferredConstructorDiscoverer> List> parameterTypes = typeInformation.getParameterTypes(constructor); if (parameterTypes.isEmpty()) { - return new PreferredConstructor((Constructor) constructor); + return new PreferredConstructor<>((Constructor) constructor); } String[] parameterNames = discoverer.getParameterNames(constructor); @@ -121,7 +122,7 @@ public class PreferredConstructorDiscoverer> parameters[i] = new Parameter(name, type, annotations, entity); } - return new PreferredConstructor((Constructor) constructor, parameters); + return new PreferredConstructor<>((Constructor) constructor, parameters); } /** 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 a2063a988..25d2b6cd0 100644 --- a/src/main/java/org/springframework/data/mapping/model/Property.java +++ b/src/main/java/org/springframework/data/mapping/model/Property.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ package org.springframework.data.mapping.model; import lombok.Getter; import lombok.RequiredArgsConstructor; +import java.beans.FeatureDescriptor; import java.beans.PropertyDescriptor; import java.lang.reflect.Field; import java.lang.reflect.Method; @@ -28,6 +29,7 @@ import org.springframework.util.Assert; /** * @author Oliver Gierke + * @author Christoph Strobl */ @RequiredArgsConstructor public class Property { @@ -42,10 +44,10 @@ public class Property { this.field = field; this.descriptor = descriptor; - this.hashCode = Lazy.of(() -> computeHashCode()); + this.hashCode = Lazy.of(this::computeHashCode); this.rawType = Lazy - .of(() -> field.>map(Field::getType).orElseGet(() -> descriptor.map(it -> it.getPropertyType())// - .orElseThrow(() -> new IllegalStateException()))); + .of(() -> field.>map(Field::getType).orElseGet(() -> descriptor.map(PropertyDescriptor::getPropertyType)// + .orElseThrow(IllegalStateException::new))); } public static Property of(Field field) { @@ -70,12 +72,12 @@ public class Property { } public Optional getGetter() { - return descriptor.map(it -> it.getReadMethod())// + return descriptor.map(PropertyDescriptor::getReadMethod)// .filter(it -> getType().isAssignableFrom(it.getReturnType())); } public Optional getSetter() { - return descriptor.map(it -> it.getWriteMethod())// + return descriptor.map(PropertyDescriptor::getWriteMethod)// .filter(it -> it.getParameterTypes()[0].isAssignableFrom(getType())); } @@ -87,8 +89,8 @@ public class Property { * @return */ public String getName() { - return field.map(Field::getName).orElseGet(() -> descriptor.map(it -> it.getName())// - .orElseThrow(() -> new IllegalStateException())); + return field.map(Field::getName).orElseGet(() -> descriptor.map(FeatureDescriptor::getName)// + .orElseThrow(IllegalStateException::new)); } public Class getType() { @@ -97,8 +99,8 @@ public class Property { private int computeHashCode() { - return this.field.map(it -> it.hashCode()) - .orElseGet(() -> this.descriptor.map(it -> it.hashCode()).orElseThrow(() -> new IllegalStateException())); + return this.field.map(Field::hashCode) + .orElseGet(() -> this.descriptor.map(PropertyDescriptor::hashCode).orElseThrow(IllegalStateException::new)); } /* @@ -137,6 +139,6 @@ public class Property { @Override public String toString() { return field.map(Object::toString) - .orElseGet(() -> descriptor.map(Object::toString).orElseThrow(() -> new IllegalStateException())); + .orElseGet(() -> descriptor.map(Object::toString).orElseThrow(IllegalStateException::new)); } } 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 152928777..3437d28d5 100644 --- a/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java +++ b/src/main/java/org/springframework/data/mapping/model/SimpleTypeHolder.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 by the original author(s). + * Copyright 2011-2017 by the original author(s). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,10 +28,11 @@ import org.springframework.util.Assert; * Simple container to hold a set of types to be considered simple types. * * @author Oliver Gierke + * @author Christoph Strobl */ public class SimpleTypeHolder { - private static final Set> DEFAULTS = new HashSet>(); + private static final Set> DEFAULTS = new HashSet<>(); static { DEFAULTS.add(boolean.class); @@ -74,7 +75,7 @@ public class SimpleTypeHolder { */ @SuppressWarnings("unchecked") public SimpleTypeHolder() { - this(Collections.EMPTY_SET, true); + this(Collections.emptySet(), true); } /** @@ -87,7 +88,7 @@ public class SimpleTypeHolder { public SimpleTypeHolder(Set> customSimpleTypes, boolean registerDefaults) { Assert.notNull(customSimpleTypes, "CustomSimpleTypes must not be null!"); - this.simpleTypes = new CopyOnWriteArraySet>(customSimpleTypes); + this.simpleTypes = new CopyOnWriteArraySet<>(customSimpleTypes); if (registerDefaults) { this.simpleTypes.addAll(DEFAULTS); @@ -105,7 +106,7 @@ public class SimpleTypeHolder { Assert.notNull(customSimpleTypes, "CustomSimpleTypes must not be null!"); Assert.notNull(source, "SourceTypeHolder must not be null!"); - this.simpleTypes = new CopyOnWriteArraySet>(customSimpleTypes); + this.simpleTypes = new CopyOnWriteArraySet<>(customSimpleTypes); this.simpleTypes.addAll(source.simpleTypes); } diff --git a/src/main/java/org/springframework/data/projection/Accessor.java b/src/main/java/org/springframework/data/projection/Accessor.java index dc0602562..04ab154b9 100644 --- a/src/main/java/org/springframework/data/projection/Accessor.java +++ b/src/main/java/org/springframework/data/projection/Accessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,6 +25,7 @@ import org.springframework.util.Assert; * Helper value to abstract an accessor. * * @author Oliver Gierke + * @author Christoph Strobl * @soundtrack Benny Greb - Soulfood (Live) * @since 1.13 */ @@ -46,7 +47,7 @@ public final class Accessor { this.descriptor = BeanUtils.findPropertyForMethod(method); this.method = method; - Assert.notNull(descriptor, String.format("Invoked method %s is no accessor method!", method)); + Assert.notNull(descriptor, () -> String.format("Invoked method %s is no accessor method!", method)); } /** diff --git a/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java b/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java index 17b432695..901ba2b7a 100644 --- a/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java +++ b/src/main/java/org/springframework/data/projection/DefaultProjectionInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,11 +20,9 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Set; import java.util.stream.Collectors; import org.springframework.beans.BeanUtils; -import org.springframework.data.util.ReflectionUtils; import org.springframework.util.Assert; /** @@ -32,6 +30,7 @@ import org.springframework.util.Assert; * properties. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.12 */ class DefaultProjectionInformation implements ProjectionInformation { @@ -102,7 +101,7 @@ class DefaultProjectionInformation implements ProjectionInformation { */ private static List collectDescriptors(Class type) { - List result = new ArrayList(); + List result = new ArrayList<>(); result.addAll(Arrays.stream(BeanUtils.getPropertyDescriptors(type))// .filter(it -> !hasDefaultGetter(it))// .collect(Collectors.toList())); diff --git a/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java b/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java index cd31e0622..f4c407769 100644 --- a/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java +++ b/src/main/java/org/springframework/data/projection/ProxyProjectionFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ import org.springframework.util.ClassUtils; * types. * * @author Oliver Gierke + * @author Christoph Strobl * @see SpelAwareProxyProjectionFactory * @since 1.10 */ @@ -55,7 +56,7 @@ class ProxyProjectionFactory implements ProjectionFactory, ResourceLoaderAware, */ protected ProxyProjectionFactory() { - this.factories = new ArrayList(); + this.factories = new ArrayList<>(); this.factories.add(MapAccessingMethodInterceptorFactory.INSTANCE); this.factories.add(PropertyAccessingMethodInvokerFactory.INSTANCE); } diff --git a/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java b/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java index 7ad511b57..1af229b33 100644 --- a/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java +++ b/src/main/java/org/springframework/data/projection/SpelAwareProxyProjectionFactory.java @@ -41,7 +41,7 @@ import org.springframework.util.ReflectionUtils; */ public class SpelAwareProxyProjectionFactory extends ProxyProjectionFactory implements BeanFactoryAware { - private final Map, Boolean> typeCache = new HashMap, Boolean>(); + private final Map, Boolean> typeCache = new HashMap<>(); private final SpelExpressionParser parser = new SpelExpressionParser(); private BeanFactory beanFactory; diff --git a/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java b/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java index 74220c7f2..b4f8084e0 100644 --- a/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java +++ b/src/main/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptor.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2015 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,6 +41,7 @@ import org.springframework.util.StringUtils; * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl * @see 1.10 */ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { @@ -98,7 +99,7 @@ class SpelEvaluatingMethodInterceptor implements MethodInterceptor { private static Map potentiallyCreateExpressionsForMethodsOnTargetInterface( SpelExpressionParser parser, Class targetInterface) { - Map expressions = new HashMap(); + Map expressions = new HashMap<>(); for (Method method : targetInterface.getMethods()) { diff --git a/src/main/java/org/springframework/data/querydsl/QSort.java b/src/main/java/org/springframework/data/querydsl/QSort.java index 85aa1b54f..de77516be 100644 --- a/src/main/java/org/springframework/data/querydsl/QSort.java +++ b/src/main/java/org/springframework/data/querydsl/QSort.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2015 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -131,7 +131,7 @@ public class QSort extends Sort implements Serializable { Assert.notEmpty(orderSpecifiers, "OrderSpecifiers must not be null or empty!"); - List> newOrderSpecifiers = new ArrayList>(this.orderSpecifiers); + List> newOrderSpecifiers = new ArrayList<>(this.orderSpecifiers); newOrderSpecifiers.addAll(orderSpecifiers); return new QSort(newOrderSpecifiers); 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 e6b56a865..43aa18849 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java +++ b/src/main/java/org/springframework/data/querydsl/binding/PropertyPathInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -37,6 +37,7 @@ import com.querydsl.core.types.dsl.CollectionPathBase; * {@link PropertyPath} based implementation of {@link PathInformation}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 */ @ToString @@ -125,9 +126,9 @@ class PropertyPathInformation implements PathInformation { private static Path reifyPath(EntityPathResolver resolver, PropertyPath path, Optional> base) { Optional> map = base.filter(it -> it instanceof CollectionPathBase) - .map(it -> CollectionPathBase.class.cast(it))// + .map(CollectionPathBase.class::cast)// .map(CollectionPathBase::any)// - .map(it -> Path.class.cast(it))// + .map(Path.class::cast)// .map(it -> reifyPath(resolver, path, Optional.of(it))); return map.orElseGet(() -> { 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 77d17ca04..e7eaad8a4 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindings.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -79,8 +79,8 @@ public class QuerydslBindings { */ public QuerydslBindings() { - this.pathSpecs = new LinkedHashMap>(); - this.typeSpecs = new LinkedHashMap, PathAndBinding>(); + this.pathSpecs = new LinkedHashMap<>(); + this.typeSpecs = new LinkedHashMap<>(); this.whiteList = new HashSet<>(); this.blackList = new HashSet<>(); this.aliases = new HashSet<>(); @@ -94,7 +94,7 @@ public class QuerydslBindings { * @return */ public final , S> AliasingPathBinder bind(T path) { - return new AliasingPathBinder(path); + return new AliasingPathBinder<>(path); } /** @@ -105,7 +105,7 @@ public class QuerydslBindings { */ @SafeVarargs public final , S> PathBinder bind(T... paths) { - return new PathBinder(paths); + return new PathBinder<>(paths); } /** @@ -231,7 +231,7 @@ public class QuerydslBindings { Assert.notNull(path, "PropertyPath must not be null!"); - return Optional.ofNullable(pathSpecs.get(path.toDotPath())).flatMap(it -> it.getPath()); + return Optional.ofNullable(pathSpecs.get(path.toDotPath())).flatMap(PathAndBinding::getPath); } /** @@ -252,7 +252,7 @@ public class QuerydslBindings { if (pathSpecs.containsKey(path)) { return pathSpecs.get(path).getPath()// - .map(it -> QuerydslPathInformation.of(it))// + .map(QuerydslPathInformation::of)// .orElse(null); } @@ -427,7 +427,7 @@ public class QuerydslBindings { public AliasingPathBinder as(String alias) { Assert.hasText(alias, "Alias must not be null or empty!"); - return new AliasingPathBinder(alias, path); + return new AliasingPathBinder<>(alias, path); } /** @@ -472,25 +472,13 @@ public class QuerydslBindings { public

> void firstOptional(OptionalValueBinding binding) { Assert.notNull(binding, "Binding must not be null!"); - all(new MultiValueBinding() { - - @Override - public Optional bind(P path, Collection value) { - return binding.bind(path, Optionals.next(value.iterator())); - } - }); + all((MultiValueBinding) (path, value) -> binding.bind(path, Optionals.next(value.iterator()))); } public

> void first(SingleValueBinding binding) { Assert.notNull(binding, "Binding must not be null!"); - all(new MultiValueBinding() { - - @Override - public Optional bind(P path, Collection value) { - return Optionals.next(value.iterator()).flatMap(t -> binding.bind(path, t)); - } - }); + all((MultiValueBinding) (path, value) -> Optionals.next(value.iterator()).flatMap(t -> binding.bind(path, t))); } /** @@ -520,15 +508,15 @@ public class QuerydslBindings { @NonNull Optional> binding; public static > PathAndBinding withPath(P path) { - return new PathAndBinding(Optional.of(path), Optional.empty()); + return new PathAndBinding<>(Optional.of(path), Optional.empty()); } public static > PathAndBinding withoutPath() { - return new PathAndBinding(Optional.empty(), Optional.empty()); + return new PathAndBinding<>(Optional.empty(), Optional.empty()); } public PathAndBinding with(MultiValueBinding binding) { - return new PathAndBinding(path, Optional.of(binding)); + return new PathAndBinding<>(path, Optional.of(binding)); } } } 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 81a799ce2..f145a9349 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,6 +36,7 @@ import com.querydsl.core.types.EntityPath; * Factory to create {@link QuerydslBindings} using an {@link EntityPathResolver}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.11 */ public class QuerydslBindingsFactory implements ApplicationContextAware { @@ -58,7 +59,7 @@ public class QuerydslBindingsFactory implements ApplicationContextAware { Assert.notNull(entityPathResolver, "EntityPathResolver must not be null!"); this.entityPathResolver = entityPathResolver; - this.entityPaths = new ConcurrentReferenceHashMap, EntityPath>(); + this.entityPaths = new ConcurrentReferenceHashMap<>(); this.beanFactory = Optional.empty(); this.repositories = Optional.empty(); } @@ -140,12 +141,9 @@ public class QuerydslBindingsFactory implements ApplicationContextAware { return customizer// .filter(it -> !QuerydslBinderCustomizer.class.equals(it))// - .map(it -> createQuerydslBinderCustomizer(it)).orElseGet(() -> { - - return repositories.flatMap(it -> it.getRepositoryFor(domainType))// - .map(it -> it instanceof QuerydslBinderCustomizer ? (QuerydslBinderCustomizer>) it : null)// - .orElse(NoOpCustomizer.INSTANCE); - }); + .map(this::createQuerydslBinderCustomizer).orElseGet(() -> repositories.flatMap(it -> it.getRepositoryFor(domainType))// + .map(it -> it instanceof QuerydslBinderCustomizer ? (QuerydslBinderCustomizer>) it : null)// + .orElse(NoOpCustomizer.INSTANCE)); } /** 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 727fe3223..14f4718ef 100644 --- a/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java +++ b/src/main/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilder.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -113,7 +113,7 @@ public class QuerydslPredicateBuilder { Collection value = convertToPropertyPathSpecificType(entry.getValue(), propertyPath); Optional predicate = invokeBinding(propertyPath, bindings, value); - predicate.ifPresent(it -> builder.and(it)); + predicate.ifPresent(builder::and); } return builder.getValue(); 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 0c9c4d63d..df71b23cb 100644 --- a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java +++ b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryBean.java @@ -52,6 +52,7 @@ import org.springframework.util.StringUtils; * @author Oliver Gierke * @author Mark Paluch * @author Peter Rietzler + * @author Christoph Strobl */ public abstract class CdiRepositoryBean implements Bean, PassivationCapable { @@ -108,7 +109,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl * @param repositoryType must not be {@literal null}. * @return */ - private final String createPassivationId(Set qualifiers, Class repositoryType) { + private String createPassivationId(Set qualifiers, Class repositoryType) { List qualifierNames = new ArrayList<>(qualifiers.size()); @@ -117,11 +118,8 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl } Collections.sort(qualifierNames); + return StringUtils.collectionToDelimitedString(qualifierNames, ":") + ":" + repositoryType.getName(); - StringBuilder builder = new StringBuilder(StringUtils.collectionToDelimitedString(qualifierNames, ":")); - builder.append(":").append(repositoryType.getName()); - - return builder.toString(); } /* @@ -299,7 +297,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl public Set> getStereotypes() { return Arrays.stream(repositoryType.getAnnotations())// - .map(it -> it.annotationType())// + .map(Annotation::annotationType)// .filter(it -> it.isAnnotationPresent(Stereotype.class))// .collect(Collectors.toSet()); } @@ -359,7 +357,7 @@ public abstract class CdiRepositoryBean implements Bean, PassivationCapabl * @param repositoryType will never be {@literal null}. * @return */ - private final T create(CreationalContext creationalContext, Class repositoryType) { + private T create(CreationalContext creationalContext, Class repositoryType) { Optional> customImplementationBean = getCustomImplementationBean(repositoryType, beanManager, qualifiers); Optional customImplementation = customImplementationBean 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 063e386c6..376a500fd 100644 --- a/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java +++ b/src/main/java/org/springframework/data/repository/cdi/CdiRepositoryExtensionSupport.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2014 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -53,13 +53,14 @@ import org.springframework.data.repository.config.CustomRepositoryImplementation * @author Dirk Mahler * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl */ public abstract class CdiRepositoryExtensionSupport implements Extension { private static final Logger LOGGER = LoggerFactory.getLogger(CdiRepositoryExtensionSupport.class); - private final Map, Set> repositoryTypes = new HashMap, Set>(); - private final Set> eagerRepositories = new HashSet>(); + private final Map, Set> repositoryTypes = new HashMap<>(); + private final Set> eagerRepositories = new HashSet<>(); private final CustomRepositoryImplementationDetector customImplementationDetector; protected CdiRepositoryExtensionSupport() { 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 6741a8b47..4768d7b0a 100644 --- a/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java +++ b/src/main/java/org/springframework/data/repository/config/CustomRepositoryImplementationDetector.java @@ -40,6 +40,7 @@ import org.springframework.util.Assert; * * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl * @author Peter Rietzler */ @RequiredArgsConstructor @@ -111,7 +112,7 @@ public class CustomRepositoryImplementationDetector { throw new IllegalStateException( String.format("Ambiguous custom implementations detected! Found %s but expected a single implementation!", // definitions.stream()// - .map(it -> it.getBeanClassName())// + .map(BeanDefinition::getBeanClassName)// .collect(Collectors.joining(", ")))); } } 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 cc2976bf3..d0b13845d 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryBeanDefinitionBuilder.java @@ -34,6 +34,7 @@ import org.springframework.util.Assert; * Builder to create {@link BeanDefinitionBuilder} instance to eventually create Spring Data repository instances. * * @author Oliver Gierke + * @author Christoph Strobl * @author Peter Rietzler */ class RepositoryBeanDefinitionBuilder { @@ -95,7 +96,7 @@ class RepositoryBeanDefinitionBuilder { NamedQueriesBeanDefinitionBuilder definitionBuilder = new NamedQueriesBeanDefinitionBuilder( extension.getDefaultNamedQueryLocation()); - configuration.getNamedQueriesLocation().ifPresent(it -> definitionBuilder.setLocations(it)); + configuration.getNamedQueriesLocation().ifPresent(definitionBuilder::setLocations); builder.addPropertyValue("namedQueries", definitionBuilder.build(configuration.getSource())); 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 9d3173317..234dc5c7f 100644 --- a/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java +++ b/src/main/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupport.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2016 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,6 +43,7 @@ import org.springframework.util.StringUtils; * * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl */ public abstract class RepositoryConfigurationExtensionSupport implements RepositoryConfigurationExtension { @@ -79,7 +80,7 @@ public abstract class RepositoryConfigurationExtensionSupport implements Reposit Assert.notNull(configSource, "ConfigSource must not be null!"); Assert.notNull(loader, "Loader must not be null!"); - Set> result = new HashSet>(); + Set> result = new HashSet<>(); for (BeanDefinition candidate : configSource.getCandidates(loader)) { 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 75f4a7f1c..e2bbe84dd 100644 --- a/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java +++ b/src/main/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSource.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,6 +25,7 @@ import org.springframework.core.type.filter.TypeFilter; import org.springframework.data.config.TypeFilterParser; import org.springframework.data.config.TypeFilterParser.Type; import org.springframework.data.repository.query.QueryLookupStrategy; +import org.springframework.data.repository.query.QueryLookupStrategy.Key; import org.springframework.data.util.ParsingUtils; import org.springframework.util.Assert; import org.springframework.util.StringUtils; @@ -35,6 +36,7 @@ import org.w3c.dom.Element; * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl * @author Peter Rietzler */ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSourceSupport { @@ -98,7 +100,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou * @see org.springframework.data.repository.config.RepositoryConfigurationSource#getQueryLookupStrategyKey() */ public Optional getQueryLookupStrategyKey() { - return getNullDefaultedAttribute(element, QUERY_LOOKUP_STRATEGY).map(it -> QueryLookupStrategy.Key.create(it)); + return getNullDefaultedAttribute(element, QUERY_LOOKUP_STRATEGY).map(Key::create); } /* @@ -173,7 +175,7 @@ public class XmlRepositoryConfigurationSource extends RepositoryConfigurationSou @Override public boolean shouldConsiderNestedRepositories() { - return getNullDefaultedAttribute(element, CONSIDER_NESTED_REPOSITORIES).map(it -> Boolean.parseBoolean(it)) + return getNullDefaultedAttribute(element, CONSIDER_NESTED_REPOSITORIES).map(Boolean::parseBoolean) .orElse(false); } 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 90061f827..3098f1b41 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 @@ -54,6 +54,7 @@ import org.springframework.util.ClassUtils; * @author Oliver Gierke * @author Thomas Darimont * @author Mark Paluch + * @author Christoph Strobl */ class DefaultRepositoryInformation implements RepositoryInformation { @@ -62,7 +63,7 @@ class DefaultRepositoryInformation implements RepositoryInformation { private static final String DOMAIN_TYPE_NAME = PARAMETERS[0].getName(); private static final String ID_TYPE_NAME = PARAMETERS[1].getName(); - private final Map methodCache = new ConcurrentHashMap(); + private final Map methodCache = new ConcurrentHashMap<>(); private final RepositoryMetadata metadata; private final Class repositoryBaseClass; 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 3311c9160..a74d50808 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 @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -44,6 +44,7 @@ import org.springframework.util.ReflectionUtils; * will be invoked after all events have been published. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 * @soundtrack Henrik Freischlader Trio - Master Plan (Openness) */ @@ -110,7 +111,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr @RequiredArgsConstructor static class EventPublishingMethod { - private static Map, EventPublishingMethod> CACHE = new ConcurrentReferenceHashMap, EventPublishingMethod>(); + private static Map, EventPublishingMethod> CACHE = new ConcurrentReferenceHashMap<>(); private static EventPublishingMethod NONE = new EventPublishingMethod(null, null); private final Method publishingMethod; @@ -133,14 +134,14 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr return eventPublishingMethod.orNull(); } - AnnotationDetectionMethodCallback publishing = new AnnotationDetectionMethodCallback( + AnnotationDetectionMethodCallback publishing = new AnnotationDetectionMethodCallback<>( DomainEvents.class); ReflectionUtils.doWithMethods(type, publishing); // TODO: Lazify this as the inspection might not be needed if the publishing callback didn't find an annotation in // the first place - AnnotationDetectionMethodCallback clearing = new AnnotationDetectionMethodCallback( + AnnotationDetectionMethodCallback clearing = new AnnotationDetectionMethodCallback<>( AfterDomainEventPublication.class); ReflectionUtils.doWithMethods(type, clearing); @@ -240,7 +241,7 @@ public class EventPublishingRepositoryProxyPostProcessor implements RepositoryPr return (Collection) source; } - return Arrays.asList(source); + return Collections.singletonList(source); } } } diff --git a/src/main/java/org/springframework/data/repository/core/support/ExampleMatcherAccessor.java b/src/main/java/org/springframework/data/repository/core/support/ExampleMatcherAccessor.java index 3a573c222..3cefbb6db 100644 --- a/src/main/java/org/springframework/data/repository/core/support/ExampleMatcherAccessor.java +++ b/src/main/java/org/springframework/data/repository/core/support/ExampleMatcherAccessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ import org.springframework.util.Assert; * * @author Mark Paluch * @author Oliver Gierke + * @author Christoph Strobl * @since 1.12 */ public class ExampleMatcherAccessor { @@ -143,7 +144,7 @@ public class ExampleMatcherAccessor { } ExampleMatcher.PropertySpecifier specifier = getPropertySpecifier(path); - return specifier.getIgnoreCase() != null ? specifier.getIgnoreCase().booleanValue() : matcher.isIgnoreCaseEnabled(); + return specifier.getIgnoreCase() != null ? specifier.getIgnoreCase() : matcher.isIgnoreCaseEnabled(); } /** diff --git a/src/main/java/org/springframework/data/repository/core/support/PersistentEntityInformation.java b/src/main/java/org/springframework/data/repository/core/support/PersistentEntityInformation.java index 4f505ab5c..ad0d7dda0 100644 --- a/src/main/java/org/springframework/data/repository/core/support/PersistentEntityInformation.java +++ b/src/main/java/org/springframework/data/repository/core/support/PersistentEntityInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2014 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,6 +19,7 @@ import java.io.Serializable; import java.util.Optional; import org.springframework.data.mapping.PersistentEntity; +import org.springframework.data.mapping.PersistentProperty; import org.springframework.data.repository.core.EntityInformation; /** @@ -26,6 +27,7 @@ import org.springframework.data.repository.core.EntityInformation; * a {@link org.springframework.data.mapping.IdentifierAccessor} to access the property value if requested. * * @author Oliver Gierke + * @author Christoph Strobl */ @SuppressWarnings("unchecked") public class PersistentEntityInformation extends AbstractEntityInformation { @@ -58,6 +60,6 @@ public class PersistentEntityInformation extends Abs */ @Override public Class getIdType() { - return (Class) persistentEntity.getIdProperty().map(it -> it.getType()).orElse(null); + return (Class) persistentEntity.getIdProperty().map(PersistentProperty::getType).orElse(null); } } diff --git a/src/main/java/org/springframework/data/repository/core/support/ReflectionEntityInformation.java b/src/main/java/org/springframework/data/repository/core/support/ReflectionEntityInformation.java index 9e074212d..2858f32a0 100644 --- a/src/main/java/org/springframework/data/repository/core/support/ReflectionEntityInformation.java +++ b/src/main/java/org/springframework/data/repository/core/support/ReflectionEntityInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.springframework.util.ReflectionUtils; * retrieve the id. * * @author Oliver Gierke + * @author Christoph Strobl */ public class ReflectionEntityInformation extends AbstractEntityInformation { @@ -66,7 +67,7 @@ public class ReflectionEntityInformation extends Abs } }); - Assert.notNull(this.field, String.format("No field annotated with %s found!", annotation.toString())); + Assert.notNull(this.field, () -> String.format("No field annotated with %s found!", annotation.toString())); ReflectionUtils.makeAccessible(field); } 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 622a6dc4c..10ec276b7 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 @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 the original author or authors. + * Copyright 2008-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -71,6 +71,7 @@ import org.springframework.util.Assert; * * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl */ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, BeanFactoryAware { @@ -363,12 +364,9 @@ public abstract class RepositoryFactorySupport implements BeanClassLoaderAware, Class baseClass = information.getRepositoryBaseClass(); Optional> constructor = ReflectionUtils.findConstructor(baseClass, constructorArguments); - return constructor.map(it -> (R) BeanUtils.instantiateClass(it, constructorArguments)).orElseThrow(() -> { - - return new IllegalStateException(String.format( - "No suitable constructor found on %s to match the given arguments: %s. Make sure you implement a constructor taking these", - baseClass, Arrays.stream(constructorArguments).map(Object::getClass).collect(Collectors.toList()))); - }); + return constructor.map(it -> (R) BeanUtils.instantiateClass(it, constructorArguments)).orElseThrow(() -> new IllegalStateException(String.format( + "No suitable constructor found on %s to match the given arguments: %s. Make sure you implement a constructor taking these", + baseClass, Arrays.stream(constructorArguments).map(Object::getClass).collect(Collectors.toList())))); } /** diff --git a/src/main/java/org/springframework/data/repository/core/support/SurroundingTransactionDetectorMethodInterceptor.java b/src/main/java/org/springframework/data/repository/core/support/SurroundingTransactionDetectorMethodInterceptor.java index 081ed5600..756ca1ce7 100644 --- a/src/main/java/org/springframework/data/repository/core/support/SurroundingTransactionDetectorMethodInterceptor.java +++ b/src/main/java/org/springframework/data/repository/core/support/SurroundingTransactionDetectorMethodInterceptor.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ import org.springframework.transaction.support.TransactionSynchronizationManager * proxy. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 * @soundtrack Hendrik Freischlader Trio - Openness (Openness) */ @@ -33,7 +34,7 @@ public enum SurroundingTransactionDetectorMethodInterceptor implements MethodInt INSTANCE; - private final ThreadLocal SURROUNDING_TX_ACTIVE = new ThreadLocal(); + private final ThreadLocal SURROUNDING_TX_ACTIVE = new ThreadLocal<>(); /** * Returns whether a transaction was active before the method call entered the repository proxy. diff --git a/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryProxyPostProcessor.java b/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryProxyPostProcessor.java index 376a87256..d0ce7d3bc 100644 --- a/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryProxyPostProcessor.java +++ b/src/main/java/org/springframework/data/repository/core/support/TransactionalRepositoryProxyPostProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2008-2014 the original author or authors. + * Copyright 2008-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -52,6 +52,7 @@ import org.springframework.util.ObjectUtils; * the proxy. * * @author Oliver Gierke + * @author Christoph Strobl */ class TransactionalRepositoryProxyPostProcessor implements RepositoryProxyPostProcessor { @@ -300,7 +301,7 @@ class TransactionalRepositoryProxyPostProcessor implements RepositoryProxyPostPr * As this base class is not marked Serializable, the cache will be recreated after serialization - provided that * the concrete subclass is Serializable. */ - final Map attributeCache = new ConcurrentHashMap(); + final Map attributeCache = new ConcurrentHashMap<>(); private RepositoryInformation repositoryInformation; private boolean enableDefaultTransactions = true; diff --git a/src/main/java/org/springframework/data/repository/query/EvaluationContextExtensionInformation.java b/src/main/java/org/springframework/data/repository/query/EvaluationContextExtensionInformation.java index 68b6ffe82..a84b97a66 100644 --- a/src/main/java/org/springframework/data/repository/query/EvaluationContextExtensionInformation.java +++ b/src/main/java/org/springframework/data/repository/query/EvaluationContextExtensionInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2014 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,6 +51,7 @@ import org.springframework.util.ReflectionUtils.MethodFilter; * {@link org.springframework.expression.EvaluationContext}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.9 */ class EvaluationContextExtensionInformation { @@ -142,7 +143,7 @@ class EvaluationContextExtensionInformation { private static Map discoverDeclaredFunctions(Class type) { - Map map = new HashMap(); + Map map = new HashMap<>(); ReflectionUtils.doWithMethods(type, // method -> map.put(method.getName(), new Function(method, null)), // @@ -214,7 +215,7 @@ class EvaluationContextExtensionInformation { Assert.notNull(type, "Type must not be null!"); - this.accessors = new HashMap(); + this.accessors = new HashMap<>(); this.methods = new HashSet<>(); this.fields = new ArrayList<>(); @@ -234,7 +235,7 @@ class EvaluationContextExtensionInformation { }, PublicMethodAndFieldFilter.NON_STATIC); - ReflectionUtils.doWithFields(type, field -> RootObjectInformation.this.fields.add(field), + ReflectionUtils.doWithFields(type, RootObjectInformation.this.fields::add, PublicMethodAndFieldFilter.NON_STATIC); } @@ -250,7 +251,7 @@ class EvaluationContextExtensionInformation { .collect(Collectors.toMap(// Method::getName, // method -> new Function(method, it)))) - .orElseGet(() -> Collections.emptyMap()); + .orElseGet(Collections::emptyMap); } /** @@ -263,7 +264,7 @@ class EvaluationContextExtensionInformation { return target.map(it -> { - Map properties = new HashMap(); + Map properties = new HashMap<>(); accessors.entrySet().stream() .forEach(method -> properties.put(method.getKey(), new Function(method.getValue(), it))); @@ -271,13 +272,13 @@ class EvaluationContextExtensionInformation { return Collections.unmodifiableMap(properties); - }).orElseGet(() -> Collections.emptyMap()); + }).orElseGet(Collections::emptyMap); } } private static Map discoverDeclaredProperties(Class type) { - Map map = new HashMap(); + Map map = new HashMap<>(); ReflectionUtils.doWithFields(type, field -> map.put(field.getName(), field.get(null)), PublicMethodAndFieldFilter.STATIC); diff --git a/src/main/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProvider.java b/src/main/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProvider.java index e47b92b27..cb4fb1076 100644 --- a/src/main/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProvider.java +++ b/src/main/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProvider.java @@ -1,5 +1,5 @@ /* - * Copyright 2014 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -64,7 +64,7 @@ import org.springframework.util.StringUtils; */ public class ExtensionAwareEvaluationContextProvider implements EvaluationContextProvider, ApplicationContextAware { - private final Map, EvaluationContextExtensionInformation> extensionInformationCache = new HashMap, EvaluationContextExtensionInformation>(); + private final Map, EvaluationContextExtensionInformation> extensionInformationCache = new HashMap<>(); private List extensions; private Optional beanFactory = Optional.empty(); @@ -131,7 +131,7 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex */ private > Map collectVariables(T parameters, Object[] arguments) { - Map variables = new HashMap(); + Map variables = new HashMap<>(); parameters.stream()// .filter(Parameter::isSpecialParameter)// @@ -162,10 +162,8 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex this.extensions = Collections.emptyList(); - beanFactory.ifPresent(it -> { - this.extensions = new ArrayList<>( - it.getBeansOfType(EvaluationContextExtension.class, true, false).values()); - }); + beanFactory.ifPresent(it -> this.extensions = new ArrayList<>( + it.getBeansOfType(EvaluationContextExtension.class, true, false).values())); return extensions; } @@ -220,7 +218,7 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex this.adapters = toAdapters(extensions); this.adapterMap = adapters.stream()// - .collect(Collectors.toMap(it -> it.getExtensionId(), it -> it)); + .collect(Collectors.toMap(EvaluationContextExtensionAdapter::getExtensionId, it -> it)); Collections.reverse(this.adapters); } @@ -410,12 +408,12 @@ public class ExtensionAwareEvaluationContextProvider implements EvaluationContex ExtensionTypeInformation extensionTypeInformation = information.getExtensionTypeInformation(); RootObjectInformation rootObjectInformation = information.getRootObjectInformation(target); - this.functions = new HashMap(); + this.functions = new HashMap<>(); this.functions.putAll(extensionTypeInformation.getFunctions()); this.functions.putAll(rootObjectInformation.getFunctions(target)); this.functions.putAll(extension.getFunctions()); - this.properties = new HashMap(); + this.properties = new HashMap<>(); this.properties.putAll(extensionTypeInformation.getProperties()); this.properties.putAll(rootObjectInformation.getProperties(target)); this.properties.putAll(extension.getProperties()); 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 8c6a2eeef..565fcee8e 100644 --- a/src/main/java/org/springframework/data/repository/query/Parameters.java +++ b/src/main/java/org/springframework/data/repository/query/Parameters.java @@ -1,5 +1,5 @@ /* - * Copyright 2008-2015 the original author or authors. + * Copyright 2008-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ import org.springframework.util.Assert; * Abstracts method parameters that have to be bound to query parameters or applied to the query independently. * * @author Oliver Gierke + * @author Christoph Strobl */ public abstract class Parameters, T extends Parameter> implements Streamable { @@ -283,7 +284,7 @@ public abstract class Parameters, T extends Parameter * * @param method */ - private final void assertEitherAllParamAnnotatedOrNone() { + private void assertEitherAllParamAnnotatedOrNone() { boolean nameFound = false; int index = 0; 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 333591379..1d7d6c99e 100644 --- a/src/main/java/org/springframework/data/repository/query/QueryMethod.java +++ b/src/main/java/org/springframework/data/repository/query/QueryMethod.java @@ -40,6 +40,7 @@ import org.springframework.util.Assert; * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl * @author Maciek Opała */ public class QueryMethod { @@ -90,7 +91,7 @@ public class QueryMethod { } } - Assert.notNull(this.parameters, + Assert.notNull(this.parameters, () -> String.format("Parameters extracted from method '%s' must not be null!", method.getName())); if (isPageQuery()) { @@ -265,7 +266,7 @@ public class QueryMethod { if (QueryExecutionConverters.supports(method.getReturnType())) { // unwrap only one level to handle cases like Future> correctly. - return ClassTypeInformation.fromReturnTypeOf(method).getComponentType().map(it -> it.getType()) + return ClassTypeInformation.fromReturnTypeOf(method).getComponentType().map(TypeInformation::getType) .orElseThrow(() -> new IllegalStateException( String.format("Couldn't find component type for return value of method %s!", method))); } 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 1b15c30f3..55b8ebad0 100644 --- a/src/main/java/org/springframework/data/repository/query/ResultProcessor.java +++ b/src/main/java/org/springframework/data/repository/query/ResultProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,6 +42,7 @@ import org.springframework.util.Assert; * @author Oliver Gierke * @author John Blum * @author Mark Paluch + * @author Christoph Strobl * @since 1.12 */ public class ResultProcessor { @@ -88,7 +89,7 @@ public class ResultProcessor { */ public ResultProcessor withDynamicProjection(Optional accessor) { - return accessor.flatMap(it -> it.getDynamicProjection())// + return accessor.flatMap(ParameterAccessor::getDynamicProjection)// .map(it -> new ResultProcessor(method, factory, it))// .orElse(this); } @@ -267,7 +268,7 @@ public class ResultProcessor { private static Map toMap(Collection values, List names) { int i = 0; - Map result = new HashMap(values.size()); + Map result = new HashMap<>(values.size()); for (Object element : values) { result.put(names.get(i++), element); 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 015976c89..430b877f3 100644 --- a/src/main/java/org/springframework/data/repository/query/ReturnedType.java +++ b/src/main/java/org/springframework/data/repository/query/ReturnedType.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ import org.springframework.util.ClassUtils; * A representation of the type returned by a {@link QueryMethod}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.12 */ @RequiredArgsConstructor(access = AccessLevel.PRIVATE) @@ -60,9 +61,9 @@ public abstract class ReturnedType { Assert.notNull(domainType, "Domain type must not be null!"); Assert.notNull(factory, "ProjectionFactory must not be null!"); - return (ReturnedType) (returnedType.isInterface() + return returnedType.isInterface() ? new ReturnedInterface(factory.getProjectionInformation(returnedType), domainType) - : new ReturnedClass(returnedType, domainType)); + : new ReturnedClass(returnedType, domainType); } /** @@ -209,7 +210,7 @@ public abstract class ReturnedType { */ private static final class ReturnedClass extends ReturnedType { - private static final Set> VOID_TYPES = new HashSet>(Arrays.asList(Void.class, void.class)); + private static final Set> VOID_TYPES = new HashSet<>(Arrays.asList(Void.class, void.class)); private final Class type; private final List inputProperties; @@ -285,13 +286,9 @@ public abstract class ReturnedType { PreferredConstructorDiscoverer discoverer = new PreferredConstructorDiscoverer(type); - return discoverer.getConstructor().map(it -> { - - return it.getParameters().stream()// - .flatMap(parameter -> Optionals.toStream(parameter.getName()))// - .collect(Collectors.toList()); - - }).orElseGet(() -> Collections.emptyList()); + return discoverer.getConstructor().map(it -> it.getParameters().stream()// + .flatMap(parameter -> Optionals.toStream(parameter.getName()))// + .collect(Collectors.toList())).orElseGet(Collections::emptyList); } private boolean isDto() { 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 33f31478a..964fb7ae9 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 @@ -1,5 +1,5 @@ /* - * Copyright 2008-2015 the original author or authors. + * Copyright 2008-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,6 +36,7 @@ import org.springframework.util.StringUtils; * method ends are valid: {@code LastnameUsernameDesc}, {@code LastnameAscUsernameDesc}. * * @author Oliver Gierke + * @author Christoph Strobl */ class OrderBySource { @@ -67,7 +68,7 @@ class OrderBySource { */ public OrderBySource(String clause, Optional> domainClass) { - this.orders = new ArrayList(); + this.orders = new ArrayList<>(); if (!StringUtils.hasText(clause)) { return; 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 7b99e807f..6ddf4f988 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 @@ -238,7 +238,7 @@ public class PartTree implements Streamable { String[] split = split(source, "And"); this.children = Arrays.stream(split)// - .filter(part -> StringUtils.hasText(part))// + .filter(StringUtils::hasText)// .map(part -> new Part(part, domainClass, alwaysIgnoreCase))// .collect(Collectors.toList()); } @@ -339,7 +339,7 @@ public class PartTree implements Streamable { return maxResults; } - private final boolean matches(Optional subject, Pattern pattern) { + private boolean matches(Optional subject, Pattern pattern) { return subject.map(it -> pattern.matcher(it).find()).orElse(false); } } 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 30e10a4e2..6f62fadba 100644 --- a/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java +++ b/src/main/java/org/springframework/data/repository/support/AnnotationAttribute.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2014 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import org.springframework.util.Assert; * Simply helper to reference a dedicated attribute of an {@link Annotation}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.10 */ @RequiredArgsConstructor @@ -67,7 +68,7 @@ class AnnotationAttribute { Assert.notNull(parameter, "MethodParameter must not be null!"); Annotation annotation = parameter.getParameterAnnotation(annotationType); - return Optional.ofNullable(annotation).map(it -> getValueFrom(it)); + return Optional.ofNullable(annotation).map(this::getValueFrom); } /** @@ -93,7 +94,7 @@ class AnnotationAttribute { public Object getValueFrom(Annotation annotation) { Assert.notNull(annotation, "Annotation must not be null!"); - return (String) attributeName.map(it -> AnnotationUtils.getValue(annotation, it)) + return attributeName.map(it -> AnnotationUtils.getValue(annotation, it)) .orElseGet(() -> AnnotationUtils.getValue(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 bd1173d11..3aec49509 100644 --- a/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java +++ b/src/main/java/org/springframework/data/repository/support/CrudRepositoryInvoker.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2014 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ import org.springframework.data.repository.core.RepositoryMetadata; * to avoid reflection overhead introduced by the base class if we know we work with a {@link CrudRepository}. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.10 */ class CrudRepositoryInvoker extends ReflectionRepositoryInvoker { @@ -89,7 +90,7 @@ class CrudRepositoryInvoker extends ReflectionRepositoryInvoker { @Override @SuppressWarnings("unchecked") public T invokeFindOne(Serializable id) { - return customFindOneMethod ? super.invokeFindOne(id) : (T) repository.findOne(convertId(id)); + return customFindOneMethod ? super.invokeFindOne(id) : (T) repository.findOne(convertId(id)); } /* 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 6a9f2282c..f4a892ad2 100644 --- a/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java +++ b/src/main/java/org/springframework/data/repository/support/DefaultRepositoryInvokerFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2014 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -36,6 +36,7 @@ import org.springframework.util.Assert; * invocations over reflection ones. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.10 */ public class DefaultRepositoryInvokerFactory implements RepositoryInvokerFactory { @@ -67,7 +68,7 @@ public class DefaultRepositoryInvokerFactory implements RepositoryInvokerFactory this.repositories = repositories; this.conversionService = conversionService; - this.invokers = new HashMap, RepositoryInvoker>(); + this.invokers = new HashMap<>(); } /* @@ -76,7 +77,7 @@ public class DefaultRepositoryInvokerFactory implements RepositoryInvokerFactory */ @Override public RepositoryInvoker getInvokerFor(Class domainType) { - return invokers.computeIfAbsent(domainType, type -> prepareInvokers(type)); + return invokers.computeIfAbsent(domainType, this::prepareInvokers); } /** @@ -90,7 +91,7 @@ public class DefaultRepositoryInvokerFactory implements RepositoryInvokerFactory Optional information = repositories.getRepositoryInformationFor(domainType); Optional repository = repositories.getRepositoryFor(domainType); - return mapIfAllPresent(information, repository, (left, right) -> createInvoker(left, right))// + return mapIfAllPresent(information, repository, this::createInvoker)// .orElseThrow( () -> new IllegalArgumentException(String.format("No repository found for domain type: %s", domainType))); } 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 25540b745..3f539abe8 100644 --- a/src/main/java/org/springframework/data/repository/support/MethodParameters.java +++ b/src/main/java/org/springframework/data/repository/support/MethodParameters.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -32,6 +32,7 @@ import org.springframework.util.Assert; * Value object to represent {@link MethodParameters} to allow to easily find the ones with a given annotation. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.10 */ class MethodParameters { @@ -146,12 +147,9 @@ class MethodParameters { super(method, parameterIndex); this.attribute = attribute; - this.name = Lazy.of(() -> { - - return this.attribute.// - flatMap(it -> it.getValueFrom(this).map(Object::toString)).// - orElseGet(() -> super.getParameterName()); - }); + this.name = Lazy.of(() -> this.attribute.// + flatMap(it -> it.getValueFrom(this).map(Object::toString)).// + orElseGet(super::getParameterName)); } /* diff --git a/src/main/java/org/springframework/data/repository/support/PageableExecutionUtils.java b/src/main/java/org/springframework/data/repository/support/PageableExecutionUtils.java index b9d0a3659..2b05d6080 100644 --- a/src/main/java/org/springframework/data/repository/support/PageableExecutionUtils.java +++ b/src/main/java/org/springframework/data/repository/support/PageableExecutionUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ import org.springframework.util.Assert; * * @author Mark Paluch * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 */ @UtilityClass @@ -55,16 +56,16 @@ public class PageableExecutionUtils { if (pageable == Pageable.NONE || pageable.getOffset() == 0) { if (pageable == Pageable.NONE || pageable.getPageSize() > content.size()) { - return new PageImpl(content, pageable, content.size()); + return new PageImpl<>(content, pageable, content.size()); } - return new PageImpl(content, pageable, totalSupplier.getAsLong()); + return new PageImpl<>(content, pageable, totalSupplier.getAsLong()); } if (content.size() != 0 && pageable.getPageSize() > content.size()) { - return new PageImpl(content, pageable, pageable.getOffset() + content.size()); + return new PageImpl<>(content, pageable, pageable.getOffset() + content.size()); } - return new PageImpl(content, pageable, totalSupplier.getAsLong()); + return new PageImpl<>(content, pageable, totalSupplier.getAsLong()); } } 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 4e5887638..73dd36f6b 100644 --- a/src/main/java/org/springframework/data/repository/support/Repositories.java +++ b/src/main/java/org/springframework/data/repository/support/Repositories.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -43,6 +43,7 @@ import org.springframework.util.ClassUtils; * @author Oliver Gierke * @author Thomas Darimont * @author Thomas Eizinger + * @author Christoph Strobl */ public class Repositories implements Iterable> { @@ -76,8 +77,8 @@ public class Repositories implements Iterable> { Assert.notNull(factory, "Factory must not be null!"); this.beanFactory = Optional.of(factory); - this.repositoryFactoryInfos = new HashMap, RepositoryFactoryInformation>(); - this.repositoryBeanNames = new HashMap, String>(); + this.repositoryFactoryInfos = new HashMap<>(); + this.repositoryBeanNames = new HashMap<>(); populateRepositoryFactoryInformation(factory); } @@ -102,7 +103,7 @@ public class Repositories implements Iterable> { Set> alternativeDomainTypes = information.getAlternativeDomainTypes(); String beanName = BeanFactoryUtils.transformedBeanName(name); - Set> typesToRegister = new HashSet>(alternativeDomainTypes.size() + 1); + Set> typesToRegister = new HashSet<>(alternativeDomainTypes.size() + 1); typesToRegister.add(domainType); typesToRegister.addAll(alternativeDomainTypes); @@ -136,7 +137,7 @@ public class Repositories implements Iterable> { Assert.notNull(domainClass, DOMAIN_TYPE_MUST_NOT_BE_NULL); Optional repositoryBeanName = Optional.ofNullable(repositoryBeanNames.get(domainClass)); - return beanFactory.flatMap(it -> repositoryBeanName.map(name -> it.getBean(name))); + return beanFactory.flatMap(it -> repositoryBeanName.map(it::getBean)); } /** @@ -271,7 +272,7 @@ public class Repositories implements Iterable> { @Override public List getQueryMethods() { - return Collections.emptyList(); + return Collections.emptyList(); } } } diff --git a/src/main/java/org/springframework/data/repository/util/JavaslangCollections.java b/src/main/java/org/springframework/data/repository/util/JavaslangCollections.java index 60c247488..85631d63d 100644 --- a/src/main/java/org/springframework/data/repository/util/JavaslangCollections.java +++ b/src/main/java/org/springframework/data/repository/util/JavaslangCollections.java @@ -35,6 +35,7 @@ import org.springframework.data.repository.util.QueryExecutionConverters.Wrapper * Converter implementations to map from and to Javaslang collections. * * @author Oliver Gierke + * @author Christoph Strobl * @since 1.13 */ class JavaslangCollections { @@ -131,7 +132,7 @@ class JavaslangCollections { static { - Set pairs = new HashSet(); + Set pairs = new HashSet<>(); pairs.add(new ConvertiblePair(Collection.class, javaslang.collection.Traversable.class)); pairs.add(new ConvertiblePair(Map.class, javaslang.collection.Traversable.class)); 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 e6c7c5a86..cea162305 100644 --- a/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java +++ b/src/main/java/org/springframework/data/repository/util/QueryExecutionConverters.java @@ -66,6 +66,7 @@ import com.google.common.base.Optional; * * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl * @author Maciek Opała * @since 1.8 * @see ReactiveWrappers diff --git a/src/main/java/org/springframework/data/support/CachingIsNewStrategyFactory.java b/src/main/java/org/springframework/data/support/CachingIsNewStrategyFactory.java index 273c764b8..bc57a5327 100644 --- a/src/main/java/org/springframework/data/support/CachingIsNewStrategyFactory.java +++ b/src/main/java/org/springframework/data/support/CachingIsNewStrategyFactory.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,18 +26,19 @@ import java.util.concurrent.ConcurrentHashMap; * on each and every request. * * @author Oliver Gierke + * @author Christoph Strobl */ @RequiredArgsConstructor public class CachingIsNewStrategyFactory implements IsNewStrategyFactory { private final @NonNull IsNewStrategyFactory delegate; - private final Map, IsNewStrategy> cache = new ConcurrentHashMap, IsNewStrategy>(); + private final Map, IsNewStrategy> cache = new ConcurrentHashMap<>(); /* * (non-Javadoc) * @see org.springframework.data.mapping.model.IsNewStrategyFactory#getIsNewStrategy(java.lang.Class) */ public IsNewStrategy getIsNewStrategy(Class type) { - return cache.computeIfAbsent(type, it -> delegate.getIsNewStrategy(it)); + return cache.computeIfAbsent(type, delegate::getIsNewStrategy); } } diff --git a/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java b/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java index 3cb603ce0..416d086b3 100644 --- a/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java +++ b/src/main/java/org/springframework/data/transaction/MultiTransactionStatus.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2013 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ import org.springframework.util.Assert; * * @author Michael Hunger * @author Oliver Gierke + * @author Christoph Strobl * @since 1.6 */ class MultiTransactionStatus implements TransactionStatus { @@ -175,7 +176,7 @@ class MultiTransactionStatus implements TransactionStatus { private static class SavePoints { - private final Map savepoints = new HashMap(); + private final Map savepoints = new HashMap<>(); private void addSavePoint(TransactionStatus status, Object savepoint) { diff --git a/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java b/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java index 8e34d9a8c..08fc25861 100644 --- a/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java +++ b/src/main/java/org/springframework/data/util/AnnotatedTypeScanner.java @@ -1,5 +1,5 @@ /* - * Copyright 2014-2015 the original author or authors. + * Copyright 2014-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,6 +34,7 @@ import org.springframework.util.ClassUtils; * Scanner to find types with annotations on the classpath. * * @author Oliver Gierke + * @author Christoph Strobl */ public class AnnotatedTypeScanner implements ResourceLoaderAware, EnvironmentAware { @@ -104,7 +105,7 @@ public class AnnotatedTypeScanner implements ResourceLoaderAware, EnvironmentAwa provider.addIncludeFilter(new AnnotationTypeFilter(annotationType, true, considerInterfaces)); } - Set> types = new HashSet>(); + Set> types = new HashSet<>(); for (String basePackage : basePackages) { diff --git a/src/main/java/org/springframework/data/util/ClassTypeInformation.java b/src/main/java/org/springframework/data/util/ClassTypeInformation.java index 013ccb948..c26b07d6b 100644 --- a/src/main/java/org/springframework/data/util/ClassTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ClassTypeInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2014 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ import org.springframework.util.ClassUtils; * {@link TypeInformation} for a plain {@link Class}. * * @author Oliver Gierke + * @author Christoph Strobl */ @SuppressWarnings({ "unchecked", "rawtypes" }) public class ClassTypeInformation extends TypeDiscoverer { @@ -54,7 +55,7 @@ public class ClassTypeInformation extends TypeDiscoverer { static { for (ClassTypeInformation info : Arrays.asList(COLLECTION, LIST, SET, MAP, OBJECT)) { - CACHE.put(info.getType(), new WeakReference>(info)); + CACHE.put(info.getType(), new WeakReference<>(info)); } } @@ -79,7 +80,7 @@ public class ClassTypeInformation extends TypeDiscoverer { } ClassTypeInformation result = new ClassTypeInformation<>(type); - CACHE.put(type, new WeakReference>(result)); + CACHE.put(type, new WeakReference<>(result)); return result; } @@ -126,7 +127,7 @@ public class ClassTypeInformation extends TypeDiscoverer { } Map source = GenericTypeResolver.getTypeVariableMap(type); - Map, Type> map = new HashMap, Type>(source.size()); + Map, Type> map = new HashMap<>(source.size()); for (Entry entry : source.entrySet()) { diff --git a/src/main/java/org/springframework/data/util/Optionals.java b/src/main/java/org/springframework/data/util/Optionals.java index d40a51d33..1921881a6 100644 --- a/src/main/java/org/springframework/data/util/Optionals.java +++ b/src/main/java/org/springframework/data/util/Optionals.java @@ -32,6 +32,7 @@ import org.springframework.util.Assert; * Utility methods to work with {@link Optional}s. * * @author Oliver Gierke + * @author Christoph Strobl */ @UtilityClass public class Optionals { @@ -62,7 +63,7 @@ public class Optionals { Assert.notNull(optionals, "Optional must not be null!"); - return Arrays.asList(optionals).stream().flatMap(it -> it.map(Stream::of).orElseGet(() -> Stream.empty())); + return Arrays.asList(optionals).stream().flatMap(it -> it.map(Stream::of).orElseGet(Stream::empty)); } /** @@ -78,9 +79,9 @@ public class Optionals { Assert.notNull(function, "Function must not be null!"); return Streamable.of(source).stream()// - .map(it -> function.apply(it))// - .filter(it -> it.isPresent())// - .findFirst().orElseGet(() -> Optional.empty()); + .map(function::apply)// + .filter(Optional::isPresent)// + .findFirst().orElseGet(Optional::empty); } /** @@ -96,7 +97,7 @@ public class Optionals { Assert.notNull(function, "Function must not be null!"); return Streamable.of(source).stream()// - .map(it -> function.apply(it))// + .map(function::apply)// .filter(it -> !it.equals(defaultValue))// .findFirst().orElse(defaultValue); } @@ -126,8 +127,8 @@ public class Optionals { Assert.notNull(suppliers, "Suppliers must not be null!"); return Streamable.of(suppliers).stream()// - .map(it -> it.get())// - .filter(it -> it.isPresent())// + .map(Supplier::get)// + .filter(Optional::isPresent)// .findFirst().orElse(Optional.empty()); } diff --git a/src/main/java/org/springframework/data/util/Pair.java b/src/main/java/org/springframework/data/util/Pair.java index 93e7a4f52..602b43d29 100644 --- a/src/main/java/org/springframework/data/util/Pair.java +++ b/src/main/java/org/springframework/data/util/Pair.java @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,6 +30,7 @@ import java.util.stream.Collectors; * * @author Tobias Trelle * @author Oliver Gierke + * @author Christoph Strobl * @param Type of the first thing. * @param Type of the second thing. * @since 1.12 @@ -50,7 +51,7 @@ public final class Pair { * @return */ public static Pair of(S first, T second) { - return new Pair(first, second); + return new Pair<>(first, second); } /** diff --git a/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java b/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java index 86c536a2f..63949f369 100644 --- a/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ParameterizedTypeInformation.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,6 +34,7 @@ import org.springframework.util.StringUtils; * * @author Oliver Gierke * @author Mark Paluch + * @author Christoph Strobl */ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation { @@ -72,7 +73,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation Class rawType = getType(); Set supertypes = new HashSet<>(); - Optional.ofNullable(rawType.getGenericSuperclass()).ifPresent(it -> supertypes.add(it)); + Optional.ofNullable(rawType.getGenericSuperclass()).ifPresent(supertypes::add); supertypes.addAll(Arrays.asList(rawType.getGenericInterfaces())); Optional> result = supertypes.stream()// @@ -95,7 +96,7 @@ class ParameterizedTypeInformation extends ParentTypeAwareTypeInformation @Override public List> getTypeArguments() { - List> result = new ArrayList>(); + List> result = new ArrayList<>(); for (Type argument : type.getActualTypeArguments()) { result.add(createInfo(argument)); diff --git a/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java b/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java index 9072fe30a..8f24c3819 100644 --- a/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java +++ b/src/main/java/org/springframework/data/util/ParentTypeAwareTypeInformation.java @@ -52,7 +52,7 @@ public abstract class ParentTypeAwareTypeInformation extends TypeDiscoverer, Type> mergeMaps(TypeDiscoverer parent, Map, Type> map) { - Map, Type> typeVariableMap = new HashMap, Type>(); + Map, Type> typeVariableMap = new HashMap<>(); typeVariableMap.putAll(map); typeVariableMap.putAll(parent.getTypeVariableMap()); diff --git a/src/main/java/org/springframework/data/util/ReflectionUtils.java b/src/main/java/org/springframework/data/util/ReflectionUtils.java index 365943d01..437d982a7 100644 --- a/src/main/java/org/springframework/data/util/ReflectionUtils.java +++ b/src/main/java/org/springframework/data/util/ReflectionUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2015 the original author or authors. + * Copyright 2012-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,6 +42,7 @@ import org.springframework.util.ReflectionUtils.FieldFilter; * * @author Oliver Gierke * @author Thomas Darimont + * @author Christoph Strobl * @since 1.5 */ public abstract class ReflectionUtils { @@ -277,7 +278,7 @@ public abstract class ReflectionUtils { public static Optional getMethod(Class type, String name, ResolvableType... parameterTypes) { - List> collect = Arrays.stream(parameterTypes).map(it -> it.getRawClass()).collect(Collectors.toList()); + List> collect = Arrays.stream(parameterTypes).map(ResolvableType::getRawClass).collect(Collectors.toList()); Optional method = Optional.ofNullable( org.springframework.util.ReflectionUtils.findMethod(type, name, collect.toArray(new Class[collect.size()]))); @@ -286,7 +287,7 @@ public abstract class ReflectionUtils { .allMatch(index -> ResolvableType.forMethodParameter(it, index).equals(parameterTypes[index]))); } - private static final boolean argumentsMatch(Class[] parameterTypes, Object[] arguments) { + private static boolean argumentsMatch(Class[] parameterTypes, Object[] arguments) { if (parameterTypes.length != arguments.length) { return false; diff --git a/src/main/java/org/springframework/data/util/Streamable.java b/src/main/java/org/springframework/data/util/Streamable.java index bfc381152..1ea612231 100644 --- a/src/main/java/org/springframework/data/util/Streamable.java +++ b/src/main/java/org/springframework/data/util/Streamable.java @@ -1,5 +1,5 @@ /* - * Copyright 2016 the original author or authors. + * Copyright 2016-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ import org.springframework.util.Assert; * Simple interface to ease streamability of {@link Iterable}s. * * @author Oliver Gierke + * @author Christoph Strobl */ public interface Streamable extends Iterable { @@ -43,8 +44,8 @@ public interface Streamable extends Iterable { * * @return will never be {@literal null}. */ - public static Streamable empty() { - return () -> Collections.emptyIterator(); + static Streamable empty() { + return Collections::emptyIterator; } /** @@ -54,7 +55,7 @@ public interface Streamable extends Iterable { * @return */ @SafeVarargs - public static Streamable of(T... t) { + static Streamable of(T... t) { return () -> Arrays.asList(t).iterator(); } @@ -64,10 +65,10 @@ public interface Streamable extends Iterable { * @param iterable must not be {@literal null}. * @return */ - public static Streamable of(Iterable iterable) { + static Streamable of(Iterable iterable) { Assert.notNull(iterable, "Iterable must not be null!"); - return () -> iterable.iterator(); + return iterable::iterator; } } diff --git a/src/main/java/org/springframework/data/util/TypeDiscoverer.java b/src/main/java/org/springframework/data/util/TypeDiscoverer.java index 47443322f..55a062610 100644 --- a/src/main/java/org/springframework/data/util/TypeDiscoverer.java +++ b/src/main/java/org/springframework/data/util/TypeDiscoverer.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2015 the original author or authors. + * Copyright 2011-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -51,6 +51,7 @@ import org.springframework.util.ReflectionUtils; * Basic {@link TypeDiscoverer} that contains basic functionality to discover property types. * * @author Oliver Gierke + * @author Christoph Strobl */ class TypeDiscoverer implements TypeInformation { @@ -60,7 +61,7 @@ class TypeDiscoverer implements TypeInformation { ClassLoader classLoader = TypeDiscoverer.class.getClassLoader(); - Set> mapTypes = new HashSet>(); + Set> mapTypes = new HashSet<>(); mapTypes.add(Map.class); try { @@ -92,8 +93,8 @@ class TypeDiscoverer implements TypeInformation { this.type = type; this.resolvedType = Lazy.of(() -> resolveType(type)); - this.componentType = Lazy.of(() -> doGetComponentType()); - this.valueType = Lazy.of(() -> doGetMapValueType()); + this.componentType = Lazy.of(this::doGetComponentType); + this.valueType = Lazy.of(this::doGetMapValueType); this.typeVariableMap = typeVariableMap; this.hashCode = 17 + (31 * type.hashCode()) + (31 * typeVariableMap.hashCode()); } @@ -108,7 +109,7 @@ class TypeDiscoverer implements TypeInformation { } private TypeInformation createInfo(Optional fieldType) { - return fieldType.map(it -> createInfo(it)).orElseThrow(() -> new IllegalArgumentException()); + return fieldType.map(this::createInfo).orElseThrow(IllegalArgumentException::new); } /** @@ -129,7 +130,7 @@ class TypeDiscoverer implements TypeInformation { } Class resolveType = resolveType(fieldType); - Map variableMap = new HashMap(); + Map variableMap = new HashMap<>(); variableMap.putAll(GenericTypeResolver.getTypeVariableMap(resolveType)); if (fieldType instanceof ParameterizedType) { @@ -183,7 +184,7 @@ class TypeDiscoverer implements TypeInformation { @SuppressWarnings({ "unchecked", "rawtypes", "deprecation" }) protected Class resolveType(Type type) { - Map map = new HashMap(); + Map map = new HashMap<>(); map.putAll(getTypeVariableMap()); return (Class) GenericTypeResolver.resolveType(type, map); @@ -198,7 +199,7 @@ class TypeDiscoverer implements TypeInformation { Assert.notNull(constructor, "Constructor must not be null!"); Type[] types = constructor.getGenericParameterTypes(); - List> result = new ArrayList>(types.length); + List> result = new ArrayList<>(types.length); for (Type parameterType : types) { result.add(createInfo(parameterType)); @@ -216,13 +217,13 @@ class TypeDiscoverer implements TypeInformation { int separatorIndex = fieldname.indexOf('.'); if (separatorIndex == -1) { - return fieldTypes.computeIfAbsent(fieldname, it -> getPropertyInformation(it)); + return fieldTypes.computeIfAbsent(fieldname, this::getPropertyInformation); } String head = fieldname.substring(0, separatorIndex); Optional> info = getProperty(head); - return info.map(it -> it.getProperty(fieldname.substring(separatorIndex + 1))).orElseGet(() -> Optional.empty()); + return info.map(it -> it.getProperty(fieldname.substring(separatorIndex + 1))).orElseGet(Optional::empty); } /** @@ -261,7 +262,7 @@ class TypeDiscoverer implements TypeInformation { return Optional.of(descriptor); } - List> superTypes = new ArrayList>(); + List> superTypes = new ArrayList<>(); superTypes.addAll(Arrays.asList(type.getInterfaces())); superTypes.add(type.getSuperclass()); @@ -415,7 +416,7 @@ class TypeDiscoverer implements TypeInformation { Assert.notNull(method, "Method most not be null!"); return Streamable.of(method.getGenericParameterTypes()).stream()// - .map(it -> createInfo(it))// + .map(this::createInfo)// .collect(Collectors.toList()); } diff --git a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java index fb1fd6f22..c66c336f4 100644 --- a/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/PageableHandlerMethodArgumentResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2016 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,6 +40,7 @@ import org.springframework.web.method.support.ModelAndViewContainer; * @author Oliver Gierke * @author Nick Williams * @author Mark Paluch + * @author Christoph Strobl */ public class PageableHandlerMethodArgumentResolver implements PageableArgumentResolver { @@ -252,19 +253,19 @@ public class PageableHandlerMethodArgumentResolver implements PageableArgumentRe } int p = page.orElseGet( - () -> defaultOrFallback.map(it -> it.getPageNumber()).orElseThrow(() -> new IllegalStateException())); + () -> defaultOrFallback.map(Pageable::getPageNumber).orElseThrow(IllegalStateException::new)); int ps = pageSize - .orElseGet(() -> defaultOrFallback.map(it -> it.getPageSize()).orElseThrow(() -> new IllegalStateException())); + .orElseGet(() -> defaultOrFallback.map(Pageable::getPageSize).orElseThrow(IllegalStateException::new)); // Limit lower bound - ps = ps < 1 ? defaultOrFallback.map(it -> it.getPageSize()).orElseThrow(() -> new IllegalStateException()) : ps; + ps = ps < 1 ? defaultOrFallback.map(Pageable::getPageSize).orElseThrow(IllegalStateException::new) : ps; // Limit upper bound ps = ps > maxPageSize ? maxPageSize : ps; Sort sort = sortResolver.resolveArgument(methodParameter, mavContainer, webRequest, binderFactory); return PageRequest.of(p, ps, - sort.isSorted() ? sort : defaultOrFallback.map(it -> it.getSort()).orElseGet(() -> Sort.unsorted())); + sort.isSorted() ? sort : defaultOrFallback.map(Pageable::getSort).orElseGet(Sort::unsorted)); } /** diff --git a/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java b/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java index d5b0be120..c75aabda7 100644 --- a/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/PagedResourcesAssemblerArgumentResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2014 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -40,6 +40,7 @@ import org.springframework.web.util.UriComponentsBuilder; * @since 1.6 * @author Oliver Gierke * @author Nick Williams + * @author Christoph Strobl */ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArgumentResolver { @@ -115,7 +116,7 @@ public class PagedResourcesAssemblerArgumentResolver implements HandlerMethodArg * @param parameter must not be {@literal null}. * @return */ - private static final MethodParameter findMatchingPageableParameter(MethodParameter parameter) { + private static MethodParameter findMatchingPageableParameter(MethodParameter parameter) { MethodParameters parameters = new MethodParameters(parameter.getMethod()); List pageableParameters = parameters.getParametersOfType(Pageable.class); diff --git a/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java b/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java index 4363c188f..3b86849df 100644 --- a/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java +++ b/src/main/java/org/springframework/data/web/ProjectingJackson2HttpMessageConverter.java @@ -42,6 +42,7 @@ import com.jayway.jsonpath.spi.mapper.JacksonMappingProvider; * {@link ProjectedPayload}. * * @author Oliver Gierke + * @author Christoph Strobl * @soundtrack Richard Spaven - Ice Is Nice (Spaven's 5ive) * @since 1.13 */ @@ -49,7 +50,7 @@ public class ProjectingJackson2HttpMessageConverter extends MappingJackson2HttpM implements BeanClassLoaderAware, BeanFactoryAware { private final SpelAwareProxyProjectionFactory projectionFactory; - private final Map, Boolean> supportedTypesCache = new ConcurrentReferenceHashMap, Boolean>(); + private final Map, Boolean> supportedTypesCache = new ConcurrentReferenceHashMap<>(); /** * Creates a new {@link ProjectingJackson2HttpMessageConverter} using a default {@link ObjectMapper}. diff --git a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java index 21edda6ad..7c3eb10a1 100644 --- a/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/SortHandlerMethodArgumentResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2015 the original author or authors. + * Copyright 2013-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -42,6 +42,7 @@ import org.springframework.web.method.support.ModelAndViewContainer; * @author Thomas Darimont * @author Nick Williams * @author Mark Paluch + * @author Christoph Strobl */ public class SortHandlerMethodArgumentResolver implements SortArgumentResolver { @@ -208,7 +209,7 @@ public class SortHandlerMethodArgumentResolver implements SortArgumentResolver { */ Sort parseParameterIntoSort(String[] source, String delimiter) { - List allOrders = new ArrayList(); + List allOrders = new ArrayList<>(); for (String part : source) { @@ -224,7 +225,7 @@ public class SortHandlerMethodArgumentResolver implements SortArgumentResolver { int lastIndex = direction.map(it -> elements.length - 1).orElseGet(() -> elements.length); for (int i = 0; i < lastIndex; i++) { - toOrder(elements[i], direction).ifPresent(it -> allOrders.add(it)); + toOrder(elements[i], direction).ifPresent(allOrders::add); } } @@ -266,7 +267,7 @@ public class SortHandlerMethodArgumentResolver implements SortArgumentResolver { builder.add(order.getProperty()); } - return builder == null ? Collections.emptyList() : builder.dumpExpressionIfPresentInto(expressions); + return builder == null ? Collections.emptyList() : builder.dumpExpressionIfPresentInto(expressions); } /** @@ -296,7 +297,7 @@ public class SortHandlerMethodArgumentResolver implements SortArgumentResolver { builder.add(order.getProperty()); } - return builder == null ? Collections.emptyList() : builder.dumpExpressionIfPresentInto(expressions); + return builder == null ? Collections.emptyList() : builder.dumpExpressionIfPresentInto(expressions); } /** diff --git a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java index f258e8ee4..6009ceaef 100644 --- a/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java +++ b/src/main/java/org/springframework/data/web/XmlBeamHttpMessageConverter.java @@ -35,13 +35,14 @@ import org.xmlbeam.XBProjector; * A read-only {@link HttpMessageConverter} to create XMLBeam-based projection instances for interfaces. * * @author Oliver Gierke + * @author Christoph Strobl * @see http://www.xmlbeam.org * @soundtrack Dr. Kobayashi Maru & The Mothership Connection - Anthem (EPisode One) */ public class XmlBeamHttpMessageConverter extends AbstractHttpMessageConverter { private final ProjectionFactory projectionFactory; - private final Map, Boolean> supportedTypesCache = new ConcurrentReferenceHashMap, Boolean>(); + private final Map, Boolean> supportedTypesCache = new ConcurrentReferenceHashMap<>(); /** * Creates a new {@link XmlBeamHttpMessageConverter}. 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 f9a7dc87e..eaca513fb 100644 --- a/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java +++ b/src/main/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolver.java @@ -1,5 +1,5 @@ /* - * Copyright 2015 the original author or authors. + * Copyright 2015-2017 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -93,7 +93,7 @@ public class QuerydslPredicateArgumentResolver implements HandlerMethodArgumentR public Predicate resolveArgument(MethodParameter parameter, ModelAndViewContainer mavContainer, NativeWebRequest webRequest, WebDataBinderFactory binderFactory) throws Exception { - MultiValueMap parameters = new LinkedMultiValueMap(); + MultiValueMap parameters = new LinkedMultiValueMap<>(); for (Entry entry : webRequest.getParameterMap().entrySet()) { parameters.put(entry.getKey(), Arrays.asList(entry.getValue())); @@ -104,7 +104,7 @@ public class QuerydslPredicateArgumentResolver implements HandlerMethodArgumentR TypeInformation domainType = extractTypeInfo(parameter).getActualType(); Optional> map = annotation - .>map(it -> it.bindings()); + .>map(QuerydslPredicate::bindings); QuerydslBindings bindings = bindingsFactory.createBindingsFor(domainType, (Optional>>) map); diff --git a/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java b/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java index 62f20fbf2..557c7d94b 100755 --- a/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/DefaultAuditableBeanWrapperFactoryUnitTests.java @@ -44,17 +44,13 @@ public class DefaultAuditableBeanWrapperFactoryUnitTests { @Test public void returnsAuditableInterfaceBeanWrapperForAuditable() { - assertThat(factory.getBeanWrapperFor(Optional.of(new AuditedUser()))).hasValueSatisfying(it -> { - assertThat(it).isInstanceOf(AuditableInterfaceBeanWrapper.class); - }); + assertThat(factory.getBeanWrapperFor(Optional.of(new AuditedUser()))).hasValueSatisfying(it -> assertThat(it).isInstanceOf(AuditableInterfaceBeanWrapper.class)); } @Test public void returnsReflectionAuditingBeanWrapperForNonAuditableButAnnotated() { - assertThat(factory.getBeanWrapperFor(Optional.of(new AnnotatedUser()))).hasValueSatisfying(it -> { - assertThat(it).isInstanceOf(ReflectionAuditingBeanWrapper.class); - }); + assertThat(factory.getBeanWrapperFor(Optional.of(new AnnotatedUser()))).hasValueSatisfying(it -> assertThat(it).isInstanceOf(ReflectionAuditingBeanWrapper.class)); } @Test @@ -89,8 +85,6 @@ public class DefaultAuditableBeanWrapperFactoryUnitTests { Optional wrapper = factory.getBeanWrapperFor(Optional.of(user)); - assertThat(wrapper).hasValueSatisfying(it -> { - it.setLastModifiedDate(Optional.of(zonedDateTime)); - }); + assertThat(wrapper).hasValueSatisfying(it -> it.setLastModifiedDate(Optional.of(zonedDateTime))); } } diff --git a/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java b/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java index a510f9536..32c6d1b9c 100755 --- a/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/IsNewAwareAuditingHandlerUnitTests.java @@ -82,7 +82,7 @@ public class IsNewAwareAuditingHandlerUnitTests extends AuditingHandlerUnitTests @Test // DATACMNS-365 public void setsUpHandlerWithMappingContext() { - new IsNewAwareAuditingHandler(new PersistentEntities(Collections.> emptySet())); + new IsNewAwareAuditingHandler(new PersistentEntities(Collections.emptySet())); } @Test // DATACMNS-638 diff --git a/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java b/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java index 3b05e06ef..91448cb44 100755 --- a/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/MappingAuditableBeanWrapperFactoryUnitTests.java @@ -96,9 +96,7 @@ public class MappingAuditableBeanWrapperFactoryUnitTests { Optional wrapper = factory.getBeanWrapperFor(Optional.of(sample)); - assertThat(wrapper).hasValueSatisfying(it -> { - it.setLastModifiedDate(Optional.of(Instant.now())); - }); + assertThat(wrapper).hasValueSatisfying(it -> it.setLastModifiedDate(Optional.of(Instant.now()))); } @Test // DATACMNS-365 @@ -109,9 +107,7 @@ public class MappingAuditableBeanWrapperFactoryUnitTests { @Test // DATACMNS-365 public void returnsAuditableWrapperForAuditable() { - assertThat(factory.getBeanWrapperFor(Optional.of(mock(ExtendingAuditable.class)))).hasValueSatisfying(it -> { - assertThat(it).isInstanceOf(AuditableInterfaceBeanWrapper.class); - }); + assertThat(factory.getBeanWrapperFor(Optional.of(mock(ExtendingAuditable.class)))).hasValueSatisfying(it -> assertThat(it).isInstanceOf(AuditableInterfaceBeanWrapper.class)); } @Test // DATACMNS-638 @@ -166,9 +162,7 @@ public class MappingAuditableBeanWrapperFactoryUnitTests { Optional wrapper = factory.getBeanWrapperFor(Optional.of(sample)); - assertThat(wrapper).hasValueSatisfying(it -> { - assertThat(it.getLastModifiedDate()).isEqualTo(expected); - }); + assertThat(wrapper).hasValueSatisfying(it -> assertThat(it.getLastModifiedDate()).isEqualTo(expected)); } static class Sample { diff --git a/src/test/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupportUnitTests.java b/src/test/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupportUnitTests.java index cada992ef..bd64a0927 100755 --- a/src/test/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupportUnitTests.java +++ b/src/test/java/org/springframework/data/auditing/config/AuditingBeanDefinitionRegistrarSupportUnitTests.java @@ -14,7 +14,6 @@ */ package org.springframework.data.auditing.config; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.lang.annotation.Annotation; diff --git a/src/test/java/org/springframework/data/convert/ClassGeneratingEntityInstantiatorUnitTests.java b/src/test/java/org/springframework/data/convert/ClassGeneratingEntityInstantiatorUnitTests.java index 49eb90f1b..f16fce22c 100755 --- a/src/test/java/org/springframework/data/convert/ClassGeneratingEntityInstantiatorUnitTests.java +++ b/src/test/java/org/springframework/data/convert/ClassGeneratingEntityInstantiatorUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.convert; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.springframework.data.util.ClassTypeInformation.*; @@ -90,9 +89,7 @@ public class ClassGeneratingEntityInstantiatorUnitTests

{ - verify(provider, times(1)).getParameterValue(it.getParameters().iterator().next()); - }); + assertThat(constructor).hasValueSatisfying(it -> verify(provider, times(1)).getParameterValue(it.getParameters().iterator().next())); } @Test(expected = MappingInstantiationException.class) // DATACMNS-300, DATACMNS-578 @@ -108,7 +105,7 @@ public class ClassGeneratingEntityInstantiatorUnitTests

entity = new BasicPersistentEntity(from(Inner.class)); + BasicPersistentEntity entity = new BasicPersistentEntity<>(from(Inner.class)); assertThat(entity.getPersistenceConstructor()).hasValueSatisfying(constructor -> { Parameter parameter = constructor.getParameters().iterator().next(); @@ -167,9 +164,7 @@ public class ClassGeneratingEntityInstantiatorUnitTests

(ObjCtorDefault.class).getConstructor())// .when(entity).getPersistenceConstructor(); - IntStream.range(0, 2).forEach(i -> { - assertThat(this.instance.createInstance(entity, provider)).isInstanceOf(ObjCtorDefault.class); - }); + IntStream.range(0, 2).forEach(i -> assertThat(this.instance.createInstance(entity, provider)).isInstanceOf(ObjCtorDefault.class)); } @Test // DATACMNS-578 diff --git a/src/test/java/org/springframework/data/convert/ConfigurableTypeInformationMapperUnitTests.java b/src/test/java/org/springframework/data/convert/ConfigurableTypeInformationMapperUnitTests.java index 4880d44c7..014171d70 100755 --- a/src/test/java/org/springframework/data/convert/ConfigurableTypeInformationMapperUnitTests.java +++ b/src/test/java/org/springframework/data/convert/ConfigurableTypeInformationMapperUnitTests.java @@ -52,7 +52,7 @@ public class ConfigurableTypeInformationMapperUnitTests, String> map = new HashMap, String>(); + Map, String> map = new HashMap<>(); map.put(String.class, "1"); map.put(Object.class, "1"); diff --git a/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java b/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java index 17cd40114..992b16279 100755 --- a/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java +++ b/src/test/java/org/springframework/data/convert/DefaultTypeMapperUnitTests.java @@ -53,7 +53,7 @@ public class DefaultTypeMapperUnitTests { @Before public void setUp() { - this.typeMapper = new DefaultTypeMapper>(accessor, Arrays.asList(mapper)); + this.typeMapper = new DefaultTypeMapper<>(accessor, Collections.singletonList(mapper)); this.source = Collections.singletonMap("key", ALIAS.toString()); doReturn(ALIAS).when(accessor).readAliasFrom(source); @@ -98,7 +98,7 @@ public class DefaultTypeMapperUnitTests { TypeInformation typeInformation = TypeInformation.class.cast(result); assertThat(typeInformation.getType()).isEqualTo(Bar.class); - OptionalAssert.assertOptional(typeInformation.getProperty("field")).value(nested -> nested.getType()) + OptionalAssert.assertOptional(typeInformation.getProperty("field")).value(TypeInformation::getType) .isEqualTo(Character.class); } diff --git a/src/test/java/org/springframework/data/convert/EntityInstantiatorsUnitTests.java b/src/test/java/org/springframework/data/convert/EntityInstantiatorsUnitTests.java index fa2d88212..6a817f9b7 100755 --- a/src/test/java/org/springframework/data/convert/EntityInstantiatorsUnitTests.java +++ b/src/test/java/org/springframework/data/convert/EntityInstantiatorsUnitTests.java @@ -56,7 +56,7 @@ public class EntityInstantiatorsUnitTests { doReturn(String.class).when(entity).getType(); Map, EntityInstantiator> customInstantiators = Collections - ., EntityInstantiator> singletonMap(String.class, customInstantiator); + .singletonMap(String.class, customInstantiator); EntityInstantiators instantiators = new EntityInstantiators(customInstantiators); assertThat(instantiators.getInstantiatorFor(entity)).isEqualTo(customInstantiator); @@ -68,7 +68,7 @@ public class EntityInstantiatorsUnitTests { doReturn(Object.class).when(entity).getType(); Map, EntityInstantiator> customInstantiators = Collections - ., EntityInstantiator> singletonMap(String.class, ReflectionEntityInstantiator.INSTANCE); + .singletonMap(String.class, ReflectionEntityInstantiator.INSTANCE); EntityInstantiators instantiators = new EntityInstantiators(customInstantiator, customInstantiators); instantiators.getInstantiatorFor(entity); diff --git a/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java b/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java index d06fec408..311043d21 100644 --- a/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/convert/Jsr310ConvertersUnitTests.java @@ -128,7 +128,7 @@ public class Jsr310ConvertersUnitTests { @Test public void convertsZoneIdToStringAndBack() { - Map ids = new HashMap(); + Map ids = new HashMap<>(); ids.put("Europe/Berlin", ZoneId.of("Europe/Berlin")); ids.put("+06:00", ZoneId.of("+06:00")); diff --git a/src/test/java/org/springframework/data/convert/ReflectionEntityInstantiatorUnitTests.java b/src/test/java/org/springframework/data/convert/ReflectionEntityInstantiatorUnitTests.java index 6fbecce23..7226d756a 100755 --- a/src/test/java/org/springframework/data/convert/ReflectionEntityInstantiatorUnitTests.java +++ b/src/test/java/org/springframework/data/convert/ReflectionEntityInstantiatorUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.convert; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import static org.springframework.data.convert.ReflectionEntityInstantiator.*; import static org.springframework.data.util.ClassTypeInformation.*; @@ -87,9 +86,7 @@ public class ReflectionEntityInstantiatorUnitTests

{ - verify(provider, times(1)).getParameterValue(it.getParameters().iterator().next()); - }); + assertThat(constructor).hasValueSatisfying(it -> verify(provider, times(1)).getParameterValue(it.getParameters().iterator().next())); } @Test(expected = MappingInstantiationException.class) // DATACMNS-300 @@ -105,7 +102,7 @@ public class ReflectionEntityInstantiatorUnitTests

entity = new BasicPersistentEntity(from(Inner.class)); + BasicPersistentEntity entity = new BasicPersistentEntity<>(from(Inner.class)); assertThat(entity.getPersistenceConstructor()).hasValueSatisfying(it -> { Parameter parameter = it.getParameters().iterator().next(); @@ -131,7 +128,7 @@ public class ReflectionEntityInstantiatorUnitTests

entity = new BasicPersistentEntity(from(Sample.class)); + PersistentEntity entity = new BasicPersistentEntity<>(from(Sample.class)); doReturn(Optional.of("FOO")).when(provider).getParameterValue(any(Parameter.class)); diff --git a/src/test/java/org/springframework/data/convert/ThreeTenBackPortConvertersUnitTests.java b/src/test/java/org/springframework/data/convert/ThreeTenBackPortConvertersUnitTests.java index ef65867ac..fe733a071 100755 --- a/src/test/java/org/springframework/data/convert/ThreeTenBackPortConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/convert/ThreeTenBackPortConvertersUnitTests.java @@ -111,7 +111,7 @@ public class ThreeTenBackPortConvertersUnitTests { @Test public void convertsZoneIdToStringAndBack() { - Map ids = new HashMap(); + Map ids = new HashMap<>(); ids.put("Europe/Berlin", ZoneId.of("Europe/Berlin")); ids.put("+06:00", ZoneId.of("+06:00")); diff --git a/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java b/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java index d7c09c746..71a1fbe12 100755 --- a/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java +++ b/src/test/java/org/springframework/data/domain/ExampleMatcherUnitTests.java @@ -21,11 +21,6 @@ import static org.springframework.data.domain.ExampleMatcher.*; import org.junit.Before; import org.junit.Test; -import org.springframework.data.domain.ExampleMatcher.GenericPropertyMatcher; -import org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers; -import org.springframework.data.domain.ExampleMatcher.MatcherConfigurer; -import org.springframework.data.domain.ExampleMatcher.NullHandler; -import org.springframework.data.domain.ExampleMatcher.StringMatcher; /** * Unit test for {@link ExampleMatcher}. @@ -169,24 +164,14 @@ public class ExampleMatcherUnitTests { .withNullHandler(NullHandler.IGNORE) // .withIgnoreCase("ignored-case") // .withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) // - .withMatcher("world", new MatcherConfigurer() { - @Override - public void configureMatcher(GenericPropertyMatcher matcher) { - matcher.endsWith(); - } - }); + .withMatcher("world", matcher -> matcher.endsWith()); ExampleMatcher sameAsMatcher = matching() // .withIgnorePaths("foo", "bar", "baz") // .withNullHandler(NullHandler.IGNORE) // .withIgnoreCase("ignored-case") // .withMatcher("hello", GenericPropertyMatchers.contains().caseSensitive()) // - .withMatcher("world", new MatcherConfigurer() { - @Override - public void configureMatcher(GenericPropertyMatcher matcher) { - matcher.endsWith(); - } - }); + .withMatcher("world", matcher -> matcher.endsWith()); ExampleMatcher different = matching() // .withIgnorePaths("foo", "bar", "baz") // diff --git a/src/test/java/org/springframework/data/domain/ExampleUnitTests.java b/src/test/java/org/springframework/data/domain/ExampleUnitTests.java index da84c5a98..6e7c88aea 100755 --- a/src/test/java/org/springframework/data/domain/ExampleUnitTests.java +++ b/src/test/java/org/springframework/data/domain/ExampleUnitTests.java @@ -20,7 +20,6 @@ import static org.springframework.data.domain.ExampleMatcher.*; import org.junit.Before; import org.junit.Test; -import org.springframework.data.domain.ExampleMatcher.GenericPropertyMatchers; /** * Test for {@link Example}. diff --git a/src/test/java/org/springframework/data/domain/PageImplUnitTests.java b/src/test/java/org/springframework/data/domain/PageImplUnitTests.java index b0b22a32d..90c71fa0e 100755 --- a/src/test/java/org/springframework/data/domain/PageImplUnitTests.java +++ b/src/test/java/org/springframework/data/domain/PageImplUnitTests.java @@ -34,17 +34,17 @@ public class PageImplUnitTests { @Test public void assertEqualsForSimpleSetup() throws Exception { - PageImpl page = new PageImpl<>(Arrays.asList("Foo")); + PageImpl page = new PageImpl<>(Collections.singletonList("Foo")); assertEqualsAndHashcode(page, page); - assertEqualsAndHashcode(page, new PageImpl<>(Arrays.asList("Foo"))); + assertEqualsAndHashcode(page, new PageImpl<>(Collections.singletonList("Foo"))); } @Test public void assertEqualsForComplexSetup() throws Exception { Pageable pageable = PageRequest.of(0, 10); - List content = Arrays.asList("Foo"); + List content = Collections.singletonList("Foo"); PageImpl page = new PageImpl<>(content, pageable, 100); @@ -68,7 +68,7 @@ public class PageImplUnitTests { @Test public void returnsNextPageable() { - Page page = new PageImpl<>(Arrays.asList(new Object()), PageRequest.of(0, 1), 10); + Page page = new PageImpl<>(Collections.singletonList(new Object()), PageRequest.of(0, 1), 10); assertThat(page.isFirst()).isTrue(); assertThat(page.hasPrevious()).isFalse(); @@ -82,7 +82,7 @@ public class PageImplUnitTests { @Test public void returnsPreviousPageable() { - Page page = new PageImpl<>(Arrays.asList(new Object()), PageRequest.of(1, 1), 2); + Page page = new PageImpl<>(Collections.singletonList(new Object()), PageRequest.of(1, 1), 2); assertThat(page.isFirst()).isFalse(); assertThat(page.hasPrevious()).isTrue(); @@ -116,7 +116,7 @@ public class PageImplUnitTests { @Test // DATACMNS-323 public void returnsCorrectTotalPages() { - Page page = new PageImpl<>(Arrays.asList("a")); + Page page = new PageImpl<>(Collections.singletonList("a")); assertThat(page.getTotalPages()).isEqualTo(1); assertThat(page.hasNext()).isFalse(); @@ -127,7 +127,7 @@ public class PageImplUnitTests { public void transformsPageCorrectly() { Page transformed = new PageImpl<>(Arrays.asList("foo", "bar"), PageRequest.of(0, 2), 10) - .map(source -> source.length()); + .map(String::length); assertThat(transformed.getContent()).hasSize(2); assertThat(transformed.getContent()).contains(3, 3); 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 547e1973c..103019006 100755 --- a/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java +++ b/src/test/java/org/springframework/data/domain/jaxb/SpringDataJaxbUnitTests.java @@ -20,6 +20,7 @@ import static org.assertj.core.api.Assertions.*; import java.io.IOException; import java.io.StringWriter; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Scanner; @@ -103,8 +104,8 @@ public class SpringDataJaxbUnitTests { PageWrapper wrapper = new PageWrapper(); Content content = new Content(); content.name = "Foo"; - wrapper.page = new PageImpl<>(Arrays.asList(content)); - wrapper.pageWithLinks = new PageImpl<>(Arrays.asList(content)); + wrapper.page = new PageImpl<>(Collections.singletonList(content)); + wrapper.pageWithLinks = new PageImpl<>(Collections.singletonList(content)); marshaller.marshal(wrapper, new StringWriter()); } diff --git a/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java b/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java index 07327a477..8e91d8b5f 100755 --- a/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java +++ b/src/test/java/org/springframework/data/geo/GeoResultsUnitTests.java @@ -18,6 +18,7 @@ package org.springframework.data.geo; import static org.assertj.core.api.Assertions.*; import java.util.Arrays; +import java.util.Collections; import org.junit.Test; import org.springframework.util.SerializationUtils; @@ -45,7 +46,7 @@ public class GeoResultsUnitTests { public void testSerialization() { GeoResult result = new GeoResult<>("test", new Distance(2)); - GeoResults geoResults = new GeoResults<>(Arrays.asList(result)); + GeoResults geoResults = new GeoResults<>(Collections.singletonList(result)); @SuppressWarnings("unchecked") GeoResults serialized = (GeoResults) SerializationUtils diff --git a/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java b/src/test/java/org/springframework/data/mapping/ParameterUnitTests.java index 344fb78b1..18d97f315 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 @@ public class ParameterUnitTests

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

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

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

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

> { @Test public void twoParametersWithDifferenTypeAreNotEqual() { - Parameter left = new Parameter(Optional.of("name"), type, annotations, Optional.of(entity)); - Parameter right = new Parameter(Optional.of("name"), ClassTypeInformation.from(String.class), + Parameter left = new Parameter<>(Optional.of("name"), type, annotations, Optional.of(entity)); + Parameter right = new Parameter<>(Optional.of("name"), ClassTypeInformation.from(String.class), annotations, Optional.of(stringEntity)); assertThat(left).isNotEqualTo(right); diff --git a/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java b/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java index 714851eb3..76793ed56 100755 --- a/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/PreferredConstructorDiscovererUnitTests.java @@ -96,8 +96,8 @@ public class PreferredConstructorDiscovererUnitTests

entity = new BasicPersistentEntity(ClassTypeInformation.from(Inner.class)); - PreferredConstructorDiscoverer discoverer = new PreferredConstructorDiscoverer(entity); + PersistentEntity entity = new BasicPersistentEntity<>(ClassTypeInformation.from(Inner.class)); + PreferredConstructorDiscoverer discoverer = new PreferredConstructorDiscoverer<>(entity); assertThat(discoverer.getConstructor()).hasValueSatisfying(constructor -> { diff --git a/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java b/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java index c3a75f26d..0c0cdaefa 100755 --- a/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/SimpleTypeHolderUnitTests.java @@ -39,7 +39,7 @@ public class SimpleTypeHolderUnitTests { @Test(expected = IllegalArgumentException.class) public void rejectsNullOriginal() { - new SimpleTypeHolder(new HashSet>(), null); + new SimpleTypeHolder(new HashSet<>(), null); } @Test(expected = IllegalArgumentException.class) // DATACMNS-31 @@ -59,7 +59,7 @@ public class SimpleTypeHolderUnitTests { @Test public void doesNotAddDefaultConvertersIfConfigured() { - SimpleTypeHolder holder = new SimpleTypeHolder(new HashSet>(), false); + SimpleTypeHolder holder = new SimpleTypeHolder(new HashSet<>(), false); assertThat(holder.isSimpleType(UUID.class)).isFalse(); } 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 a0b0a1d56..9e4b817d3 100755 --- a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java +++ b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextIntegrationTests.java @@ -75,20 +75,17 @@ public class AbstractMappingContextIntegrationTests context.getPersistentEntity(Person.class)); - Thread b = new Thread(new Runnable() { + Thread b = new Thread(() -> { - public void run() { + PersistentEntity entity = context.getRequiredPersistentEntity(Person.class); - PersistentEntity entity = context.getRequiredPersistentEntity(Person.class); - - entity.doWithProperties((PropertyHandler) persistentProperty -> { - try { - Thread.sleep(250); - } catch (InterruptedException e) { - throw new RuntimeException(e); - } - }); - } + entity.doWithProperties((PropertyHandler) persistentProperty -> { + try { + Thread.sleep(250); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + }); }); a.start(); 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 a3967957d..504eadb34 100755 --- a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java @@ -142,9 +142,7 @@ public class AbstractMappingContextUnitTests { PersistentEntity entity = mappingContext .getRequiredPersistentEntity(Extension.class); - assertThat(entity.getPersistentProperty("foo")).hasValueSatisfying(it -> { - assertThat(it.isIdProperty()).isTrue(); - }); + assertThat(entity.getPersistentProperty("foo")).hasValueSatisfying(it -> assertThat(it.isIdProperty()).isTrue()); } @Test // DATACMNS-345 @@ -155,11 +153,7 @@ public class AbstractMappingContextUnitTests { PersistentEntity entity = mappingContext .getRequiredPersistentEntity(Sample.class); - assertThat(entity.getPersistentProperty("persons")).hasValueSatisfying(it -> { - assertThat(mappingContext.getPersistentEntity(it)).hasValueSatisfying(inner -> { - assertThat(inner.getType()).isEqualTo(Person.class); - }); - }); + assertThat(entity.getPersistentProperty("persons")).hasValueSatisfying(it -> assertThat(mappingContext.getPersistentEntity(it)).hasValueSatisfying(inner -> assertThat(inner.getType()).isEqualTo(Person.class))); } @Test // DATACMNS-380 diff --git a/src/test/java/org/springframework/data/mapping/context/DefaultPersistenPropertyPathUnitTests.java b/src/test/java/org/springframework/data/mapping/context/DefaultPersistenPropertyPathUnitTests.java index c1c862539..848909e52 100755 --- a/src/test/java/org/springframework/data/mapping/context/DefaultPersistenPropertyPathUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/DefaultPersistenPropertyPathUnitTests.java @@ -16,10 +16,10 @@ package org.springframework.data.mapping.context; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Arrays; +import java.util.Collections; import org.junit.Before; import org.junit.Test; @@ -46,7 +46,7 @@ public class DefaultPersistenPropertyPathUnitTests(Arrays.asList(first)); + oneLeg = new DefaultPersistentPropertyPath<>(Collections.singletonList(first)); twoLegs = new DefaultPersistentPropertyPath<>(Arrays.asList(first, second)); } @@ -98,7 +98,7 @@ public class DefaultPersistenPropertyPathUnitTests extension = twoLegs.getExtensionForBaseOf(oneLeg); - assertThat(extension).isEqualTo(new DefaultPersistentPropertyPath<>(Arrays.asList(second))); + assertThat(extension).isEqualTo(new DefaultPersistentPropertyPath<>(Collections.singletonList(second))); } @Test 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 cfefdae74..c9c927a46 100755 --- a/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/MappingContextEventUnitTests.java @@ -41,21 +41,21 @@ public class MappingContextEventUnitTests, P ex @Test public void returnsPersistentEntityHandedToTheEvent() { - MappingContextEvent event = new MappingContextEvent(mappingContext, entity); + MappingContextEvent event = new MappingContextEvent<>(mappingContext, entity); assertThat(event.getPersistentEntity()).isEqualTo(entity); } @Test public void usesMappingContextAsEventSource() { - MappingContextEvent event = new MappingContextEvent(mappingContext, entity); + MappingContextEvent event = new MappingContextEvent<>(mappingContext, entity); assertThat(event.getSource()).isEqualTo(mappingContext); } @Test public void detectsEmittingMappingContextCorrectly() { - MappingContextEvent event = new MappingContextEvent(mappingContext, entity); + MappingContextEvent 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 00bf40ca0..af16efa3d 100755 --- a/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/PersistentEntitiesUnitTests.java @@ -65,15 +65,13 @@ public class PersistentEntitiesUnitTests { context.setInitialEntitySet(Collections.singleton(Sample.class)); context.initialize(); - PersistentEntities entities = new PersistentEntities(Arrays.asList(context)); + PersistentEntities entities = new PersistentEntities(Collections.singletonList(context)); assertThat(entities.getPersistentEntity(Sample.class)).isPresent(); assertThat(entities.getPersistentEntity(Object.class)).isNotPresent(); assertThat(entities.getManagedTypes()).contains(ClassTypeInformation.from(Sample.class)); - assertThat(entities.getPersistentEntity(Sample.class)).hasValueSatisfying(it -> { - assertThat(entities).contains(it); - }); + assertThat(entities.getPersistentEntity(Sample.class)).hasValueSatisfying(it -> assertThat(entities).contains(it)); } diff --git a/src/test/java/org/springframework/data/mapping/context/SampleMappingContext.java b/src/test/java/org/springframework/data/mapping/context/SampleMappingContext.java index e3870dfaa..f292e1c67 100644 --- a/src/test/java/org/springframework/data/mapping/context/SampleMappingContext.java +++ b/src/test/java/org/springframework/data/mapping/context/SampleMappingContext.java @@ -12,7 +12,7 @@ public class SampleMappingContext @SuppressWarnings("unchecked") protected BasicPersistentEntity createPersistentEntity( TypeInformation typeInformation) { - return new BasicPersistentEntity((TypeInformation) typeInformation); + return new BasicPersistentEntity<>((TypeInformation) typeInformation); } @Override 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 a350f6af0..4f98b9943 100755 --- a/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/AnnotationBasedPersistentPropertyUnitTests.java @@ -92,9 +92,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ - assertThat(cache.containsKey(MyAnnotation.class)).isTrue(); - }); + assertThat(property.findAnnotation(MyAnnotation.class)).hasValueSatisfying(annotation -> assertThat(cache.containsKey(MyAnnotation.class)).isTrue()); }); } @@ -112,33 +110,25 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ - assertThat(it.usePropertyAccess()).isFalse(); - }); + assertThat(getProperty(FieldAccess.class, "name")).hasValueSatisfying(it -> assertThat(it.usePropertyAccess()).isFalse()); } @Test // DATACMNS-243 public void usesAccessTypeDeclaredOnTypeAsDefault() { - assertThat(getProperty(PropertyAccess.class, "firstname")).hasValueSatisfying(it -> { - assertThat(it.usePropertyAccess()).isTrue(); - }); + assertThat(getProperty(PropertyAccess.class, "firstname")).hasValueSatisfying(it -> assertThat(it.usePropertyAccess()).isTrue()); } @Test // DATACMNS-243 public void propertyAnnotationOverridesTypeConfiguration() { - assertThat(getProperty(PropertyAccess.class, "lastname")).hasValueSatisfying(it -> { - assertThat(it.usePropertyAccess()).isFalse(); - }); + assertThat(getProperty(PropertyAccess.class, "lastname")).hasValueSatisfying(it -> assertThat(it.usePropertyAccess()).isFalse()); } @Test // DATACMNS-243 public void fieldAnnotationOverridesTypeConfiguration() { - assertThat(getProperty(PropertyAccess.class, "emailAddress")).hasValueSatisfying(it -> { - assertThat(it.usePropertyAccess()).isFalse(); - }); + assertThat(getProperty(PropertyAccess.class, "emailAddress")).hasValueSatisfying(it -> assertThat(it.usePropertyAccess()).isFalse()); } @Test // DATACMNS-243 @@ -149,9 +139,7 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ - assertThat(it.isWritable()).isTrue(); - }); + assertThat(getProperty(ClassWithReadOnlyProperties.class, "noAnnotations")).hasValueSatisfying(it -> assertThat(it.isWritable()).isTrue()); } @Test // DATACMNS-534 @@ -162,17 +150,13 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ - assertThat(it.isWritable()).isFalse(); - }); + assertThat(getProperty(ClassWithReadOnlyProperties.class, "readOnlyProperty")).hasValueSatisfying(it -> assertThat(it.isWritable()).isFalse()); } @Test // DATACMNS-534 public void considersPropertyWithReadOnlyMetaAnnotationReadOnly() { - assertThat(getProperty(ClassWithReadOnlyProperties.class, "customReadOnlyProperty")).hasValueSatisfying(it -> { - assertThat(it.isWritable()).isFalse(); - }); + assertThat(getProperty(ClassWithReadOnlyProperties.class, "customReadOnlyProperty")).hasValueSatisfying(it -> assertThat(it.isWritable()).isFalse()); } @Test // DATACMNS-556 @@ -208,31 +192,23 @@ public class AnnotationBasedPersistentPropertyUnitTests

{ - assertThat(cache.containsKey(MyAnnotation.class)).isTrue(); - }); + assertThat(property.findAnnotation(MyAnnotation.class)).hasValueSatisfying(it -> assertThat(cache.containsKey(MyAnnotation.class)).isTrue()); }); } @Test // DATACMNS-825 public void composedAnnotationWithAliasShouldHaveSynthesizedAttributeValues() { - assertThat(entity.getPersistentProperty("metaAliased")).hasValueSatisfying(property -> { - assertThat(property.findAnnotation(MyAnnotation.class)).hasValueSatisfying(annotation -> { - assertThat(AnnotationUtils.getValue(annotation)).isEqualTo("spring"); - }); - }); + assertThat(entity.getPersistentProperty("metaAliased")).hasValueSatisfying(property -> assertThat(property.findAnnotation(MyAnnotation.class)).hasValueSatisfying(annotation -> assertThat(AnnotationUtils.getValue(annotation)).isEqualTo("spring"))); } @Test // DATACMNS-867 public void revisedAnnotationWithAliasShouldHaveSynthesizedAttributeValues() { - assertThat(entity.getPersistentProperty("setter")).hasValueSatisfying(property -> { - assertThat(property.findAnnotation(RevisedAnnnotationWithAliasFor.class)).hasValueSatisfying(annotation -> { - assertThat(annotation.name()).isEqualTo("my-value"); - assertThat(annotation.value()).isEqualTo("my-value"); - }); - }); + assertThat(entity.getPersistentProperty("setter")).hasValueSatisfying(property -> assertThat(property.findAnnotation(RevisedAnnnotationWithAliasFor.class)).hasValueSatisfying(annotation -> { + assertThat(annotation.name()).isEqualTo("my-value"); + assertThat(annotation.value()).isEqualTo("my-value"); + })); } @SuppressWarnings("unchecked") 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 4e2a4e334..ccd6870d8 100755 --- a/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/BasicPersistentEntityUnitTests.java @@ -159,15 +159,11 @@ public class BasicPersistentEntityUnitTests> { Optional property = entity.getPersistentProperty(LastModifiedBy.class); - assertThat(property).hasValueSatisfying(it -> { - assertThat(it.getName()).isEqualTo("field"); - }); + assertThat(property).hasValueSatisfying(it -> assertThat(it.getName()).isEqualTo("field")); property = entity.getPersistentProperty(CreatedBy.class); - assertThat(property).hasValueSatisfying(it -> { - assertThat(it.getName()).isEqualTo("property"); - }); + assertThat(property).hasValueSatisfying(it -> assertThat(it.getName()).isEqualTo("property")); assertThat(entity.getPersistentProperty(CreatedDate.class)).isNotPresent(); } @@ -253,13 +249,7 @@ public class BasicPersistentEntityUnitTests> { BasicPersistentEntity entity = createEntity(Entity.class); entity.addAssociation(null); - entity.doWithAssociations(new SimpleAssociationHandler() { - - @Override - public void doWithAssociation(Association> association) { - Assert.fail("Expected the method to never be called!"); - } - }); + entity.doWithAssociations((SimpleAssociationHandler) association -> Assert.fail("Expected the method to never be called!")); } private BasicPersistentEntity createEntity(Class type) { @@ -267,7 +257,7 @@ public class BasicPersistentEntityUnitTests> { } private BasicPersistentEntity createEntity(Class type, Comparator comparator) { - return new BasicPersistentEntity(ClassTypeInformation.from(type), Optional.ofNullable(comparator)); + return new BasicPersistentEntity<>(ClassTypeInformation.from(type), Optional.ofNullable(comparator)); } @TypeAlias("foo") 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 b11592bb9..1dcf78796 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryDatatypeTests.java @@ -108,7 +108,7 @@ public class ClassGeneratingPropertyAccessorFactoryDatatypeTests { private static List parameters(List> types, String propertyName, Object value) throws Exception { - List parameters = new ArrayList(); + List parameters = new ArrayList<>(); for (Class type : types) { 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 d45f4ef1d..d4baf097c 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryEntityTypeTests.java @@ -56,7 +56,7 @@ public class ClassGeneratingPropertyAccessorFactoryEntityTypeTests { private EntityInformation getEntityInformation(Class type) { PersistentEntity entity = mappingContext.getRequiredPersistentEntity(type); - return new PersistentEntityInformation(entity); + return new PersistentEntityInformation<>(entity); } interface Algorithm { 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 e1755f2c9..87cd5be9d 100755 --- a/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ClassGeneratingPropertyAccessorFactoryTests.java @@ -65,7 +65,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { @Parameters(name = "{3}") public static List parameters() { - List parameters = new ArrayList(); + List parameters = new ArrayList<>(); List propertyNames = Arrays.asList("privateField", "packageDefaultField", "protectedField", "publicField", "privateProperty", "packageDefaultProperty", "protectedProperty", "publicProperty", "syntheticProperty"); @@ -86,7 +86,7 @@ public class ClassGeneratingPropertyAccessorFactoryTests { private static List parameters(Object bean, List propertyNames, Class expectedConstructorType) { - List parameters = new ArrayList(); + List parameters = new ArrayList<>(); for (String propertyName : propertyNames) { parameters.add(new Object[] { bean, propertyName, expectedConstructorType, @@ -128,21 +128,15 @@ public class ClassGeneratingPropertyAccessorFactoryTests { @Test // DATACMNS-809 public void getPropertyShouldFailOnUnhandledProperty() { - assertThat(getProperty(new Dummy(), "dummy")).hasValueSatisfying(property -> { - - assertThatExceptionOfType(UnsupportedOperationException.class)// - .isThrownBy(() -> getPersistentPropertyAccessor(bean).getProperty(property)); - }); + assertThat(getProperty(new Dummy(), "dummy")).hasValueSatisfying(property -> assertThatExceptionOfType(UnsupportedOperationException.class)// + .isThrownBy(() -> getPersistentPropertyAccessor(bean).getProperty(property))); } @Test // DATACMNS-809 public void setPropertyShouldFailOnUnhandledProperty() { - assertThat(getProperty(new Dummy(), "dummy")).hasValueSatisfying(property -> { - - assertThatExceptionOfType(UnsupportedOperationException.class)// - .isThrownBy(() -> getPersistentPropertyAccessor(bean).setProperty(property, Optional.empty())); - }); + assertThat(getProperty(new Dummy(), "dummy")).hasValueSatisfying(property -> assertThatExceptionOfType(UnsupportedOperationException.class)// + .isThrownBy(() -> getPersistentPropertyAccessor(bean).setProperty(property, Optional.empty()))); } @Test // DATACMNS-809 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 4c989f42a..ff809823f 100755 --- a/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/ConvertingPropertyAccessorUnitTests.java @@ -59,9 +59,7 @@ public class ConvertingPropertyAccessorUnitTests { Entity entity = new Entity(); entity.id = 1L; - assertThat(getIdProperty()).hasValueSatisfying(it -> { - assertThat(getAccessor(entity, CONVERSION_SERVICE).getProperty(it, String.class)).hasValue("1"); - }); + assertThat(getIdProperty()).hasValueSatisfying(it -> assertThat(getAccessor(entity, CONVERSION_SERVICE).getProperty(it, String.class)).hasValue("1")); } @Test // DATACMNS-596 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 503a888ad..1f6c07bcd 100755 --- a/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/PersistentEntityParameterValueProviderUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.mapping.model; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Iterator; @@ -77,13 +76,10 @@ public class PersistentEntityParameterValueProviderUnitTests

provider = new PersistentEntityParameterValueProvider<>(entity, propertyValueProvider, Optional.of(property)); - assertThat(entity.getPersistenceConstructor()).hasValueSatisfying(constructor -> { - - assertThatExceptionOfType(MappingException.class)// - .isThrownBy(() -> provider.getParameterValue(constructor.getParameters().iterator().next()))// - .withMessageContaining("bar")// - .withMessageContaining(Entity.class.getName()); - }); + assertThat(entity.getPersistenceConstructor()).hasValueSatisfying(constructor -> assertThatExceptionOfType(MappingException.class)// + .isThrownBy(() -> provider.getParameterValue(constructor.getParameters().iterator().next()))// + .withMessageContaining("bar")// + .withMessageContaining(Entity.class.getName())); } static class Outer { diff --git a/src/test/java/org/springframework/data/mapping/model/SpelExpressionParameterProviderUnitTests.java b/src/test/java/org/springframework/data/mapping/model/SpelExpressionParameterProviderUnitTests.java index a660e5113..e6170ad33 100755 --- a/src/test/java/org/springframework/data/mapping/model/SpelExpressionParameterProviderUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/model/SpelExpressionParameterProviderUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.mapping.model; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Optional; diff --git a/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java index 6297d621d..261f7f39d 100755 --- a/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/MapAccessingMethodInterceptorUnitTests.java @@ -60,7 +60,7 @@ public class MapAccessingMethodInterceptorUnitTests { @Test // DATACMNS-630 public void setterInvocationStoresValueInMap() throws Throwable { - Map map = new HashMap(); + Map map = new HashMap<>(); when(invocation.getMethod()).thenReturn(Sample.class.getMethod("setName", String.class)); when(invocation.getArguments()).thenReturn(new Object[] { "Foo" }); @@ -74,7 +74,7 @@ public class MapAccessingMethodInterceptorUnitTests { @Test // DATACMNS-630 public void getterInvocationReturnsValueFromMap() throws Throwable { - Map map = new HashMap(); + Map map = new HashMap<>(); map.put("name", "Foo"); when(invocation.getMethod()).thenReturn(Sample.class.getMethod("getName")); @@ -87,7 +87,7 @@ public class MapAccessingMethodInterceptorUnitTests { @Test // DATACMNS-630 public void getterReturnsNullIfMapDoesNotContainValue() throws Throwable { - Map map = new HashMap(); + Map map = new HashMap<>(); when(invocation.getMethod()).thenReturn(Sample.class.getMethod("getName")); @@ -98,7 +98,7 @@ public class MapAccessingMethodInterceptorUnitTests { public void rejectsNonAccessorInvocation() throws Throwable { when(invocation.getMethod()).thenReturn(Sample.class.getMethod("someMethod")); - new MapAccessingMethodInterceptor(Collections. emptyMap()).invoke(invocation); + new MapAccessingMethodInterceptor(Collections.emptyMap()).invoke(invocation); } interface Sample { diff --git a/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java index 4ab3a0c52..132705411 100755 --- a/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/ProjectingMethodInterceptorUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.projection; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Collection; diff --git a/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java b/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java index abf74b0b4..7d1cdbcc4 100755 --- a/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/projection/ProxyProjectionFactoryUnitTests.java @@ -94,11 +94,11 @@ public class ProxyProjectionFactoryUnitTests { @Test // DATACMNS-630 public void createsMapBasedProxyFromSource() { - HashMap addressSource = new HashMap(); + HashMap addressSource = new HashMap<>(); addressSource.put("zipCode", "ZIP"); addressSource.put("city", "NewYork"); - Map source = new HashMap(); + Map source = new HashMap<>(); source.put("firstname", "Dave"); source.put("lastname", "Matthews"); source.put("address", addressSource); diff --git a/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java index 34f82f26b..6048ee877 100755 --- a/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/projection/SpelEvaluatingMethodInterceptorUnitTests.java @@ -93,7 +93,7 @@ public class SpelEvaluatingMethodInterceptorUnitTests { @Test // DATACMNS-630 public void allowsMapAccessViaPropertyExpression() throws Throwable { - Map map = new HashMap(); + Map map = new HashMap<>(); map.put("name", "Dave"); when(invocation.getMethod()).thenReturn(Projection.class.getMethod("propertyFromTarget")); diff --git a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java index e61dea273..3046f58ec 100755 --- a/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/QuerydslRepositoryInvokerAdapterUnitTests.java @@ -15,7 +15,6 @@ */ package org.springframework.data.querydsl; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.io.Serializable; 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 b198c658f..e52fab2f7 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslBindingsFactoryUnitTests.java @@ -120,7 +120,7 @@ public class QuerydslBindingsFactoryUnitTests { @Override public void customize(QuerydslBindings bindings, QUser user) { - bindings.bind(QUser.user.firstname).firstOptional((path, value) -> value.map(it -> path.contains(it))); + bindings.bind(QUser.user.firstname).firstOptional((path, value) -> value.map(path::contains)); } } } 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 25843bab1..f114e8a2f 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslDefaultBindingUnitTests.java @@ -53,9 +53,7 @@ public class QuerydslDefaultBindingUnitTests { Optional 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()); - }); + assertThat(predicate).hasValueSatisfying(it -> assertThat(it.toString()).isEqualTo(QUser.user.address.city.eq("two rivers").toString())); } @Test // DATACMNS-669 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 421199a5d..862089c80 100755 --- a/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java +++ b/src/test/java/org/springframework/data/querydsl/binding/QuerydslPredicateBuilderUnitTests.java @@ -59,7 +59,7 @@ public class QuerydslPredicateBuilderUnitTests { public void setUp() { this.builder = new QuerydslPredicateBuilder(new DefaultFormattingConversionService(), SimpleEntityPathResolver.INSTANCE); - this.values = new LinkedMultiValueMap(); + this.values = new LinkedMultiValueMap<>(); } @Test(expected = IllegalArgumentException.class) // DATACMNS-669 @@ -122,7 +122,7 @@ public class QuerydslPredicateBuilderUnitTests { values.add("lastname", null); QuerydslBindings bindings = new QuerydslBindings(); - bindings.bind(QUser.user.lastname).firstOptional((path, value) -> value.map(it -> path.contains(it))); + bindings.bind(QUser.user.lastname).firstOptional((path, value) -> value.map(path::contains)); builder.getPredicate(USER_TYPE, values, bindings); } 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 db331eebf..473a38693 100644 --- a/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java +++ b/src/test/java/org/springframework/data/repository/cdi/DummyCdiExtension.java @@ -96,7 +96,7 @@ public class DummyCdiExtension extends CdiRepositoryExtensionSupport { @Override protected void setComponentInstanceMap() { - componentInstanceMap = new HashMap, BeanInstanceBag>(); + componentInstanceMap = new HashMap<>(); } @Override 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 cd9f193cf..b59732184 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryBeanDefinitionRegistrarSupportUnitTests.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.config; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.lang.annotation.Annotation; 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 58bc83c04..dface79fc 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryComponentProviderUnitTests.java @@ -43,7 +43,7 @@ public class RepositoryComponentProviderUnitTests { @Test public void findsAnnotatedRepositoryInterface() { - RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections. emptyList()); + RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections.emptyList()); Set components = provider.findCandidateComponents("org.springframework.data.repository.sample"); assertThat(components).hasSize(3); @@ -54,7 +54,7 @@ public class RepositoryComponentProviderUnitTests { @Test public void limitsFoundRepositoriesToIncludeFiltersOnly() { - List filters = Arrays.asList(new AssignableTypeFilter(MyOtherRepository.class)); + List filters = Collections.singletonList(new AssignableTypeFilter(MyOtherRepository.class)); RepositoryComponentProvider provider = new RepositoryComponentProvider(filters); Set components = provider.findCandidateComponents("org.springframework.data.repository"); @@ -66,7 +66,7 @@ public class RepositoryComponentProviderUnitTests { @Test // DATACMNS-90 public void shouldConsiderNestedRepositoryInterfacesIfEnabled() { - RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections. emptyList()); + RepositoryComponentProvider provider = new RepositoryComponentProvider(Collections.emptyList()); provider.setConsiderNestedRepositoryInterfaces(true); Set components = provider.findCandidateComponents("org.springframework.data.repository.config"); 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 bbb41d966..bebd27cdd 100755 --- a/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/RepositoryConfigurationExtensionSupportUnitTests.java @@ -72,12 +72,12 @@ public class RepositoryConfigurationExtensionSupportUnitTests { @Override protected Collection> getIdentifyingAnnotations() { - return Collections.>singleton(Primary.class); + return Collections.singleton(Primary.class); } @Override protected Collection> getIdentifyingTypes() { - return Collections.>singleton(StoreInterface.class); + return Collections.singleton(StoreInterface.class); } } diff --git a/src/test/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSourceUnitTests.java b/src/test/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSourceUnitTests.java index 161c1801a..4d4425796 100755 --- a/src/test/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSourceUnitTests.java +++ b/src/test/java/org/springframework/data/repository/config/XmlRepositoryConfigurationSourceUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.repository.config; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import org.junit.Test; 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 152211486..40123aaa4 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 @@ -51,7 +51,7 @@ public class AbstractEntityInformationUnitTests { @Test // DATACMNS-357 public void detectsNewStateForPrimitiveIds() { - CustomEntityInformation fooEn = new CustomEntityInformation( + CustomEntityInformation fooEn = new CustomEntityInformation<>( PrimitiveIdEntity.class); PrimitiveIdEntity entity = new PrimitiveIdEntity(); @@ -64,7 +64,7 @@ public class AbstractEntityInformationUnitTests { @Test // DATACMNS-357 public void detectsNewStateForPrimitiveWrapperIds() { - CustomEntityInformation fooEn = new CustomEntityInformation( + CustomEntityInformation fooEn = new CustomEntityInformation<>( PrimitiveWrapperIdEntity.class); PrimitiveWrapperIdEntity entity = new PrimitiveWrapperIdEntity(); 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 a1e0cb8da..06fe9072a 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 @@ -136,11 +136,7 @@ public class DefaultCrudMethodsUnitTests { Arrays .asList(methods.getSaveMethod(), methods.getDeleteMethod(), methods.getFindAllMethod(), methods.getFindOneMethod())// - .forEach(method -> { - assertThat(method).hasValueSatisfying(it -> { - assertThat(it.isAccessible()).isTrue(); - }); - }); + .forEach(method -> assertThat(method).hasValueSatisfying(it -> assertThat(it.isAccessible()).isTrue())); } private static CrudMethods getMethodsFor(Class repositoryInterface) { 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 ddf8ecb3f..c8d0e8730 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 @@ -16,7 +16,6 @@ package org.springframework.data.repository.core.support; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import lombok.Getter; @@ -25,6 +24,7 @@ import lombok.Value; import java.io.Serializable; import java.util.Arrays; import java.util.Collection; +import java.util.Collections; import java.util.UUID; import org.aopalliance.aop.Advice; @@ -109,7 +109,7 @@ public class EventPublishingRepositoryProxyPostProcessorUnitTests { doReturn(SampleRepository.class.getMethod("save", Object.class)).when(invocation).getMethod(); SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Arrays.asList(event)); + MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); doReturn(new Object[] { sample }).when(invocation).getArguments(); EventPublishingMethodInterceptor// @@ -161,8 +161,8 @@ public class EventPublishingRepositoryProxyPostProcessorUnitTests { public void publishesEventsForCallToSaveWithIterable() throws Throwable { SomeEvent event = new SomeEvent(); - MultipleEvents sample = MultipleEvents.of(Arrays.asList(event)); - doReturn(new Object[] { Arrays.asList(sample) }).when(invocation).getArguments(); + MultipleEvents sample = MultipleEvents.of(Collections.singletonList(event)); + doReturn(new Object[] {Collections.singletonList(sample)}).when(invocation).getArguments(); doReturn(SampleRepository.class.getMethod("save", Iterable.class)).when(invocation).getMethod(); 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 0ebb8a1eb..c617f435a 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 @@ -21,6 +21,7 @@ import static org.springframework.data.domain.ExampleMatcher.GenericPropertyMatc import org.junit.Before; import org.junit.Test; import org.springframework.data.domain.ExampleMatcher; +import org.springframework.data.domain.ExampleMatcher.GenericPropertyMatcher; import org.springframework.data.domain.ExampleMatcher.NoOpPropertyValueTransformer; import org.springframework.data.domain.ExampleMatcher.NullHandler; import org.springframework.data.domain.ExampleMatcher.PropertyValueTransformer; @@ -153,7 +154,7 @@ public class ExampleSpecificationAccessorUnitTests { specification = ExampleMatcher.matching().withStringMatcher(StringMatcher.ENDING) .withMatcher("firstname", contains()).withMatcher("address.city", startsWith()) - .withMatcher("lastname", matcher -> matcher.ignoreCase()); + .withMatcher("lastname", GenericPropertyMatcher::ignoreCase); exampleSpecificationAccessor = new ExampleMatcherAccessor(specification); @@ -168,7 +169,7 @@ public class ExampleSpecificationAccessorUnitTests { specification = ExampleMatcher.matching().// withStringMatcher(StringMatcher.STARTING).// - withMatcher("firstname", matcher -> matcher.ignoreCase()); + withMatcher("firstname", GenericPropertyMatcher::ignoreCase); exampleSpecificationAccessor = new ExampleMatcherAccessor(specification); @@ -217,13 +218,7 @@ public class ExampleSpecificationAccessorUnitTests { @Test // DATACMNS-810 public void getValueTransformerForPathReturnsConfigurtedTransformerForPath() { - PropertyValueTransformer transformer = new PropertyValueTransformer() { - - @Override - public Object convert(Object source) { - return source.toString(); - } - }; + PropertyValueTransformer transformer = source -> source.toString(); specification = ExampleMatcher.matching().// withTransformer("firstname", transformer); diff --git a/src/test/java/org/springframework/data/repository/core/support/PersistableEntityInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/PersistableEntityInformationUnitTests.java index cbc3a63cb..7109df119 100755 --- a/src/test/java/org/springframework/data/repository/core/support/PersistableEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/PersistableEntityInformationUnitTests.java @@ -62,7 +62,7 @@ public class PersistableEntityInformationUnitTests { @Test public void returnsGivenClassAsEntityType() throws Exception { - PersistableEntityInformation info = new PersistableEntityInformation( + PersistableEntityInformation info = new PersistableEntityInformation<>( PersistableEntity.class); assertThat(info.getJavaType()).isEqualTo(PersistableEntity.class); diff --git a/src/test/java/org/springframework/data/repository/core/support/PersistenceExceptionTranslationRepositoryProxyPostProcessorUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/PersistenceExceptionTranslationRepositoryProxyPostProcessorUnitTests.java index 84ee9e74f..63c9c97e7 100755 --- a/src/test/java/org/springframework/data/repository/core/support/PersistenceExceptionTranslationRepositoryProxyPostProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/PersistenceExceptionTranslationRepositoryProxyPostProcessorUnitTests.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.core.support; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import org.junit.Test; 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 4c7141381..1ef51abd6 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 @@ -39,7 +39,7 @@ public class PersistentEntityInformationUnitTests { SampleMappingContext context = new SampleMappingContext(); PersistentEntity entity = context.getRequiredPersistentEntity(Sample.class); - EntityInformation information = new PersistentEntityInformation(entity); + EntityInformation information = new PersistentEntityInformation<>(entity); assertThat(information.getIdType()).isEqualTo(Long.class); Sample sample = new Sample(); @@ -55,7 +55,7 @@ public class PersistentEntityInformationUnitTests { PersistentEntity entity = context .getRequiredPersistentEntity(EntityWithoutId.class); - PersistentEntityInformation information = new PersistentEntityInformation( + PersistentEntityInformation information = new PersistentEntityInformation<>( entity); assertThat(information.getId(new EntityWithoutId())).isNotPresent(); } diff --git a/src/test/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptorUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptorUnitTests.java index cdaf1df27..8d75b0222 100755 --- a/src/test/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/QueryExecutorMethodInterceptorUnitTests.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.core.support; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Optional; 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 688f1795b..5ca9e6588 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 @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.core.support; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import reactor.core.publisher.Mono; diff --git a/src/test/java/org/springframework/data/repository/core/support/ReflectionEntityInformationUnitTests.java b/src/test/java/org/springframework/data/repository/core/support/ReflectionEntityInformationUnitTests.java index 1f0128b30..95aed9f48 100755 --- a/src/test/java/org/springframework/data/repository/core/support/ReflectionEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/repository/core/support/ReflectionEntityInformationUnitTests.java @@ -49,7 +49,7 @@ public class ReflectionEntityInformationUnitTests { PrimitiveId primitiveId = new PrimitiveId(); - EntityInformation information = new ReflectionEntityInformation( + EntityInformation information = new ReflectionEntityInformation<>( PrimitiveId.class); assertThat(information.isNew(primitiveId)).isTrue(); @@ -63,7 +63,7 @@ public class ReflectionEntityInformationUnitTests { } private static EntityInformation getEntityInformation(Class type) { - return new ReflectionEntityInformation(type, Id.class); + return new ReflectionEntityInformation<>(type, Id.class); } static class Sample { 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 4b3ea4001..aa1887ef5 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 @@ -248,7 +248,7 @@ public class RepositoryFactorySupportUnitTests { assumeThat(SPRING_VERSION.isGreaterThanOrEqualTo(FOUR_DOT_TWO), is(true)); - List reference = Arrays.asList(new User()); + List reference = Collections.singletonList(new User()); expect(prepareConvertingRepository(reference).readAllByFirstname("Foo"), reference); } @@ -256,7 +256,7 @@ public class RepositoryFactorySupportUnitTests { @Test // DATACMNS-714 public void wrapsExecutionResultIntoListenableFutureWithEntityCollectionIfConfigured() throws Exception { - List reference = Arrays.asList(new User()); + List reference = Collections.singletonList(new User()); expect(prepareConvertingRepository(reference).readAllByLastname("Foo"), reference); } 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 28efc63b1..f9451dde9 100755 --- a/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/init/ResourceReaderRepositoryInitializerUnitTests.java @@ -15,7 +15,6 @@ */ package org.springframework.data.repository.init; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.util.Collection; 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 c1484d70c..e494cafeb 100755 --- a/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ExtensionAwareEvaluationContextProviderUnitTests.java @@ -55,7 +55,7 @@ public class ExtensionAwareEvaluationContextProviderUnitTests { public void setUp() throws Exception { this.method = SampleRepo.class.getMethod("findByFirstname", String.class); - this.provider = new ExtensionAwareEvaluationContextProvider(Collections.emptyList()); + this.provider = new ExtensionAwareEvaluationContextProvider(Collections.emptyList()); } @Test // DATACMNS-533 @@ -199,7 +199,7 @@ public class ExtensionAwareEvaluationContextProviderUnitTests { final AtomicInteger counter = new AtomicInteger(); - this.provider = new ExtensionAwareEvaluationContextProvider(Arrays.asList( // + this.provider = new ExtensionAwareEvaluationContextProvider(Collections.singletonList( // new DummyExtension("_first", "first") { @Override 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 8259b513c..dc23a3bed 100755 --- a/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java +++ b/src/test/java/org/springframework/data/repository/query/ResultProcessorUnitTests.java @@ -58,7 +58,7 @@ public class ResultProcessorUnitTests { ResultProcessor information = new ResultProcessor(getQueryMethod("findAll"), new SpelAwareProxyProjectionFactory()); Sample sample = new Sample("Dave", "Matthews"); - List result = new ArrayList<>(Arrays.asList(sample)); + List result = new ArrayList<>(Collections.singletonList(sample)); List converted = information.processResult(result); assertThat(converted).contains(sample); @@ -69,7 +69,7 @@ public class ResultProcessorUnitTests { ResultProcessor information = getProcessor("findOneProjection"); - SampleProjection result = information.processResult(Arrays.asList("Matthews")); + SampleProjection result = information.processResult(Collections.singletonList("Matthews")); assertThat(result.getLastname()).isEqualTo("Matthews"); } @@ -80,8 +80,8 @@ public class ResultProcessorUnitTests { ResultProcessor information = getProcessor("findAllProjection"); - List columns = Arrays.asList("Matthews"); - List> source = new ArrayList>(Arrays.asList(columns)); + List columns = Collections.singletonList("Matthews"); + List> source = new ArrayList<>(Collections.singletonList(columns)); List result = information.processResult(source); @@ -94,8 +94,8 @@ public class ResultProcessorUnitTests { ResultProcessor information = getProcessor("findAllProjection"); - List> source = new ArrayList>( - Arrays.asList(Collections.singletonMap("lastname", "Matthews"))); + List> source = new ArrayList<>( + Collections.singletonList(Collections.singletonMap("lastname", "Matthews"))); List result = information.processResult(source); @@ -108,7 +108,7 @@ public class ResultProcessorUnitTests { ResultProcessor information = getProcessor("findAllProjection"); - List source = new ArrayList<>(Arrays.asList(new Sample("Dave", "Matthews"))); + List source = new ArrayList<>(Collections.singletonList(new Sample("Dave", "Matthews"))); List result = information.processResult(source); assertThat(result).hasSize(1); @@ -120,7 +120,7 @@ public class ResultProcessorUnitTests { ResultProcessor information = getProcessor("findPageProjection", Pageable.class); - Page source = new PageImpl<>(Arrays.asList(new Sample("Dave", "Matthews"))); + Page source = new PageImpl<>(Collections.singletonList(new Sample("Dave", "Matthews"))); Page result = information.processResult(source); assertThat(result.getContent()).hasSize(1); @@ -186,7 +186,7 @@ public class ResultProcessorUnitTests { @SuppressWarnings("unchecked") public void supportsStreamAsReturnWrapper() throws Exception { - Stream samples = Arrays.asList(new Sample("Dave", "Matthews")).stream(); + Stream samples = Collections.singletonList(new Sample("Dave", "Matthews")).stream(); Object result = getProcessor("findStreamProjection").processResult(samples); @@ -209,7 +209,7 @@ public class ResultProcessorUnitTests { ResultProcessor processor = getProcessor("findAllProjection"); - SpecialList specialList = new SpecialList(new Object()); + SpecialList specialList = new SpecialList<>(new Object()); specialList.add(new Sample("Dave", "Matthews")); processor.processResult(specialList); 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 c7ac3ec79..e9d8f6c11 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 @@ -22,6 +22,7 @@ import static org.springframework.data.repository.query.parser.Part.Type.*; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.Collections; import java.util.Date; import java.util.Iterator; import java.util.List; @@ -138,12 +139,12 @@ public class PartTreeUnitTests { @Test public void parsesNearCorrectly() { - assertType(asList("locationNear"), NEAR, "location"); + assertType(Collections.singletonList("locationNear"), NEAR, "location"); } @Test public void supportToStringWithoutSortOrder() throws Exception { - assertType(asList("firstname"), SIMPLE_PROPERTY, "firstname"); + assertType(Collections.singletonList("firstname"), SIMPLE_PROPERTY, "firstname"); } @Test @@ -222,7 +223,7 @@ public class PartTreeUnitTests { @Test // DATACMNS-94 public void parsesExistsKeywordCorrectly() { - assertType(asList("lastnameExists"), EXISTS, "lastname", 0, false); + assertType(Collections.singletonList("lastnameExists"), EXISTS, "lastname", 0, false); } @Test // DATACMNS-94 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 19617f927..405e3c1e2 100644 --- a/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java +++ b/src/test/java/org/springframework/data/repository/sample/SampleConfiguration.java @@ -24,14 +24,14 @@ public class SampleConfiguration { @Bean public RepositoryFactoryBeanSupport, User, Long> userRepositoryFactory() { - return new DummyRepositoryFactoryBean, User, Long>(UserRepository.class); + return new DummyRepositoryFactoryBean<>(UserRepository.class); } @Bean public RepositoryFactoryBeanSupport, Product, Long> productRepositoryFactory( ProductRepository productRepository) { - DummyRepositoryFactoryBean, Product, Long> factory = new DummyRepositoryFactoryBean, Product, Long>( + DummyRepositoryFactoryBean, Product, Long> factory = new DummyRepositoryFactoryBean<>( ProductRepository.class); factory.setCustomImplementation(productRepository); 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 2837bc4b9..d7e9804ed 100755 --- a/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/CrudRepositoryInvokerUnitTests.java @@ -39,7 +39,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.VerifyingMethodInterceptor; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat.ISO; import org.springframework.format.support.DefaultFormattingConversionService; 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 9acffa283..09aa7a66a 100755 --- a/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/DomainClassConverterUnitTests.java @@ -16,7 +16,6 @@ package org.springframework.data.repository.support; import static org.assertj.core.api.Assertions.*; -import static org.mockito.ArgumentMatchers.*; import static org.mockito.Mockito.*; import java.lang.reflect.Method; 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 856059322..0ddf962d8 100755 --- a/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/PaginginAndSortingRepositoryInvokerUnitTests.java @@ -29,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.VerifyingMethodInterceptor; import org.springframework.format.support.DefaultFormattingConversionService; /** 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 e9eca353b..f943b9827 100755 --- a/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/ReflectionRepositoryInvokerUnitTests.java @@ -45,7 +45,6 @@ import org.springframework.data.repository.core.support.DefaultRepositoryMetadat import org.springframework.data.repository.query.Param; import org.springframework.data.repository.support.CrudRepositoryInvokerUnitTests.Person; import org.springframework.data.repository.support.CrudRepositoryInvokerUnitTests.PersonRepository; -import org.springframework.data.repository.support.RepositoryInvocationTestUtils.VerifyingMethodInterceptor; import org.springframework.format.support.DefaultFormattingConversionService; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; @@ -135,7 +134,7 @@ public class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 public void invokesQueryMethod() throws Exception { - MultiValueMap parameters = new LinkedMultiValueMap(); + MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.add("firstName", "John"); Method method = PersonRepository.class.getMethod("findByFirstName", String.class, Pageable.class); @@ -148,7 +147,7 @@ public class ReflectionRepositoryInvokerUnitTests { @Test // DATACMNS-589 public void considersFormattingAnnotationsOnQueryMethodParameters() throws Exception { - MultiValueMap parameters = new LinkedMultiValueMap(); + 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); @@ -208,7 +207,7 @@ public class ReflectionRepositoryInvokerUnitTests { for (String[] ids : Arrays.asList(new String[] { "1,2" }, new String[] { "1", "2" })) { - MultiValueMap parameters = new LinkedMultiValueMap(); + MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.put("ids", Arrays.asList(ids)); Method method = PersonRepository.class.getMethod("findByIdIn", Collection.class); @@ -224,7 +223,7 @@ public class ReflectionRepositoryInvokerUnitTests { RepositoryInvoker invoker = getInvokerFor(mock(SimpleRepository.class)); - MultiValueMap parameters = new LinkedMultiValueMap(); + MultiValueMap parameters = new LinkedMultiValueMap<>(); parameters.add("value", "value"); Method method = SimpleRepository.class.getMethod("findByClass", int.class); 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 3fa4f7ee3..bb36feeb8 100755 --- a/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java +++ b/src/test/java/org/springframework/data/repository/support/RepositoriesUnitTests.java @@ -116,7 +116,7 @@ public class RepositoriesUnitTests { public void discoversRepositoryForAlternativeDomainType() { RepositoryMetadata metadata = new CustomRepositoryMetadata(SampleRepository.class); - RepositoryFactoryInformation information = new SampleRepoFactoryInformation(metadata); + RepositoryFactoryInformation information = new SampleRepoFactoryInformation<>(metadata); GenericApplicationContext context = new GenericApplicationContext(); context.getBeanFactory().registerSingleton("foo", information); @@ -217,7 +217,7 @@ public class RepositoriesUnitTests { */ @Override public Set> getAlternativeDomainTypes() { - return Collections.>singleton(super.getDomainType()); + return Collections.singleton(super.getDomainType()); } } 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 dc1444bc4..a2278be26 100755 --- a/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java +++ b/src/test/java/org/springframework/data/repository/util/QueryExecutionConvertersUnitTests.java @@ -167,7 +167,7 @@ public class QueryExecutionConvertersUnitTests { @Test // DATACMNS-795 public void turnsNullIntoScalaOptionEmpty() { - assertThat(conversionService.convert(new NullableWrapper(null), Option.class)).isEqualTo(Option. empty()); + assertThat(conversionService.convert(new NullableWrapper(null), Option.class)).isEqualTo(Option.empty()); } @Test // DATACMNS-795 diff --git a/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java b/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java index 5125a65e2..c8eb66da2 100755 --- a/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java +++ b/src/test/java/org/springframework/data/transaction/ChainedTransactionManagerTests.java @@ -47,7 +47,7 @@ public class ChainedTransactionManagerTests { createAndCommitTransaction(); - assertThat(transactionManager).matches(tptm -> tptm.isCommitted()); + assertThat(transactionManager).matches(TestPlatformTransactionManager::isCommitted); } @Test @@ -56,7 +56,7 @@ public class ChainedTransactionManagerTests { setupTransactionManagers(createFailingTransactionManager("single")); assertThatExceptionOfType(HeuristicCompletionException.class)// - .isThrownBy(() -> createAndCommitTransaction())// + .isThrownBy(this::createAndCommitTransaction)// .matches(e -> e.getOutcomeState() == HeuristicCompletionException.STATE_ROLLED_BACK); } @@ -69,8 +69,8 @@ public class ChainedTransactionManagerTests { setupTransactionManagers(first, second); createAndCommitTransaction(); - assertThat(first).matches(ptm -> ptm.isCommitted()); - assertThat(second).matches(ptm -> ptm.isCommitted()); + assertThat(first).matches(TestPlatformTransactionManager::isCommitted); + assertThat(second).matches(TestPlatformTransactionManager::isCommitted); } @Test @@ -92,7 +92,7 @@ public class ChainedTransactionManagerTests { createNonFailingTransactionManager("second")); assertThatExceptionOfType(HeuristicCompletionException.class)// - .isThrownBy(() -> createAndCommitTransaction())// + .isThrownBy(this::createAndCommitTransaction)// .matches(e -> e.getOutcomeState() == HeuristicCompletionException.STATE_MIXED); } @@ -105,8 +105,8 @@ public class ChainedTransactionManagerTests { setupTransactionManagers(first, second); createAndRollbackTransaction(); - assertThat(first).matches(ptm -> ptm.wasRolledBack()); - assertThat(second).matches(ptm -> ptm.wasRolledBack()); + assertThat(first).matches(TestPlatformTransactionManager::wasRolledBack); + assertThat(second).matches(TestPlatformTransactionManager::wasRolledBack); } diff --git a/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java b/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java index effe16661..94793afb6 100755 --- a/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java +++ b/src/test/java/org/springframework/data/util/ClassTypeInformationUnitTests.java @@ -48,9 +48,9 @@ public class ClassTypeInformationUnitTests { OptionalAssert> assertThat = assertOptional(discoverer.getProperty("content")); - assertThat.value(it -> it.getType()).isEqualTo(String.class); - assertThat.flatMap(it -> it.getComponentType()).isNotPresent(); - assertThat.flatMap(it -> it.getMapValueType()).isNotPresent(); + assertThat.value(TypeInformation::getType).isEqualTo(String.class); + assertThat.flatMap(TypeInformation::getComponentType).isNotPresent(); + assertThat.flatMap(TypeInformation::getMapValueType).isNotPresent(); } @Test @@ -60,11 +60,11 @@ public class ClassTypeInformationUnitTests { assertThat(discoverer.getType()).isEqualTo(ConcreteWrapper.class); assertOptional(discoverer.getProperty("wrapped")).andAssert(inner -> { - inner.value(it -> it.getType()).isEqualTo(GenericType.class); - inner.flatMap(it -> it.getProperty("content")).value(it -> it.getType()).isEqualTo(String.class); + inner.value(TypeInformation::getType).isEqualTo(GenericType.class); + inner.flatMap(it -> it.getProperty("content")).value(TypeInformation::getType).isEqualTo(String.class); }); - assertOptional(discoverer.getProperty("wrapped.content")).value(it -> it.getType()).isEqualTo(String.class); + assertOptional(discoverer.getProperty("wrapped.content")).value(TypeInformation::getType).isEqualTo(String.class); } @Test @@ -72,7 +72,7 @@ public class ClassTypeInformationUnitTests { public void discoversBoundType() { TypeInformation information = ClassTypeInformation.from(GenericTypeWithBound.class); - assertOptional(information.getProperty("person")).value(it -> it.getType()).isEqualTo(Person.class); + assertOptional(information.getProperty("person")).value(TypeInformation::getType).isEqualTo(Person.class); } @Test @@ -80,7 +80,7 @@ public class ClassTypeInformationUnitTests { TypeInformation information = ClassTypeInformation .from(SpecialGenericTypeWithBound.class); - assertOptional(information.getProperty("person")).value(it -> it.getType()).isEqualTo(SpecialPerson.class); + assertOptional(information.getProperty("person")).value(TypeInformation::getType).isEqualTo(SpecialPerson.class); } @Test @@ -89,8 +89,8 @@ public class ClassTypeInformationUnitTests { TypeInformation information = ClassTypeInformation.from(AnotherGenericType.class); - assertOptional(information.getProperty("nested")).value(it -> it.getType()).isEqualTo(GenericTypeWithBound.class); - assertOptional(information.getProperty("nested.person")).value(it -> it.getType()).isEqualTo(Person.class); + assertOptional(information.getProperty("nested")).value(TypeInformation::getType).isEqualTo(GenericTypeWithBound.class); + assertOptional(information.getProperty("nested.person")).value(TypeInformation::getType).isEqualTo(Person.class); } @Test @@ -100,25 +100,25 @@ public class ClassTypeInformationUnitTests { OptionalAssert> optional = assertOptional(information.getProperty("array")); - optional.flatMap(it -> it.getComponentType()).value(it -> it.getType()).isEqualTo(String.class); - optional.value(it -> it.getType()).satisfies(it -> { + optional.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(String.class); + optional.value(TypeInformation::getType).satisfies(it -> { assertThat(it).isEqualTo(String[].class); assertThat(it.isArray()).isTrue(); }); optional = assertOptional(information.getProperty("foo")); - optional.value(it -> it.getType()).isEqualTo(Collection[].class); - optional.flatMap(it -> it.getComponentType()).andAssert(it -> { - it.value(inner -> inner.getType()).isEqualTo(Collection.class); - it.flatMap(inner -> inner.getComponentType()).value(inner -> inner.getType()).isEqualTo(String.class); + optional.value(TypeInformation::getType).isEqualTo(Collection[].class); + optional.flatMap(TypeInformation::getComponentType).andAssert(it -> { + it.value(TypeInformation::getType).isEqualTo(Collection.class); + it.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(String.class); }); optional = assertOptional(information.getProperty("rawSet")); - optional.value(it -> it.getType()).isEqualTo(Set.class); - optional.flatMap(it -> it.getComponentType()).value(it -> it.getType()).isEqualTo(Object.class); - optional.flatMap(it -> it.getMapValueType()).isNotPresent(); + optional.value(TypeInformation::getType).isEqualTo(Set.class); + optional.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(Object.class); + optional.flatMap(TypeInformation::getMapValueType).isNotPresent(); } @Test @@ -127,13 +127,13 @@ public class ClassTypeInformationUnitTests { TypeInformation information = ClassTypeInformation.from(StringMapContainer.class); OptionalAssert> assertion = assertOptional(information.getProperty("genericMap")); - assertion.value(it -> it.getType()).isEqualTo(Map.class); - assertion.flatMap(it -> it.getMapValueType()).value(it -> it.getType()).isEqualTo(String.class); + assertion.value(TypeInformation::getType).isEqualTo(Map.class); + assertion.flatMap(TypeInformation::getMapValueType).value(TypeInformation::getType).isEqualTo(String.class); assertion = assertOptional(information.getProperty("map")); - assertion.value(it -> it.getType()).isEqualTo(Map.class); - assertion.flatMap(it -> it.getMapValueType()).value(it -> it.getType()).isEqualTo(Calendar.class); + assertion.value(TypeInformation::getType).isEqualTo(Map.class); + assertion.flatMap(TypeInformation::getMapValueType).value(TypeInformation::getType).isEqualTo(Calendar.class); } @Test @@ -150,8 +150,8 @@ public class ClassTypeInformationUnitTests { TypeInformation from = ClassTypeInformation.from(PropertyGetter.class); - assertOptional(from.getProperty("_name")).value(it -> it.getType()).isEqualTo(String.class); - assertOptional(from.getProperty("name")).value(it -> it.getType()).isEqualTo(byte[].class); + assertOptional(from.getProperty("_name")).value(TypeInformation::getType).isEqualTo(String.class); + assertOptional(from.getProperty("name")).value(TypeInformation::getType).isEqualTo(byte[].class); } @Test // DATACMNS-77 @@ -168,15 +168,15 @@ public class ClassTypeInformationUnitTests { OptionalAssert> assertion = assertOptional(information.getProperty("wildcard")); - assertion.value(it -> it.isCollectionLike()).isEqualTo(true); - assertion.flatMap(it -> it.getComponentType()).value(it -> it.getType()).isEqualTo(String.class); + assertion.value(TypeInformation::isCollectionLike).isEqualTo(true); + assertion.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(String.class); assertion = assertOptional(information.getProperty("complexWildcard")); - assertion.value(it -> it.isCollectionLike()).isEqualTo(true); - assertion.flatMap(it -> it.getComponentType()).andAssert(it -> { - it.value(inner -> inner.isCollectionLike()).isEqualTo(true); - it.flatMap(inner -> inner.getComponentType()).value(inner -> inner.getType()).isEqualTo(String.class); + assertion.value(TypeInformation::isCollectionLike).isEqualTo(true); + assertion.flatMap(TypeInformation::getComponentType).andAssert(it -> { + it.value(TypeInformation::isCollectionLike).isEqualTo(true); + it.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(String.class); }); } @@ -266,7 +266,7 @@ public class ClassTypeInformationUnitTests { TypeInformation information = from(String[][].class); assertThat(information.getType()).isEqualTo(String[][].class); - assertOptional(information.getComponentType()).value(it -> it.getType()).isEqualTo(String[].class); + assertOptional(information.getComponentType()).value(TypeInformation::getType).isEqualTo(String[].class); assertThat(information.getActualType().getActualType().getType()).isEqualTo(String.class); } @@ -299,17 +299,17 @@ public class ClassTypeInformationUnitTests { assertion// // Type - .andAssert(inner -> inner.value(it -> it.getType()).isEqualTo(SortedMap.class))// + .andAssert(inner -> inner.value(TypeInformation::getType).isEqualTo(SortedMap.class))// // Map value type - .andAssert(inner -> inner.flatMap(it -> it.getMapValueType()).andAssert(value -> { - value.value(it -> it.getType()).isEqualTo(SortedMap.class); - value.flatMap(it -> it.getComponentType()).value(it -> it.getType()).isEqualTo(String.class); + .andAssert(inner -> inner.flatMap(TypeInformation::getMapValueType).andAssert(value -> { + value.value(TypeInformation::getType).isEqualTo(SortedMap.class); + value.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(String.class); // Nested value type - }).flatMap(it -> it.getMapValueType()).andAssert(nestedValue -> { - nestedValue.value(it -> it.getType()).isEqualTo(List.class); - nestedValue.flatMap(it -> it.getComponentType()).value(it -> it.getType()).isEqualTo(Person.class); + }).flatMap(TypeInformation::getMapValueType).andAssert(nestedValue -> { + nestedValue.value(TypeInformation::getType).isEqualTo(List.class); + nestedValue.flatMap(TypeInformation::getComponentType).value(TypeInformation::getType).isEqualTo(Person.class); })); } @@ -325,9 +325,9 @@ public class ClassTypeInformationUnitTests { ClassTypeInformation rootType = from(ConcreteRoot.class); assertOptional(rootType.getProperty("subs"))// - .map(it -> it.getActualType())// + .map(TypeInformation::getActualType)// .flatMap(it -> it.getProperty("subSub"))// - .value(it -> it.getType()).isEqualTo(ConcreteSubSub.class); + .value(TypeInformation::getType).isEqualTo(ConcreteSubSub.class); } @Test // DATACMNS-594 @@ -335,7 +335,7 @@ public class ClassTypeInformationUnitTests { assertOptional(ClassTypeInformation.from(ConcreteRootIntermediate.class) .getProperty("intermediate.content.intermediate.content"))// - .value(it -> it.getType()).isEqualTo(Leaf.class); + .value(TypeInformation::getType).isEqualTo(Leaf.class); } @Test // DATACMNS-783, DATACMNS-853 @@ -346,9 +346,9 @@ public class ClassTypeInformationUnitTests { assertOptional(root.getProperty("abstractBar"))// .map(it -> it.specialize(ClassTypeInformation.from(Bar.class)))// .andAssert(inner -> { - inner.value(it -> it.getType()).isEqualTo(Bar.class); - inner.flatMap(it -> it.getProperty("field")).value(it -> it.getType()).isEqualTo(Character.class); - inner.flatMap(it -> it.getProperty("anotherField")).value(it -> it.getType()).isEqualTo(Integer.class); + inner.value(TypeInformation::getType).isEqualTo(Bar.class); + inner.flatMap(it -> it.getProperty("field")).value(TypeInformation::getType).isEqualTo(Character.class); + inner.flatMap(it -> it.getProperty("anotherField")).value(TypeInformation::getType).isEqualTo(Integer.class); }); } @@ -385,7 +385,7 @@ public class ClassTypeInformationUnitTests { ClassTypeInformation information = ClassTypeInformation.from(Concrete.class); - assertOptional(information.getProperty("field")).value(it -> it.getType()).isEqualTo(Nested.class); + assertOptional(information.getProperty("field")).value(TypeInformation::getType).isEqualTo(Nested.class); } @Test // DATACMNS-940 @@ -393,9 +393,7 @@ public class ClassTypeInformationUnitTests { ClassTypeInformation information = ClassTypeInformation.from(SampleTraversable.class); - assertThat(information.getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isAssignableFrom(Integer.class); - }); + assertThat(information.getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isAssignableFrom(Integer.class)); } @Test // DATACMNS-940 @@ -403,13 +401,9 @@ public class ClassTypeInformationUnitTests { ClassTypeInformation information = ClassTypeInformation.from(SampleMap.class); - assertThat(information.getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isAssignableFrom(String.class); - }); + assertThat(information.getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isAssignableFrom(String.class)); - assertThat(information.getMapValueType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isAssignableFrom(Integer.class); - }); + assertThat(information.getMapValueType()).hasValueSatisfying(it -> assertThat(it.getType()).isAssignableFrom(Integer.class)); } static class StringMapContainer extends MapContainer { diff --git a/src/test/java/org/springframework/data/util/DataCmns511Tests.java b/src/test/java/org/springframework/data/util/DataCmns511Tests.java index 015fe7134..70ed8eabd 100755 --- a/src/test/java/org/springframework/data/util/DataCmns511Tests.java +++ b/src/test/java/org/springframework/data/util/DataCmns511Tests.java @@ -37,16 +37,16 @@ public class DataCmns511Tests { ClassTypeInformation.from(AbstractRole.class).getProperty("createdBy")); assertion.flatMap(it -> it.getProperty("roles"))// - .map(it -> it.getActualType())// + .map(TypeInformation::getActualType)// .flatMap(it -> it.getProperty("createdBy"))// .andAssert(second -> { OptionalAssert> third = second.flatMap(it -> it.getProperty("roles"))// - .map(it -> it.getActualType())// + .map(TypeInformation::getActualType)// .flatMap(it -> it.getProperty("createdBy")); second.isEqualTo(third); - second.value(it -> it.hashCode()).isEqualTo(third.getActual().hashCode()); + second.value(Object::hashCode).isEqualTo(third.getActual().hashCode()); }); } diff --git a/src/test/java/org/springframework/data/util/OptionalAssert.java b/src/test/java/org/springframework/data/util/OptionalAssert.java index a1f59b7fe..3b58f0338 100644 --- a/src/test/java/org/springframework/data/util/OptionalAssert.java +++ b/src/test/java/org/springframework/data/util/OptionalAssert.java @@ -35,7 +35,7 @@ public class OptionalAssert extends org.assertj.core.api.OptionalAssert { } public static OptionalAssert assertOptional(Optional optional) { - return new OptionalAssert(optional); + return new OptionalAssert<>(optional); } public Optional getActual() { @@ -60,7 +60,7 @@ public class OptionalAssert extends org.assertj.core.api.OptionalAssert { Assertions.assertThat(actual).isPresent(); - return Assertions.assertThat(actual.map(function).orElseThrow(() -> new IllegalStateException())); + return Assertions.assertThat(actual.map(function).orElseThrow(IllegalStateException::new)); } public OptionalAssert isEqualTo(OptionalAssert other) { diff --git a/src/test/java/org/springframework/data/util/ParameterizedTypeUnitTests.java b/src/test/java/org/springframework/data/util/ParameterizedTypeUnitTests.java index 744826ac9..b60da8e0d 100755 --- a/src/test/java/org/springframework/data/util/ParameterizedTypeUnitTests.java +++ b/src/test/java/org/springframework/data/util/ParameterizedTypeUnitTests.java @@ -85,19 +85,19 @@ public class ParameterizedTypeUnitTests { OptionalAssert> assertion = assertOptional(propertyType); - assertion.flatMap(it -> it.getProperty("value")).value(it -> it.getType()).isEqualTo(String.class); - assertion.flatMap(it -> it.getMapValueType()).value(it -> it.getType()).isEqualTo(String.class); + assertion.flatMap(it -> it.getProperty("value")).value(TypeInformation::getType).isEqualTo(String.class); + assertion.flatMap(TypeInformation::getMapValueType).value(TypeInformation::getType).isEqualTo(String.class); propertyType = type.getProperty("param2"); - assertion.flatMap(it -> it.getProperty("value")).value(it -> it.getType()).isEqualTo(String.class); - assertion.flatMap(it -> it.getMapValueType()).value(it -> it.getType()).isEqualTo(String.class); + assertion.flatMap(it -> it.getProperty("value")).value(TypeInformation::getType).isEqualTo(String.class); + assertion.flatMap(TypeInformation::getMapValueType).value(TypeInformation::getType).isEqualTo(String.class); } @Test // DATACMNS-446 public void createsToStringRepresentation() { - assertOptional(from(Foo.class).getProperty("param")).value(it -> it.toString()) + assertOptional(from(Foo.class).getProperty("param")).value(Object::toString) .isEqualTo("org.springframework.data.util.ParameterizedTypeUnitTests$Localized"); } @@ -110,11 +110,7 @@ public class ParameterizedTypeUnitTests { assertThat(first).isEqualTo(second); - assertThat(first).hasValueSatisfying(left -> { - assertThat(second).hasValueSatisfying(right -> { - assertThat(left.hashCode()).isEqualTo(right.hashCode()); - }); - }); + assertThat(first).hasValueSatisfying(left -> assertThat(second).hasValueSatisfying(right -> assertThat(left.hashCode()).isEqualTo(right.hashCode()))); } @Test // DATACMNS-485 @@ -123,7 +119,7 @@ public class ParameterizedTypeUnitTests { Optional> type = from(First.class).getProperty("property"); - assertOptional(type).map(it -> it.getActualType()).isEqualTo(type); + assertOptional(type).map(TypeInformation::getActualType).isEqualTo(type); } @Test // DATACMNS-697 @@ -132,9 +128,9 @@ public class ParameterizedTypeUnitTests { TypeInformation information = ClassTypeInformation.from(NormalizedProfile.class); assertOptional(information.getProperty("education2.data"))// - .flatMap(it -> it.getComponentType())// + .flatMap(TypeInformation::getComponentType)// .flatMap(it -> it.getProperty("value"))// - .value(it -> it.getType())// + .value(TypeInformation::getType)// .isEqualTo(Education.class); } @@ -145,7 +141,7 @@ public class ParameterizedTypeUnitTests { ClassTypeInformation.from(Bar.class).getProperty("param")); assertion.hasValueSatisfying(it -> assertThat(it).isInstanceOf(ParameterizedTypeInformation.class)); - assertion.flatMap(it -> it.getMapValueType()).isEmpty(); + assertion.flatMap(TypeInformation::getMapValueType).isEmpty(); } @SuppressWarnings("serial") diff --git a/src/test/java/org/springframework/data/util/StreamUtilsTests.java b/src/test/java/org/springframework/data/util/StreamUtilsTests.java index 4b4483e91..996644467 100755 --- a/src/test/java/org/springframework/data/util/StreamUtilsTests.java +++ b/src/test/java/org/springframework/data/util/StreamUtilsTests.java @@ -38,7 +38,7 @@ public class StreamUtilsTests { List input = Arrays.asList("a", "b", "c"); Stream stream = createStreamFromIterator(input.iterator()); - List output = stream.collect(Collectors. toList()); + List output = stream.collect(Collectors.toList()); assertThat(input).isEqualTo(output); } diff --git a/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java b/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java index 6049c7f16..ecc5e047d 100755 --- a/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java +++ b/src/test/java/org/springframework/data/util/TypeDiscovererUnitTests.java @@ -75,9 +75,9 @@ public class TypeDiscovererUnitTests { public void dealsWithTypesReferencingThemselves() { TypeInformation information = from(SelfReferencing.class); - Optional> first = information.getProperty("parent").flatMap(it -> it.getMapValueType()); + Optional> first = information.getProperty("parent").flatMap(TypeInformation::getMapValueType); Optional> second = first.flatMap(it -> it.getProperty("map")) - .flatMap(it -> it.getMapValueType()); + .flatMap(TypeInformation::getMapValueType); assertThat(second).isEqualTo(first); } @@ -88,9 +88,7 @@ public class TypeDiscovererUnitTests { TypeInformation information = from(SelfReferencingMap.class); Optional> property = information.getProperty("map"); - assertThat(property).hasValueSatisfying(it -> { - assertThat(it.getMapValueType()).hasValue(information); - }); + assertThat(property).hasValueSatisfying(it -> assertThat(it.getMapValueType()).hasValue(information)); } @Test @@ -98,13 +96,9 @@ public class TypeDiscovererUnitTests { TypeInformation discoverer = new TypeDiscoverer<>(CustomMap.class, EMPTY_MAP); - assertThat(discoverer.getMapValueType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isEqualTo(Locale.class); - }); + assertThat(discoverer.getMapValueType()).hasValueSatisfying(it -> assertThat(it.getType()).isEqualTo(Locale.class)); - assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isEqualTo(String.class); - }); + assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isEqualTo(String.class)); } @Test @@ -112,19 +106,15 @@ public class TypeDiscovererUnitTests { TypeDiscoverer discoverer = new TypeDiscoverer<>(CustomCollection.class, firstMap); - assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isEqualTo(String.class); - }); + assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isEqualTo(String.class)); } @Test public void returnsComponentTypeForArrays() { - TypeDiscoverer discoverer = new TypeDiscoverer(String[].class, EMPTY_MAP); + TypeDiscoverer discoverer = new TypeDiscoverer<>(String[].class, EMPTY_MAP); - assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isEqualTo(String.class); - }); + assertThat(discoverer.getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isEqualTo(String.class)); } @Test // DATACMNS-57 @@ -137,9 +127,7 @@ public class TypeDiscovererUnitTests { assertThat(types).hasSize(2); assertThat(types.get(0).getType()).isEqualTo(List.class); - assertThat(types.get(0).getComponentType()).hasValueSatisfying(it -> { - assertThat(it.getType()).isEqualTo(String.class); - }); + assertThat(types.get(0).getComponentType()).hasValueSatisfying(it -> assertThat(it.getType()).isEqualTo(String.class)); } @Test diff --git a/src/test/java/org/springframework/data/util/TypeInformationAssert.java b/src/test/java/org/springframework/data/util/TypeInformationAssert.java index 0946b0256..e7f48116f 100644 --- a/src/test/java/org/springframework/data/util/TypeInformationAssert.java +++ b/src/test/java/org/springframework/data/util/TypeInformationAssert.java @@ -22,9 +22,7 @@ public class TypeInformationAssert extends AbstractAssert type) { - Assertions.assertThat(actual.getComponentType()).hasValueSatisfying(it -> { - Assertions.assertThat(it.getType()).isEqualTo(type); - }); + Assertions.assertThat(actual.getComponentType()).hasValueSatisfying(it -> Assertions.assertThat(it.getType()).isEqualTo(type)); return this; } diff --git a/src/test/java/org/springframework/data/util/VersionUnitTests.java b/src/test/java/org/springframework/data/util/VersionUnitTests.java index 4fc691756..14e532af2 100755 --- a/src/test/java/org/springframework/data/util/VersionUnitTests.java +++ b/src/test/java/org/springframework/data/util/VersionUnitTests.java @@ -157,7 +157,7 @@ public class VersionUnitTests { public void rejectsNonNumericPartOnNonLastPosition() { exception.expect(IllegalArgumentException.class); - exception.expectCause(Matchers. instanceOf(IllegalArgumentException.class)); + exception.expectCause(Matchers.instanceOf(IllegalArgumentException.class)); exception.expectMessage("1.RELEASE.2"); Version.parse("1.RELEASE.2"); diff --git a/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java b/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java index 58b1e3f33..2b82b84b0 100755 --- a/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java +++ b/src/test/java/org/springframework/data/web/MapDataBinderUnitTests.java @@ -49,7 +49,7 @@ public class MapDataBinderUnitTests { MutablePropertyValues values = new MutablePropertyValues(); values.add("foo.date", new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ").format(reference)); - Map nested = new HashMap(); + Map nested = new HashMap<>(); nested.put("date", reference); assertThat(bind(values)).containsEntry("foo", nested); @@ -67,7 +67,7 @@ public class MapDataBinderUnitTests { List list = new ArrayList<>(); list.add("String"); - assertThat(result).isEqualTo((Map) singletonMap("foo", singletonMap("bar", singletonMap("fooBar", list)))); + assertThat(result).isEqualTo(singletonMap("foo", singletonMap("bar", singletonMap("fooBar", list)))); } @Test // DATACMNS-630 @@ -80,11 +80,11 @@ public class MapDataBinderUnitTests { Map result = bind(values); - Map dave = new HashMap(); + Map dave = new HashMap<>(); dave.put("firstname", "Dave"); dave.put("lastname", "Matthews"); - assertThat(result).isEqualTo((Map) singletonMap("foo", dave)); + assertThat(result).isEqualTo(singletonMap("foo", dave)); } @Test // DATACMNS-630 diff --git a/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java b/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java index 06f5990b2..6c2cef895 100755 --- a/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java +++ b/src/test/java/org/springframework/data/web/PageableDefaultUnitTests.java @@ -69,7 +69,7 @@ public abstract class PageableDefaultUnitTests { @Test public void returnsDefaultIfNoRequestParametersAndNoDefault() throws Exception { - assertSupportedAndResult(getParameterOfMethod("supportedMethod"), (Pageable) ReflectionTestUtils + assertSupportedAndResult(getParameterOfMethod("supportedMethod"), ReflectionTestUtils .invokeMethod(ReflectionTestUtils.getField(getResolver(), "fallbackPageable"), "get")); } diff --git a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java index dcf4fe1b1..9274ce45b 100755 --- a/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java +++ b/src/test/java/org/springframework/data/web/PagedResourcesAssemblerUnitTests.java @@ -253,7 +253,7 @@ public class PagedResourcesAssemblerUnitTests { Person person = new Person(); person.name = "Dave"; - return new PageImpl<>(Arrays.asList(person), request, 3); + return new PageImpl<>(Collections.singletonList(person), request, 3); } private static Map getQueryParameters(Link link) { 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 e66c051f6..5cebdada5 100755 --- a/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/PageableResourcesAssemblerIntegrationTests.java @@ -18,6 +18,7 @@ package org.springframework.data.web.config; import static org.assertj.core.api.Assertions.*; import java.util.Arrays; +import java.util.Collections; import org.junit.Before; import org.junit.Test; @@ -99,7 +100,7 @@ public class PageableResourcesAssemblerIntegrationTests { @RequestMapping("/persons") PagedResources> sample(Pageable pageable) { - Page page = new PageImpl<>(Arrays.asList(new Person()), pageable, + Page page = new PageImpl<>(Collections.singletonList(new Person()), pageable, pageable.getOffset() + pageable.getPageSize() + 1); return assembler.toResource(page); 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 5dbaf0970..5d6b3e9de 100755 --- a/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java +++ b/src/test/java/org/springframework/data/web/querydsl/QuerydslPredicateArgumentResolverUnitTests.java @@ -97,7 +97,7 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("firstname", "rand"); - Predicate predicate = (BooleanExpression) resolver.resolveArgument( + Predicate predicate = resolver.resolveArgument( getMethodParameterFor("simpleFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.firstname.eq("rand")); @@ -157,7 +157,7 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", "978"); - Predicate predicate = (BooleanExpression) resolver.resolveArgument( + Predicate predicate = resolver.resolveArgument( getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.inceptionYear.eq(978L)); @@ -168,7 +168,7 @@ public class QuerydslPredicateArgumentResolverUnitTests { request.addParameter("inceptionYear", new String[] { "978", "998" }); - Predicate predicate = (BooleanExpression) resolver.resolveArgument( + Predicate predicate = resolver.resolveArgument( getMethodParameterFor("specificFind", Predicate.class), null, new ServletWebRequest(request), null); assertThat(predicate).isEqualTo((Predicate) QUser.user.inceptionYear.in(978L, 998L));