Browse Source

Polishing.

Extract method.

See #3310
pull/3314/head
Mark Paluch 6 months ago
parent
commit
9ce25da431
No known key found for this signature in database
GPG Key ID: 55BC6374BAA9D973
  1. 28
      src/main/java/org/springframework/data/mapping/context/PersistentEntities.java

28
src/main/java/org/springframework/data/mapping/context/PersistentEntities.java

@ -238,7 +238,24 @@ public class PersistentEntities implements Streamable<PersistentEntity<?, ? exte @@ -238,7 +238,24 @@ public class PersistentEntities implements Streamable<PersistentEntity<?, ? exte
*/
private @Nullable PersistentEntity<?, ?> getEntityIdentifiedBy(TypeInformation<?> type) {
Collection<PersistentEntity<?, ?>> entities = getPersistentEntities(type);
if (entities.size() > 1) {
String message = "Found multiple entities identified by " + type.getType() + ": ";
message += entities.stream().map(it -> it.getType().getName()).collect(Collectors.joining(", "));
message += "; Introduce dedicated unique identifier types or explicitly define the target type in @Reference";
throw new IllegalStateException(message);
}
return entities.isEmpty() ? null : entities.iterator().next();
}
private Collection<PersistentEntity<?, ?>> getPersistentEntities(TypeInformation<?> type) {
Collection<PersistentEntity<?, ?>> entities = new ArrayList<>();
for (MappingContext<?, ? extends PersistentProperty<?>> context : getMappingContexts()) {
for (PersistentEntity<?, ? extends PersistentProperty<?>> persistentProperties : context
@ -253,16 +270,7 @@ public class PersistentEntities implements Streamable<PersistentEntity<?, ? exte @@ -253,16 +270,7 @@ public class PersistentEntities implements Streamable<PersistentEntity<?, ? exte
}
}
if (entities.size() > 1) {
String message = "Found multiple entities identified by " + type.getType() + ": ";
message += entities.stream().map(it -> it.getType().getName()).collect(Collectors.joining(", "));
message += "; Introduce dedicated unique identifier types or explicitly define the target type in @Reference";
throw new IllegalStateException(message);
}
return entities.isEmpty() ? null : entities.iterator().next();
return entities;
}
private Collection<? extends MappingContext<?, ? extends PersistentProperty<?>>> getMappingContexts() {

Loading…
Cancel
Save