From 0bc48aaeded5b035bf266581bd86c764636881cf Mon Sep 17 00:00:00 2001 From: Diego Krupitza Date: Mon, 28 Feb 2022 12:37:35 +0100 Subject: [PATCH] Explicit type replaced with diamond operator. In modern java you do not need to add the explicit type if it can be inferred. To make the code more readable, we removed the explicit type and replaced it with the diamond operator (<>). Original pull request #2459 --- .../data/jpa/domain/JpaSort.java | 8 ++++---- .../jpa/mapping/JpaPersistentPropertyImpl.java | 8 ++++---- .../data/jpa/repository/query/Jpa21Utils.java | 2 +- .../repository/support/DefaultJpaContext.java | 2 +- .../support/JpaEntityInformationSupport.java | 2 +- .../data/jpa/repository/support/Querydsl.java | 6 +++--- .../support/QuerydslJpaRepository.java | 2 +- .../data/jpa/util/BeanDefinitionUtils.java | 4 ++-- .../data/jpa/domain/sample/Child.java | 2 +- .../data/jpa/domain/sample/Parent.java | 2 +- .../data/jpa/domain/sample/User.java | 6 +++--- .../JavaConfigUserRepositoryTests.java | 2 +- .../jpa/repository/UserRepositoryTests.java | 2 +- .../CustomGenericJpaRepositoryFactory.java | 2 +- .../DefaultJpaContextIntegrationTests.java | 4 +--- .../DefaultJpaEntityMetadataUnitTest.java | 17 ++++++++++------- .../JpaMetamodelEntityInformationUnitTests.java | 6 ++---- ...paPersistableEntityInformationUnitTests.java | 4 +--- .../support/QuerydslJpaRepositoryTests.java | 8 ++------ .../support/SimpleJpaRepositoryUnitTests.java | 2 +- 20 files changed, 42 insertions(+), 49 deletions(-) diff --git a/src/main/java/org/springframework/data/jpa/domain/JpaSort.java b/src/main/java/org/springframework/data/jpa/domain/JpaSort.java index 89b73ed0c..82699ada7 100644 --- a/src/main/java/org/springframework/data/jpa/domain/JpaSort.java +++ b/src/main/java/org/springframework/data/jpa/domain/JpaSort.java @@ -161,7 +161,7 @@ public class JpaSort extends Sort { Assert.notNull(paths, "Paths must not be null!"); - List existing = new ArrayList(); + List existing = new ArrayList<>(); for (Order order : this) { existing.add(order); @@ -181,7 +181,7 @@ public class JpaSort extends Sort { Assert.notEmpty(properties, "Properties must not be empty!"); - List orders = new ArrayList(); + List orders = new ArrayList<>(); for (Order order : this) { orders.add(order); @@ -216,7 +216,7 @@ public class JpaSort extends Sort { private static List combine(List orders, @Nullable Direction direction, List> paths) { - List result = new ArrayList(orders); + List result = new ArrayList<>(orders); for (Path path : paths) { result.add(new Order(direction, path.toString())); @@ -315,7 +315,7 @@ public class JpaSort extends Sort { * @return */ public , U> Path dot(A attribute) { - return new Path(add(attribute)); + return new Path<>(add(attribute)); } /** diff --git a/src/main/java/org/springframework/data/jpa/mapping/JpaPersistentPropertyImpl.java b/src/main/java/org/springframework/data/jpa/mapping/JpaPersistentPropertyImpl.java index 8cd0457a7..fd43b208d 100644 --- a/src/main/java/org/springframework/data/jpa/mapping/JpaPersistentPropertyImpl.java +++ b/src/main/java/org/springframework/data/jpa/mapping/JpaPersistentPropertyImpl.java @@ -57,7 +57,7 @@ class JpaPersistentPropertyImpl extends AnnotationBasedPersistentProperty> annotations = new HashSet>(); + Set> annotations = new HashSet<>(); annotations.add(OneToMany.class); annotations.add(OneToOne.class); annotations.add(ManyToMany.class); @@ -65,13 +65,13 @@ class JpaPersistentPropertyImpl extends AnnotationBasedPersistentProperty>(); + annotations = new HashSet<>(); annotations.add(Id.class); annotations.add(EmbeddedId.class); ID_ANNOTATIONS = Collections.unmodifiableSet(annotations); - annotations = new HashSet>(); + annotations = new HashSet<>(); annotations.add(Column.class); annotations.add(OrderColumn.class); @@ -187,7 +187,7 @@ class JpaPersistentPropertyImpl extends AnnotationBasedPersistentProperty createAssociation() { - return new Association(this, null); + return new Association<>(this, null); } /* diff --git a/src/main/java/org/springframework/data/jpa/repository/query/Jpa21Utils.java b/src/main/java/org/springframework/data/jpa/repository/query/Jpa21Utils.java index 87da0b277..36b952a47 100644 --- a/src/main/java/org/springframework/data/jpa/repository/query/Jpa21Utils.java +++ b/src/main/java/org/springframework/data/jpa/repository/query/Jpa21Utils.java @@ -144,7 +144,7 @@ public class Jpa21Utils { */ static void configureFetchGraphFrom(JpaEntityGraph jpaEntityGraph, EntityGraph entityGraph) { - List attributePaths = new ArrayList(jpaEntityGraph.getAttributePaths()); + List attributePaths = new ArrayList<>(jpaEntityGraph.getAttributePaths()); // Sort to ensure that the intermediate entity subgraphs are created accordingly. Collections.sort(attributePaths); diff --git a/src/main/java/org/springframework/data/jpa/repository/support/DefaultJpaContext.java b/src/main/java/org/springframework/data/jpa/repository/support/DefaultJpaContext.java index cebc0f412..788783419 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/DefaultJpaContext.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/DefaultJpaContext.java @@ -47,7 +47,7 @@ public class DefaultJpaContext implements JpaContext { Assert.notNull(entityManagers, "EntityManagers must not be null!"); Assert.notEmpty(entityManagers, "EntityManagers must not be empty!"); - this.entityManagers = new LinkedMultiValueMap, EntityManager>(); + this.entityManagers = new LinkedMultiValueMap<>(); for (EntityManager em : entityManagers) { for (ManagedType managedType : em.getMetamodel().getManagedTypes()) { diff --git a/src/main/java/org/springframework/data/jpa/repository/support/JpaEntityInformationSupport.java b/src/main/java/org/springframework/data/jpa/repository/support/JpaEntityInformationSupport.java index 026b6d509..ffc1a3343 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/JpaEntityInformationSupport.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/JpaEntityInformationSupport.java @@ -42,7 +42,7 @@ public abstract class JpaEntityInformationSupport extends AbstractEntityI */ public JpaEntityInformationSupport(Class domainClass) { super(domainClass); - this.metadata = new DefaultJpaEntityMetadata(domainClass); + this.metadata = new DefaultJpaEntityMetadata<>(domainClass); } /** diff --git a/src/main/java/org/springframework/data/jpa/repository/support/Querydsl.java b/src/main/java/org/springframework/data/jpa/repository/support/Querydsl.java index 797b9c616..7ef0167bf 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/Querydsl.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/Querydsl.java @@ -80,12 +80,12 @@ public class Querydsl { switch (provider) { case ECLIPSELINK: - return new JPAQuery(em, EclipseLinkTemplates.DEFAULT); + return new JPAQuery<>(em, EclipseLinkTemplates.DEFAULT); case HIBERNATE: - return new JPAQuery(em, HQLTemplates.DEFAULT); + return new JPAQuery<>(em, HQLTemplates.DEFAULT); case GENERIC_JPA: default: - return new JPAQuery(em); + return new JPAQuery<>(em); } } diff --git a/src/main/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepository.java b/src/main/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepository.java index 5d0d359a7..946f9ed4b 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepository.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepository.java @@ -92,7 +92,7 @@ public class QuerydslJpaRepository extends SimpleJpa super(entityInformation, entityManager); this.path = resolver.createPath(entityInformation.getJavaType()); - this.builder = new PathBuilder(path.getType(), path.getMetadata()); + this.builder = new PathBuilder<>(path.getType(), path.getMetadata()); this.querydsl = new Querydsl(entityManager, builder); this.entityManager = entityManager; } diff --git a/src/main/java/org/springframework/data/jpa/util/BeanDefinitionUtils.java b/src/main/java/org/springframework/data/jpa/util/BeanDefinitionUtils.java index 66d347da0..ed0a9211e 100644 --- a/src/main/java/org/springframework/data/jpa/util/BeanDefinitionUtils.java +++ b/src/main/java/org/springframework/data/jpa/util/BeanDefinitionUtils.java @@ -53,7 +53,7 @@ public final class BeanDefinitionUtils { static { - List> types = new ArrayList>(); + List> types = new ArrayList<>(); types.add(EntityManagerFactory.class); types.add(AbstractEntityManagerFactoryBean.class); @@ -96,7 +96,7 @@ public final class BeanDefinitionUtils { public static Collection getEntityManagerFactoryBeanDefinitions( ConfigurableListableBeanFactory beanFactory) { - Set definitions = new HashSet(); + Set definitions = new HashSet<>(); for (Class type : EMF_TYPES) { diff --git a/src/test/java/org/springframework/data/jpa/domain/sample/Child.java b/src/test/java/org/springframework/data/jpa/domain/sample/Child.java index 73d665663..d08728378 100644 --- a/src/test/java/org/springframework/data/jpa/domain/sample/Child.java +++ b/src/test/java/org/springframework/data/jpa/domain/sample/Child.java @@ -31,7 +31,7 @@ public class Child { Long id; @ManyToMany(mappedBy = "children") - Set parents = new HashSet(); + Set parents = new HashSet<>(); /** * @param parent diff --git a/src/test/java/org/springframework/data/jpa/domain/sample/Parent.java b/src/test/java/org/springframework/data/jpa/domain/sample/Parent.java index 0532abf61..331798ea3 100644 --- a/src/test/java/org/springframework/data/jpa/domain/sample/Parent.java +++ b/src/test/java/org/springframework/data/jpa/domain/sample/Parent.java @@ -34,7 +34,7 @@ public class Parent { static final long serialVersionUID = -89717120680485957L; @ManyToMany(cascade = CascadeType.ALL) - Set children = new HashSet(); + Set children = new HashSet<>(); public Parent add(Child child) { diff --git a/src/test/java/org/springframework/data/jpa/domain/sample/User.java b/src/test/java/org/springframework/data/jpa/domain/sample/User.java index 0a635af6c..f02a1510d 100644 --- a/src/test/java/org/springframework/data/jpa/domain/sample/User.java +++ b/src/test/java/org/springframework/data/jpa/domain/sample/User.java @@ -135,9 +135,9 @@ public class User { this.lastname = lastname; this.emailAddress = emailAddress; this.active = true; - this.roles = new HashSet(Arrays.asList(roles)); - this.colleagues = new HashSet(); - this.attributes = new HashSet(); + this.roles = new HashSet<>(Arrays.asList(roles)); + this.colleagues = new HashSet<>(); + this.attributes = new HashSet<>(); this.createdAt = new Date(); } diff --git a/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java b/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java index a1045daa8..d18eb7d1f 100644 --- a/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/JavaConfigUserRepositoryTests.java @@ -75,7 +75,7 @@ class JavaConfigUserRepositoryTests extends UserRepositoryTests { QueryMethodEvaluationContextProvider evaluationContextProvider = new ExtensionAwareQueryMethodEvaluationContextProvider( applicationContext); - JpaRepositoryFactoryBean factory = new JpaRepositoryFactoryBean( + JpaRepositoryFactoryBean factory = new JpaRepositoryFactoryBean<>( UserRepository.class); factory.setEntityManager(entityManager); factory.setBeanFactory(applicationContext); diff --git a/src/test/java/org/springframework/data/jpa/repository/UserRepositoryTests.java b/src/test/java/org/springframework/data/jpa/repository/UserRepositoryTests.java index 0a4b33ef9..14f6cf643 100644 --- a/src/test/java/org/springframework/data/jpa/repository/UserRepositoryTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/UserRepositoryTests.java @@ -298,7 +298,7 @@ public class UserRepositoryTests { @Test void deleteEmptyCollectionDoesNotDeleteAnything() { - assertDeleteCallDoesNotDeleteAnything(new ArrayList()); + assertDeleteCallDoesNotDeleteAnything(new ArrayList<>()); } @Test diff --git a/src/test/java/org/springframework/data/jpa/repository/custom/CustomGenericJpaRepositoryFactory.java b/src/test/java/org/springframework/data/jpa/repository/custom/CustomGenericJpaRepositoryFactory.java index 13d32fe90..32974ab26 100644 --- a/src/test/java/org/springframework/data/jpa/repository/custom/CustomGenericJpaRepositoryFactory.java +++ b/src/test/java/org/springframework/data/jpa/repository/custom/CustomGenericJpaRepositoryFactory.java @@ -52,7 +52,7 @@ public class CustomGenericJpaRepositoryFactory extends JpaRepositoryFactory { JpaEntityInformation entityMetadata = mock(JpaEntityInformation.class); when(entityMetadata.getJavaType()).thenReturn((Class) information.getDomainType()); - return new CustomGenericJpaRepository(entityMetadata, em); + return new CustomGenericJpaRepository<>(entityMetadata, em); } /* diff --git a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java index f000d251c..4243826f3 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaContextIntegrationTests.java @@ -21,7 +21,6 @@ import static org.mockito.Mockito.*; import java.util.Arrays; import java.util.HashSet; -import javax.naming.NamingException; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.sql.DataSource; @@ -29,7 +28,6 @@ import javax.sql.DataSource; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; @@ -99,7 +97,7 @@ public class DefaultJpaContextIntegrationTests { this.firstEm = firstEmf.createEntityManager(); this.secondEm = secondEmf.createEntityManager(); - this.jpaContext = new DefaultJpaContext(new HashSet(Arrays.asList(firstEm, secondEm))); + this.jpaContext = new DefaultJpaContext(new HashSet<>(Arrays.asList(firstEm, secondEm))); } @Test // DATAJPA-669 diff --git a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaEntityMetadataUnitTest.java b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaEntityMetadataUnitTest.java index 7a6b2f062..5ccd7599e 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaEntityMetadataUnitTest.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/DefaultJpaEntityMetadataUnitTest.java @@ -44,28 +44,28 @@ public class DefaultJpaEntityMetadataUnitTest { @Test void returnsConfiguredType() { - DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata(Foo.class); + DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata<>(Foo.class); assertThat(metadata.getJavaType()).isEqualTo(Foo.class); } @Test void returnsSimpleClassNameAsEntityNameByDefault() { - DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata(Foo.class); + DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata<>(Foo.class); assertThat(metadata.getEntityName()).isEqualTo(Foo.class.getSimpleName()); } @Test void returnsCustomizedEntityNameIfConfigured() { - DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata(Bar.class); + DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata<>(Bar.class); assertThat(metadata.getEntityName()).isEqualTo("Entity"); } @Test // DATAJPA-871 void returnsCustomizedEntityNameIfConfiguredViaComposedAnnotation() { - DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata( + DefaultJpaEntityMetadata metadata = new DefaultJpaEntityMetadata<>( BarWithComposedAnnotation.class); assertThat(metadata.getEntityName()).isEqualTo("Entity"); } @@ -78,11 +78,14 @@ public class DefaultJpaEntityMetadataUnitTest { String entityName(); } - private static class Foo {} + private static class Foo { + } @Entity(name = "Entity") - static class Bar {} + static class Bar { + } @CustomEntityAnnotationUsingAliasFor(entityName = "Entity") - private static class BarWithComposedAnnotation {} + private static class BarWithComposedAnnotation { + } } diff --git a/src/test/java/org/springframework/data/jpa/repository/support/JpaMetamodelEntityInformationUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/support/JpaMetamodelEntityInformationUnitTests.java index ba5cd39a5..35c309276 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/JpaMetamodelEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/JpaMetamodelEntityInformationUnitTests.java @@ -35,7 +35,6 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; - import org.springframework.data.jpa.domain.sample.PersistableWithIdClass; import org.springframework.data.jpa.domain.sample.PersistableWithIdClassPK; @@ -62,8 +61,7 @@ class JpaMetamodelEntityInformationUnitTests { when(first.getName()).thenReturn("first"); when(second.getName()).thenReturn("second"); - Set> attributes = new HashSet>( - asList(first, second)); + Set> attributes = new HashSet<>(asList(first, second)); when(type.getIdClassAttributes()).thenReturn(attributes); @@ -77,7 +75,7 @@ class JpaMetamodelEntityInformationUnitTests { @Test // DATAJPA-50 void doesNotCreateIdIfAllPartialAttributesAreNull() { - JpaMetamodelEntityInformation information = new JpaMetamodelEntityInformation( + JpaMetamodelEntityInformation information = new JpaMetamodelEntityInformation<>( PersistableWithIdClass.class, metamodel); PersistableWithIdClass entity = new PersistableWithIdClass(null, null); diff --git a/src/test/java/org/springframework/data/jpa/repository/support/JpaPersistableEntityInformationUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/support/JpaPersistableEntityInformationUnitTests.java index 8722d7432..4b274750d 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/JpaPersistableEntityInformationUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/JpaPersistableEntityInformationUnitTests.java @@ -29,7 +29,6 @@ import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; import org.mockito.junit.jupiter.MockitoSettings; import org.mockito.quality.Strictness; - import org.springframework.data.domain.Persistable; import org.springframework.data.repository.core.EntityInformation; @@ -61,8 +60,7 @@ class JpaPersistableEntityInformationUnitTests { @Test void usesPersistableMethodsForIsNewAndGetId() { - EntityInformation entityInformation = new JpaPersistableEntityInformation(Foo.class, - metamodel); + EntityInformation entityInformation = new JpaPersistableEntityInformation<>(Foo.class, metamodel); Foo foo = new Foo(); assertThat(entityInformation.isNew(foo)).isFalse(); diff --git a/src/test/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepositoryTests.java b/src/test/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepositoryTests.java index 83285252d..dd12d48ee 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepositoryTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/QuerydslJpaRepositoryTests.java @@ -16,10 +16,6 @@ package org.springframework.data.jpa.repository.support; import static org.assertj.core.api.Assertions.*; -import static org.springframework.data.domain.Example.*; -import static org.springframework.data.domain.ExampleMatcher.*; - -import lombok.Data; import java.sql.Date; import java.time.LocalDate; @@ -80,10 +76,10 @@ class QuerydslJpaRepositoryTests { @BeforeEach void setUp() { - JpaEntityInformation information = new JpaMetamodelEntityInformation(User.class, + JpaEntityInformation information = new JpaMetamodelEntityInformation<>(User.class, em.getMetamodel()); - repository = new QuerydslJpaRepository(information, em); + repository = new QuerydslJpaRepository<>(information, em); dave = repository.save(new User("Dave", "Matthews", "dave@matthews.com")); carter = repository.save(new User("Carter", "Beauford", "carter@beauford.com")); oliver = repository.save(new User("Oliver", "matthews", "oliver@matthews.com")); diff --git a/src/test/java/org/springframework/data/jpa/repository/support/SimpleJpaRepositoryUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/support/SimpleJpaRepositoryUnitTests.java index 42a7cdabe..404e1698a 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/SimpleJpaRepositoryUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/SimpleJpaRepositoryUnitTests.java @@ -84,7 +84,7 @@ class SimpleJpaRepositoryUnitTests { when(metadata.getQueryHints()).thenReturn(hints); when(metadata.getQueryHintsForCount()).thenReturn(hints); - repo = new SimpleJpaRepository(information, em); + repo = new SimpleJpaRepository<>(information, em); repo.setRepositoryMethodMetadata(metadata); }