From a5352daff2b3fb436e4ec168a18c107d85ceb4c9 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Tue, 13 May 2025 14:18:52 +0200 Subject: [PATCH] Move off deprecated `RepositoryFactorySupport.getEntityInformation(Class)` method. EntityInformation is typically obtained in the context of RepositoryMetadata, hence aligning with deprecations in commons. Closes #3010 --- .../repository/support/Neo4jRepositoryFactory.java | 13 ++++++------- .../support/ReactiveNeo4jRepositoryFactory.java | 13 ++++++------- .../support/Neo4jRepositoryFactoryTest.java | 3 ++- .../support/ReactiveNeo4jRepositoryFactoryTest.java | 3 ++- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/main/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactory.java b/src/main/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactory.java index ad21f8e20..41243f6a6 100644 --- a/src/main/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactory.java +++ b/src/main/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactory.java @@ -62,18 +62,17 @@ final class Neo4jRepositoryFactory extends RepositoryFactorySupport { this.mappingContext = mappingContext; } - @SuppressWarnings("unchecked") @Override - public Neo4jEntityInformation getEntityInformation(Class domainClass) { + public Neo4jEntityInformation getEntityInformation(RepositoryMetadata metadata) { - Neo4jPersistentEntity entity = mappingContext.getRequiredPersistentEntity(domainClass); - return new DefaultNeo4jEntityInformation<>((Neo4jPersistentEntity) entity); + Neo4jPersistentEntity entity = mappingContext.getRequiredPersistentEntity(metadata.getDomainType()); + return new DefaultNeo4jEntityInformation<>(entity); } @Override protected Object getTargetRepository(RepositoryInformation metadata) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Neo4jRepositoryFactorySupport.assertIdentifierType(metadata.getIdType(), entityInformation.getIdType()); return getTargetRepositoryViaReflection(metadata, neo4jOperations, entityInformation); } @@ -106,7 +105,7 @@ final class Neo4jRepositoryFactory extends RepositoryFactorySupport { private RepositoryFragment createDSLPredicateExecutorFragment(RepositoryMetadata metadata, Class implementor) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Object querydslFragment = instantiateClass(implementor, mappingContext, entityInformation, neo4jOperations); return RepositoryFragment.implemented(querydslFragment); @@ -114,7 +113,7 @@ final class Neo4jRepositoryFactory extends RepositoryFactorySupport { private RepositoryFragment createDSLExecutorFragment(RepositoryMetadata metadata, Class implementor) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Object querydslFragment = instantiateClass(implementor, entityInformation, neo4jOperations); return RepositoryFragment.implemented(querydslFragment); diff --git a/src/main/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactory.java b/src/main/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactory.java index 0dcc2fa0f..f56e70185 100644 --- a/src/main/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactory.java +++ b/src/main/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactory.java @@ -64,18 +64,17 @@ final class ReactiveNeo4jRepositoryFactory extends ReactiveRepositoryFactorySupp this.mappingContext = mappingContext; } - @SuppressWarnings("unchecked") @Override - public Neo4jEntityInformation getEntityInformation(Class domainClass) { + public Neo4jEntityInformation getEntityInformation(RepositoryMetadata metadata) { - Neo4jPersistentEntity entity = mappingContext.getRequiredPersistentEntity(domainClass); - return new DefaultNeo4jEntityInformation<>((Neo4jPersistentEntity) entity); + Neo4jPersistentEntity entity = mappingContext.getRequiredPersistentEntity(metadata.getDomainType()); + return new DefaultNeo4jEntityInformation<>(entity); } @Override protected Object getTargetRepository(RepositoryInformation metadata) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Neo4jRepositoryFactorySupport.assertIdentifierType(metadata.getIdType(), entityInformation.getIdType()); return getTargetRepositoryViaReflection(metadata, neo4jOperations, entityInformation); } @@ -108,7 +107,7 @@ final class ReactiveNeo4jRepositoryFactory extends ReactiveRepositoryFactorySupp private RepositoryFragment createDSLPredicateExecutorFragment(RepositoryMetadata metadata, Class implementor) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Object querydslFragment = instantiateClass(implementor, mappingContext, entityInformation, neo4jOperations); return RepositoryFragment.implemented(querydslFragment); @@ -116,7 +115,7 @@ final class ReactiveNeo4jRepositoryFactory extends ReactiveRepositoryFactorySupp private RepositoryFragment createDSLExecutorFragment(RepositoryMetadata metadata, Class implementor) { - Neo4jEntityInformation entityInformation = getEntityInformation(metadata.getDomainType()); + Neo4jEntityInformation entityInformation = getEntityInformation(metadata); Object querydslFragment = instantiateClass(implementor, entityInformation, neo4jOperations); return RepositoryFragment.implemented(querydslFragment); diff --git a/src/test/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactoryTest.java b/src/test/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactoryTest.java index 28e5f0fdb..68b4b5591 100644 --- a/src/test/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactoryTest.java +++ b/src/test/java/org/springframework/data/neo4j/repository/support/Neo4jRepositoryFactoryTest.java @@ -42,6 +42,7 @@ import org.springframework.data.neo4j.integration.shared.common.ThingWithAllCyph import org.springframework.data.neo4j.integration.shared.conversion.ThingWithCompositeProperties; import org.springframework.data.neo4j.repository.Neo4jRepository; import org.springframework.data.repository.core.RepositoryInformation; +import org.springframework.data.repository.core.RepositoryMetadata; import org.springframework.data.repository.query.QueryCreationException; /** @@ -67,7 +68,7 @@ class Neo4jRepositoryFactoryTest { metadata = mock(RepositoryInformation.class); entityInformation = mock(Neo4jEntityInformation.class); - doReturn(entityInformation).when(neo4jRepositoryFactory).getEntityInformation(Mockito.any()); + doReturn(entityInformation).when(neo4jRepositoryFactory).getEntityInformation(Mockito.any(RepositoryMetadata.class)); } @Test diff --git a/src/test/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactoryTest.java b/src/test/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactoryTest.java index 3cc628919..a0dc56fa5 100644 --- a/src/test/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactoryTest.java +++ b/src/test/java/org/springframework/data/neo4j/repository/support/ReactiveNeo4jRepositoryFactoryTest.java @@ -28,6 +28,7 @@ import org.mockito.Mockito; import org.mockito.Spy; import org.mockito.junit.jupiter.MockitoExtension; import org.springframework.data.repository.core.RepositoryInformation; +import org.springframework.data.repository.core.RepositoryMetadata; /** * @author Gerrit Meier @@ -53,7 +54,7 @@ class ReactiveNeo4jRepositoryFactoryTest { metadata = mock(RepositoryInformation.class); entityInformation = mock(Neo4jEntityInformation.class); - doReturn(entityInformation).when(neo4jRepositoryFactory).getEntityInformation(Mockito.any()); + doReturn(entityInformation).when(neo4jRepositoryFactory).getEntityInformation(Mockito.any(RepositoryMetadata.class)); } @Test