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 0d3a6504c..c0906df35 100644 --- a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java +++ b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java @@ -181,7 +181,9 @@ public abstract class AbstractMappingContext entity = persistentEntities.get(ClassTypeInformation.from(type)); + + return entity == null ? false : entity.isPresent(); } /* 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 1b27db175..67d5ea4ed 100755 --- a/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java +++ b/src/test/java/org/springframework/data/mapping/context/AbstractMappingContextUnitTests.java @@ -244,6 +244,16 @@ public class AbstractMappingContextUnitTests { .isSameAs(context.getPersistentPropertyPath("persons.name", Sample.class)); } + @Test // DATACMNS-1208 + public void ensureHasPersistentEntityReportsFalseForTypesThatShouldntBeCreated() { + + SampleMappingContext context = new SampleMappingContext(); + + assertThat(context.hasPersistentEntityFor(String.class)).isFalse(); + assertThat(context.getPersistentEntity(String.class)).isNull(); + assertThat(context.hasPersistentEntityFor(String.class)).isFalse(); + } + private static void assertHasEntityFor(Class type, SampleMappingContext context, boolean expected) { boolean found = false;